Commit graph

77 commits

Author SHA1 Message Date
Mark Pizzolato
24696892fd Merge branch 'DMC11' into SerialMux
Conflicts:
	scp.c
	sim_ether.c
	sim_ether.h
	sim_tmxr.c
2012-10-16 15:50:38 -07:00
Mark Pizzolato
35b8a40559 Revised the VAX780 to include the pdp11_dmc device 2012-09-28 15:41:49 -07:00
Mark Pizzolato
66edd72ecb Merge branch 'nj7p/swtp6800-v2.1'
Conflicts:
	makefile
	swtp6800/common/bootrom.c
	swtp6800/common/dc-4.c
	swtp6800/common/i2716.c
	swtp6800/common/m6800.c
	swtp6800/common/m6810.c
	swtp6800/common/mp-8m.c
	swtp6800/common/mp-a.c
	swtp6800/common/mp-a2.c
	swtp6800/common/mp-b2.c
	swtp6800/common/mp-s.c
	swtp6800/swtp6800/mp-a2_sys.c
	swtp6800/swtp6800/mp-a_sys.c
	swtp6800/swtp6800/swtp_defs.h
2012-07-13 15:21:30 -07:00
Mark Pizzolato
f66175beea Added support to avoid the mkdir BIN race condition in parallel make 2012-07-10 13:47:17 -07:00
Bill Beech
567a304c37 Changes to replace the SWTP V1 code with the V2 code 2012-07-05 14:14:49 -07:00
Mark Pizzolato
d4e1cac0ea Added makefile support to use the LLVM (clang) compiler on OSX and other platforms where it may be available (Linux, *BSD, etc.) 2012-04-29 12:39:25 -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
178f4a743d Merge branch 'master' into SerialMux 2012-04-23 13:03:26 -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
bc36e9dde5 Adds serial port support to the multiplexer library.
It also modifies the HP 2100 and PDP11 multiplexers to add serial support as demonstrations of the capability that, one day, might be extended to all simulators.  I have tested the HP support, but I relied on Holger Veit to test the DEC stuff, so I can't guarantee that it works.  I also relied on Holger to test under Linux, so the same caveat applies.

    The changes needed in the device simulators are relatively small.  For example, if you look at the patches for "hp2100_baci.c", you'll note that most of them are documentation changes.  The only things of note are:

 - an expansion of the TMXR initializer

 - additional code in the "attach" routine to try attaching a serial port
   if attaching a socket fails

 - additional code in the "detach" routine for the same reasons

The HP MPX device (hp2100_mpx.c) needs a tiny bit of additional support from the ATTACH and DETACH commands.  Specifically, SCP was modified to set a flag ("sim_unit_ref") to indicate whether ATTACH MPX or ATTACH MPX0 was done, i.e., to differentiate between a device and a unit attach (recall that SCP treats these as both referring to unit 0).  This is needed because the socket attaches (logically) to the device, whereas a serial port attaches to a line.  Without this flag, the attach routine cannot differentiate between ATTACH MPX and ATTACH MPX0, as the distinction is lost by the time the VM's attach routine is called.  This support isn't needed for the HP MUX device because the socket attaches to a different device than the lines do.

    MPX also requires a bit more work due to the capability to mix serial and Telnet lines on the same multiplexer (BACI is a single-line terminal device).

    The attached PDF contains revisions to the "Writing a Simulator for the SIMH System" publication that documents the additions and changes to the multiplexer library for serial port support.  User documentation for serial port support currently exists only in the initial comments in "sim_tmxr.c"; I will add the appropriate text to the "SIMH User's Guide" if we decide to add this to the release version.
2012-04-19 19:18:15 -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
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
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
027c921cfc More robust and correct readline support and fix to VMS build for HP2100 2012-03-25 15:55:36 -07:00
Mark Pizzolato
c205070554 Fix makefile for better GCC version determination and optimization enabling on more platforms 2012-03-25 07:36:37 -07:00
Mark Pizzolato
6e813b8364 Merge with v3.9-0-rc2 first pass 2012-03-24 19:46:37 -07:00
Mark Pizzolato
45246a3339 Updated HP2100 from Dave Bryan 2012-03-21 06:14:01 -07:00
Mark Pizzolato
1945465a5e Revised makefile to build with gcc 3.x as well as different 4.x versions and to dynamically determine the availability of desired features and to report the GCC version at build time. 2012-03-20 08:54:44 -07:00
Mark Pizzolato
fffad7c20e Merge changes from v3.9-0 rc1 2012-03-19 16:05:24 -07:00
Mark Pizzolato
e04a987353 Added makefile option to compile without asynchronouos I/O support (invoke make with NOASYNCH=1) 2012-03-18 16:47:58 -07:00
Mark Pizzolato
cf8c54184d Cleaned up build status messages 2012-03-14 17:47:20 -07:00
Mark Pizzolato
e61d00d539 Added compiler optimizations to gcc builds 2012-03-13 07:07:28 -07:00
Mark Pizzolato
8e76a8d081 Fixed cygwin build and execution issue, mostly from Tony Nicholson
Fixed OS/X build issues from Tony Nickolson
Fixed OS/X tap networking startup
Added cygwin host NIC hardware address determination
Made *nix host NIC hardware address determination more robust
2012-03-02 13:27:20 -08:00
Mark Pizzolato
e6c94e9466 Add some polish to build messages 2012-02-29 07:08:02 -08:00
Mark Pizzolato
f09637186d Change default makefile behavior to prefer OS provided libpcap components over www.tcpdump.org components and to suggest that the build should be done with the OS libpcap-dev package. 2012-02-26 10:13:20 -08:00
Mark Pizzolato
d690603045 Updated Windows Network build (in makefile and Visual Studio Projects) to reference WinPcap and pthreads in a consistent parallel directory to the simulator source (i.e. ../windows-build/...).
Updated Ethernet Documentation (in 0readme_ethernet.txt and sim_ether.c) to describe the proper build mechanics on both Windows and *nix platforms.
2012-01-27 05:00:46 -08:00
Mark Pizzolato
214b1b6047 Fix Linux build to support Debian Squeeze by a non-root user 2012-01-24 19:55:04 -08:00
Mark Pizzolato
d14853e14a Fixed build when using a libpcap from www.tcpdump.org 2012-01-10 20:14:09 -08:00
Mark Pizzolato
cbcd244e0c Fix builds on BSD host systems 2011-11-26 08:21:45 -08:00
Mark Pizzolato
041e192fa9 Generalized the determination of the host library path for most platforms. 2011-11-25 17:24:55 -08:00
Mark Pizzolato
db7e04e0df Cleanup of readline and static libpcap support after multi-platform testing. 2011-11-17 13:06:36 -08:00
Mark Pizzolato
934836483b Added pcap_fileno to the dynamically loaded libpcap entry points since it is needed by OS X. 2011-11-17 11:59:50 -08:00
Mark Pizzolato
3b7492d6be Added dynamic loading of libpcap on *nix platforms. 2011-11-17 09:51:58 -08:00
Mark Pizzolato
8b01b90008 Generalized readline support to dynamically load the readline library and avoid the symbol conflicts which happen on some platforms and some simulators with a global PC variable. 2011-11-17 08:46:15 -08:00
Mark Pizzolato
2d4d248ae3 Added Android targeted build support to the makefile 2011-11-16 13:45:37 -08:00
Mark Pizzolato
22b130be23 Generalized makefile approach to find libraries and include files allowing different platforms to simply describe where to check for required components.
It now explicitly reports which libraries are being referenced.
2011-11-15 14:42:44 -08:00
Mark Pizzolato
07e1738745 Cleaned up makefile to only build network support for simulators which can use it. 2011-11-11 07:03:25 -08:00
Mark Pizzolato
02c5302039 cleaned up Solaris build issues 2011-11-02 08:32:24 -07:00
Mark Pizzolato
fd5de0d005 Added support for VDE (Virtual Distributed Ethernet) network packet transport
Fixed filtering for non-pcap network packet transports (i.e. tun/tap, and vde) to properly filter the desired packets.
2011-10-31 11:56:44 -07:00
Mark Pizzolato
eaddb7d24a Added support for integrated Tap networking interfaces on OSX 2011-10-29 14:13:33 -07:00
Mark Pizzolato
51525f7a3f Fixed builds on x64 *nix platforms to properly detect the availability of libm 2011-10-12 15:39:06 -07:00
Mark Pizzolato
e410733781 fixed makefile to correctly use readline on x64 Linux builds which have libreadline available 2011-09-23 16:26:00 -07:00
Mark Pizzolato
cb35f6c97b Added support for embedded ROM images in simulators.
This allows a single simulator executable to be a completely useful component (for those simulators which dynamically load ROM or other boot code).
Meanwhile, we continues to allow the explicit use of a user's preferred ROM or other boot code as well.
A build option is provided in the makefile to not build with the included ROM functionality if desired.
2011-09-23 13:28:38 -07:00
Mark Pizzolato
a280dd2b1f Added Readline build support on more *nix platforms 2011-09-19 17:08:35 -07:00
Mark Pizzolato
5151c341a4 Fixed *nix build support on x64 platforms 2011-09-19 16:38:58 -07:00
Mark Pizzolato
49597cc0d3 Added makefile build support for detecting libpthreads on x64 *nix platforms. 2011-09-19 16:33:14 -07:00
Mark Pizzolato
d8e4a43f9a makefile: Cleaned up MinGw build and provided an option to build without Asynch I/O support using MinGw. 2011-04-20 15:18:37 -07:00