diff --git a/0readme_ethernet.txt b/0readme_ethernet.txt index fa1ea8b3..6916cfac 100644 --- a/0readme_ethernet.txt +++ b/0readme_ethernet.txt @@ -157,6 +157,7 @@ Note 3: Simulators running using VDE networking can run without root privilege. Linux (Ubuntu 10.04): + apt-get install make apt-get install libvdeplug-dev apt-get install vde2 @@ -183,28 +184,43 @@ Windows notes: Building on Windows: - Building with MinGW can use the provided makefile following the instructions - below. Alternatively, you can use the free Visual C++ Express 2008 or 2010 - interactive development environments. Read the file - ".\Visual Studio Projects\0ReadMe_Projects.txt" for details. + You should be able to build with any of the free compiler environments + available on the Windows platform. If you want to use the Visual C++ + Express 2008 or 2010 interactive development environments, read the file + ".\Visual Studio Projects\0ReadMe_Projects.txt" for details about the + required dependencies. Alternatively, you can build simh with networking + support using the MinGW GCC compiler environment. Both the Visual C++ + and MinGW build environments require WinPcap and Posix packages being + available. These should be located in a directory structure parallel to + the current simulator source directory. - 1. Install WinPCAP 4.x runtime and the WinPCAP Developer's kit. + For Example, the directory structure should look like: - 2. Put the required .h files (bittypes,devioctl,ip6_misc,pcap,pcap-stdinc - packet32,ntddndis).h from the WinPCAP 4.x developer's kit in the - compiler's include file path + .../simh/simhv38-2-rc1/VAX/vax_cpu.c + .../simh/simhv38-2-rc1/scp.c + .../simh/simhv38-2-rc1/Visual Studio Projects/simh.sln + .../simh/simhv38-2-rc1/Visual Studio Projects/VAX.vcproj + .../simh/simhv38-2-rc1/BIN/Nt/Win32-Release/vax.exe + .../simh/windows-build/pthreads/pthread.h + .../simh/windows-build/winpcap/WpdPack/Include/pcap.h - 3. Put the required .lib files (packet,wpcap).lib from the WinPCAP 4.x - developer's kit in the linker's library path + The contents of the windows-build directory can be downloaded from: - 4. If you're using Borland C++, use COFF2OMF to convert the .lib files into - a format that can be used by the compiler. + https://github.com/downloads/markpizz/simh/windows-build.zip - 5. Define USE_NETWORK. The current windows network built binaries will - run on any system. regardless of whether or not WinPcap is installed, - and will provide Network functionality when WinPcap is available. - 6. Build it! + There are Windows batch files provided to initiate compiles using the MinGW + compiler tool chain. These batch files are located in the same directory + as this file and are called: build_mingw.bat, build_mingw_ether.bat, and + build_mingw_noasync.bat. These batch files each presume that the MinGW + toolchain is either in the current path or, if not that it is located at + C:\MinGW\bin. These batch files merely invoke the MinGW make (GNU make) + passing some specific arguments along with the optional arguments the batch + file is invoked with. + + The current windows network built binaries will run on any system without + regard to whether or not WinPcap is installed, and will provide + Network functionality when WinPcap is available. ------------------------------------------------------------------------------- @@ -256,18 +272,26 @@ Building on Linux, {Free|Net|Open}BSD, OS/X, Un*x: Linux : search for your variant on http://rpmfind.net OS/X : Apple Developer's site? - NOTE: These repositories for older versions of these platforms + NOTE: The repositories for older versions of these platforms don't contain a version of libpcap greater than 0.8.1. - However, most(all) recent releases of *nix environments ship - with sufficiently recent versions of libpcap either automatically - installed or available for installation as part of the - distribution. + However, most(all) recent releases of *nix environments + ship with sufficiently recent versions of libpcap either + automatically installed or available for installation as + part of the distribution. + The OS provided libpcap-dev components will be prefereable + to a package built from www.tcpdump.org sources. This is + due to the fact that various OS supplied packages will + depend on the OS supplied libpcap. The improper build or + install of the www.tcpdump.org source package can conflict + with the OS provided one and break the OS provided + applications (i.e. tcpdump and/or wireshark) as well as + not working correctly for use by simh. - 2. If you install the vendor supplied libpcap-dev package and it provides - a /usr/lib/libpcap.a file, then the existing makefile will automatically - use the vendor supplied library without any additional arguments. - If you have downloaded and built the libpcap from tcpdump.org, then - you can use it during a build by typing 'make USE_NETWORK=1' + 2. If you install the vendor supplied libpcap-dev package then the simh + makefile will automatically use the vendor supplied library without any + additional arguments. If you have downloaded and built libpcap from + www.tcpdump.org, then you can force its use during a build by typing + 'make USE_NETWORK=1' 3. Build it! diff --git a/Visual Studio Projects/0ReadMe_Projects.txt b/Visual Studio Projects/0ReadMe_Projects.txt index 29aa367d..8b90b547 100644 --- a/Visual Studio Projects/0ReadMe_Projects.txt +++ b/Visual Studio Projects/0ReadMe_Projects.txt @@ -4,8 +4,10 @@ Visual Studio Express 2010) it populates a directory tree under the BIN directory of the Simh distribution for temporary build files and produces resulting executables in the BIN/NT/Win32-Debug or BIN/NT/Win32-Release directories (depending on whether you target a Debug or Release build). -It expects that a winpcap developer pack zip file is expanded in a directory -parallel to the simh directory. + +The Visual Studio Projects expect that a winpcap developer pack and the +Posix threads for windows package are available in a directory parallel +to the simh directory. For Example, the directory structure should look like: @@ -14,34 +16,12 @@ For Example, the directory structure should look like: .../simh/simhv38-2-rc1/Visual Studio Projects/simh.sln .../simh/simhv38-2-rc1/Visual Studio Projects/VAX.vcproj .../simh/simhv38-2-rc1/BIN/Nt/Win32-Release/vax.exe - .../simh/winpcap/WpdPack/Include/pcap.h + .../simh/windows-build/pthreads/pthread.h + .../simh/windows-build/winpcap/WpdPack/Include/pcap.h +The contents of the windows-build directory can be downloaded from: -The winpcap developer pack can be found at: - http://www.winpcap.org/devel.htm - -The latest version of the WinPcap developer's pack is Version 4.1.2 - -Some features can be enabled if the pthreads API is available and contained -also in a parallel place in the directory structure. - - - .../simh/pthreads/Pre-built.2/include/include/pthreads.h - - -To install pthreads API, create the directory: - - .../simh/pthreads/ - -download the file: - ftp://sourceware.org/pub/pthreads-win32/pthreads-w32-2-8-0-release.exe -to that directory and execute it. Click on the Extract button. -Once installed, When running a simulator with pthreads support enabled, you -will need a copy of the DLL file (simh\pthreads\Pre-built.2\lib\pthreadVC2.dll) -to exist in either the %windir%\System32 directory (or %windir%\SysWOW64 on -x64 Windows environments) or your working directory while running a simh -simulator. The default working directory for included project files is the -"Visual Studio Projects" directory. + https://github.com/downloads/markpizz/simh/windows-build.zip Network devices are capable of using pthreads to enhance their performance. @@ -56,3 +36,5 @@ the simulators which have such devices are VAX, VAX780 and PDP11. To achieve these benefits the simulators must be built with SIM_ASYNCH_IO defined. +The project files in this directory build these simulators with support for +both network and asynchronous I/O. diff --git a/Visual Studio Projects/ALTAIR.vcproj b/Visual Studio Projects/ALTAIR.vcproj index 32f0178e..50953c79 100644 --- a/Visual Studio Projects/ALTAIR.vcproj +++ b/Visual Studio Projects/ALTAIR.vcproj @@ -22,7 +22,7 @@ IntermediateDirectory="..\BIN\NT\Project\simh\ALTAIR\$(PlatformName)-$(ConfigurationName)" ConfigurationType="1" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" - CharacterSet="2" + CharacterSet="0" > + + + + + + + + diff --git a/Visual Studio Projects/PDP15.vcproj b/Visual Studio Projects/PDP15.vcproj index c6329eed..8241c99f 100644 --- a/Visual Studio Projects/PDP15.vcproj +++ b/Visual Studio Projects/PDP15.vcproj @@ -22,7 +22,7 @@ IntermediateDirectory="..\BIN\NT\Project\simh\PDP15\$(PlatformName)-$(ConfigurationName)" ConfigurationType="1" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" - CharacterSet="2" + CharacterSet="0" > + + + + + + + + diff --git a/Visual Studio Projects/VAX780.vcproj b/Visual Studio Projects/VAX780.vcproj index c16c1f0a..e81699e3 100644 --- a/Visual Studio Projects/VAX780.vcproj +++ b/Visual Studio Projects/VAX780.vcproj @@ -22,7 +22,7 @@ IntermediateDirectory="..\BIN\NT\Project\simh\VAX780\$(PlatformName)-$(ConfigurationName)" ConfigurationType="1" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" - CharacterSet="2" + CharacterSet="0" > + + + + + + + + diff --git a/Visual Studio Projects/lgp.vcproj b/Visual Studio Projects/lgp.vcproj index 4e9745ea..67701a97 100644 --- a/Visual Studio Projects/lgp.vcproj +++ b/Visual Studio Projects/lgp.vcproj @@ -22,7 +22,7 @@ IntermediateDirectory="..\BIN\NT\Project\simh\lgp\$(PlatformName)-$(ConfigurationName)" ConfigurationType="1" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" - CharacterSet="2" + CharacterSet="0" >