Commit graph

2120 commits

Author SHA1 Message Date
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
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
6d11b3bd25 Updated HP2100 from Dave Bryan 2012-03-24 12:52:22 -07:00
Mark Pizzolato
8255ba9379 Fixed typo in prior correction 2012-03-23 15:57:26 -07:00
Mark Pizzolato
7d07c49e3f Credit Matt Burke for PCAP-VMS revisions 2012-03-23 13:06:37 -07:00
Mark Pizzolato
380625e404 Fixed vax build issue when building on a vax. 2012-03-23 13:05:36 -07:00
Mark Pizzolato
3cc10c3f71 Fixed vax build issue when building on a vax. 2012-03-23 12:40:20 -07:00
Mark Pizzolato
7c51414228 Fixed sim_debug macro implementation to allow for the case when a sim_debug invocation is used as a single expression following an if condition. Found by Michael Bloom 2012-03-23 12:39:42 -07:00
Mark Pizzolato
5863e1bc38 HP2100 Update from Dave Bryan 2012-03-23 11:11:07 -07:00
Mark Pizzolato
e0fbfa6abf Fix memory leaks in attach error paths. 2012-03-22 16:14:30 -07:00
Mark Pizzolato
2fcb0aad62 Made VMS build more robust and the failure case when VMS-PCAP is missing provide guidance. 2012-03-22 14:37:01 -07:00
Mark Pizzolato
0270d0ea0d Cleanup based on reports from Michael Bloom 2012-03-22 12:20:00 -07:00
Mark Pizzolato
3049f16af2 Compiler detected unsigned bug 2012-03-21 14:46:34 -07:00
Mark Pizzolato
5284f8f1e6 VMS Build cleanup 2012-03-21 14:45:59 -07:00
Mark Pizzolato
45246a3339 Updated HP2100 from Dave Bryan 2012-03-21 06:14:01 -07:00
Mark Pizzolato
663b25818b Fix potential memory leak in error path reported by Michael Bloom 2012-03-20 18:57:02 -07:00
Mark Pizzolato
cf280ad8f7 Completing merge of v3.9-0-rc1 compile cleanups 2012-03-20 18:55:45 -07:00
Mark Pizzolato
2b43b358a8 Fix SHOW SHOW command to separate the SHOW options which are device specific and unit specific 2012-03-20 11:16:41 -07:00
Mark Pizzolato
3ccd66d546 Cleanup potential fault in eth_close if eth_close is called with a NULL argument. 2012-03-20 11:16:00 -07:00
Mark Pizzolato
93f14f76fb Compile cleanups 2012-03-20 11:13:17 -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
fabdf73bed Compiler cleanup after v3.9-0 merge 2012-03-19 16:07:36 -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
eb0f027c47 Cleanup Compiler warning. 2012-03-14 17:21:15 -07:00
Mark Pizzolato
b3102ea86a Foxed size units (words or bytes) consistency issues when creating disks. 2012-03-14 09:09:25 -07:00
Mark Pizzolato
e61d00d539 Added compiler optimizations to gcc builds 2012-03-13 07:07:28 -07:00
Mark Pizzolato
0abfa9306b Merge branch 'master' of github.com:markpizz/simh 2012-03-13 06:54:46 -07:00
Mark Pizzolato
f07f08b877 Proper declarations to avoid compiler warnings 2012-03-13 06:53:36 -07:00
Mark Pizzolato
57c961f99a Made references to disk capacity consistent with respect to the units they are kept in (i.e. Words or Bytes). 2012-03-12 06:58:47 -07:00
Mark Pizzolato
1d5dc21dcc Enable Maximum compiler optimization for release build of VAX simulators
this produces a net gain of 20% more instructions executed per second
2012-03-09 09:14:34 -08: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
a3973f0e8c Merge branch 'master' into Extra-VAXen 2012-02-28 17:58:44 -08:00
Mark Pizzolato
9386369bd5 Made dynamic libreadline loading more robust for some systems 2012-02-28 17:56:41 -08:00
Mark Pizzolato
4f6ad32395 Fixed MAC Address Conflict detection support.
VMS engineers designed the address conflict strategy when essentially all LANs were single collision domains (i.e. ALL nodes which might be affected by an address conflict were physically present on a single Ethernet cable which might have been extended by a couple of repeaters).  Since that time, essentially no networks are single collision domains.  Thick and thinwire Ethernet cables don’t exist and very few networks even have hubs.  Today, essentially all LANs are deployed using one or more layers of network switches.  In a switched LAN environment, the switches on the LAN ‘learn’ which ports on the LAN source traffic from which MAC addresses and then forward traffic destined for particular MAC address to the appropriate ports.  If a particular MAC address is already in use somewhere on the LAN, then the switches ‘know’ where it is.  The host based test using the loopback protocol is poorly designed to detect this condition.  This test is performed by the host first changing the device’s Physical MAC address to the address which is to be tested, and then sending a loopback packet FROM AND TO this MAC address with a loopback reply to be sent by a system which may be currently using the MAC address.  If no reply is received, then the MAC address is presumed to be unused.  The sending of this packet will result in its delivery to the right system since the switch port/MAC address tables know where to deliver packets destined to this MAC address, however the response it generates won’t be delivered to the system performing the test since the switches on the LAN won’t know about the local port being the right target for packets with this MAC address.  A better test design to detect these conflicts would be for the testing system to send a loopback packet FROM the current physical MAC address (BEFORE changing it) TO the MAC address being tested with the loopback response coming to the current physical MAC address of the device.  If a response is received, then the address is in use and the attempt to change the device’s MAC address should fail.  Since we can’t change the software running in these simulators to implement this better conflict detection approach, we can still ‘do the right thing’ in the sim_ether layer.  We’re already handling the loopback test packets specially since we always had to avoid receiving the packets which were being sent, but needed to allow for the incoming loopback packets to be properly dealt with.  We can extend this current special handling to change outgoing ‘loopback to self’ packets to have source AND loopback destination addresses in the packets to be the host NIC’s physical address.  The switch network will already know the correct MAC/port relationship for the host NIC’s physical address, so loopback response packets will be delivered as needed.
2012-02-28 14:10:08 -08:00
Mark Pizzolato
4ab52659be Provided Console Control Event explanation as comments in the sim_console code. 2012-02-28 14:02:49 -08:00
Mark Pizzolato
4ce92b4f38 Fixed overrun bug in eth_devices.
Fixed device name compare in eth_getname_byname to compare the whole name
Removed unused num field in eth_list structure
Extended the number of devices supported since some platforms may have many libpcap accessable devices but only a few basic Ethernet ones
2012-02-28 13:31:46 -08:00
Mark Pizzolato
d9e4afe64c Fixed internal loopback packet processing. We should only respond to loopback packets addressed to the physical MAC address OR the Broadcast address OR a Multicast address we're listening to (we may receive other loopback packets if we're in promiscuous mode but we should not respond to them). 2012-02-28 12:09:05 -08:00
Mark Pizzolato
cf49864327 More robust detection of file transfer/conversion errors in ROM/boot code 2012-02-26 12:38:07 -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
153e905339 Added checking to detect unexpected file sizes for ROM image files.
This can happen if the file was transferred or unpacked incorrectly and in the process tried to convert line endings rather than passing the file's contents unmodified.
2012-02-25 08:56:25 -08:00
Mark Pizzolato
4838d1f7dd Align VHD disk data blocks for optimal performance when a VHD resides on storage with 4K sector size. 2012-02-25 08:45:52 -08:00
Mark Pizzolato
98e343f43f Fixed call to pcap_lookupnet to actually use the device name as the argument. 2012-02-17 16:33:06 -08:00