head 1.9; access; symbols pkgsrc-2016Q3:1.8.0.36 pkgsrc-2016Q3-base:1.8 pkgsrc-2016Q2:1.8.0.34 pkgsrc-2016Q2-base:1.8 pkgsrc-2016Q1:1.8.0.32 pkgsrc-2016Q1-base:1.8 pkgsrc-2015Q4:1.8.0.30 pkgsrc-2015Q4-base:1.8 pkgsrc-2015Q3:1.8.0.28 pkgsrc-2015Q3-base:1.8 pkgsrc-2015Q2:1.8.0.26 pkgsrc-2015Q2-base:1.8 pkgsrc-2015Q1:1.8.0.24 pkgsrc-2015Q1-base:1.8 pkgsrc-2014Q4:1.8.0.22 pkgsrc-2014Q4-base:1.8 pkgsrc-2014Q3:1.8.0.20 pkgsrc-2014Q3-base:1.8 pkgsrc-2014Q2:1.8.0.18 pkgsrc-2014Q2-base:1.8 pkgsrc-2014Q1:1.8.0.16 pkgsrc-2014Q1-base:1.8 pkgsrc-2013Q4:1.8.0.14 pkgsrc-2013Q4-base:1.8 pkgsrc-2013Q3:1.8.0.12 pkgsrc-2013Q3-base:1.8 pkgsrc-2013Q2:1.8.0.10 pkgsrc-2013Q2-base:1.8 pkgsrc-2013Q1:1.8.0.8 pkgsrc-2013Q1-base:1.8 pkgsrc-2012Q4:1.8.0.6 pkgsrc-2012Q4-base:1.8 pkgsrc-2012Q3:1.8.0.4 pkgsrc-2012Q3-base:1.8 pkgsrc-2012Q2:1.8.0.2 pkgsrc-2012Q2-base:1.8 pkgsrc-2012Q1:1.6.0.28 pkgsrc-2012Q1-base:1.6 pkgsrc-2011Q4:1.6.0.26 pkgsrc-2011Q4-base:1.6 pkgsrc-2011Q3:1.6.0.24 pkgsrc-2011Q3-base:1.6 pkgsrc-2011Q2:1.6.0.22 pkgsrc-2011Q2-base:1.6 pkgsrc-2011Q1:1.6.0.20 pkgsrc-2011Q1-base:1.6 pkgsrc-2010Q4:1.6.0.18 pkgsrc-2010Q4-base:1.6 pkgsrc-2010Q3:1.6.0.16 pkgsrc-2010Q3-base:1.6 pkgsrc-2010Q2:1.6.0.14 pkgsrc-2010Q2-base:1.6 pkgsrc-2010Q1:1.6.0.12 pkgsrc-2010Q1-base:1.6 pkgsrc-2009Q4:1.6.0.10 pkgsrc-2009Q4-base:1.6 pkgsrc-2009Q3:1.6.0.8 pkgsrc-2009Q3-base:1.6 pkgsrc-2009Q2:1.6.0.6 pkgsrc-2009Q2-base:1.6 pkgsrc-2009Q1:1.6.0.4 pkgsrc-2009Q1-base:1.6 pkgsrc-2008Q4:1.6.0.2 pkgsrc-2008Q4-base:1.6 pkgsrc-2008Q3:1.5.0.34 pkgsrc-2008Q3-base:1.5 cube-native-xorg:1.5.0.32 cube-native-xorg-base:1.5 pkgsrc-2008Q2:1.5.0.30 pkgsrc-2008Q2-base:1.5 cwrapper:1.5.0.28 pkgsrc-2008Q1:1.5.0.26 pkgsrc-2008Q1-base:1.5 pkgsrc-2007Q4:1.5.0.24 pkgsrc-2007Q4-base:1.5 pkgsrc-2007Q3:1.5.0.22 pkgsrc-2007Q3-base:1.5 pkgsrc-2007Q2:1.5.0.20 pkgsrc-2007Q2-base:1.5 pkgsrc-2007Q1:1.5.0.18 pkgsrc-2007Q1-base:1.5 pkgsrc-2006Q4:1.5.0.16 pkgsrc-2006Q4-base:1.5 pkgsrc-2006Q3:1.5.0.14 pkgsrc-2006Q3-base:1.5 pkgsrc-2006Q2:1.5.0.12 pkgsrc-2006Q2-base:1.5 pkgsrc-2006Q1:1.5.0.10 pkgsrc-2006Q1-base:1.5 pkgsrc-2005Q4:1.5.0.8 pkgsrc-2005Q4-base:1.5 pkgsrc-2005Q3:1.5.0.6 pkgsrc-2005Q3-base:1.5 pkgsrc-2005Q2:1.5.0.4 pkgsrc-2005Q2-base:1.5 pkgsrc-2005Q1:1.5.0.2 pkgsrc-2005Q1-base:1.5 pkgsrc-2004Q4:1.4.0.10 pkgsrc-2004Q4-base:1.4 pkgsrc-2004Q3:1.4.0.8 pkgsrc-2004Q3-base:1.4 pkgsrc-2004Q2:1.4.0.6 pkgsrc-2004Q2-base:1.4 pkgsrc-2004Q1:1.4.0.4 pkgsrc-2004Q1-base:1.4 pkgsrc-2003Q4:1.4.0.2 pkgsrc-2003Q4-base:1.4 netbsd-1-6-1:1.3.0.2 netbsd-1-6-1-base:1.3; locks; strict; comment @# @; 1.9 date 2016.12.18.11.11.28; author hans; state dead; branches; next 1.8; commitid FfWqqDjQ4fEElsyz; 1.8 date 2012.06.16.14.58.36; author abs; state Exp; branches; next 1.7; 1.7 date 2012.05.04.09.38.23; author hans; state Exp; branches; next 1.6; 1.6 date 2008.11.01.05.15.42; author obache; state Exp; branches; next 1.5; 1.5 date 2004.12.22.21.07.01; author skrll; state Exp; branches; next 1.4; 1.4 date 2003.05.31.16.10.53; author thorpej; state Exp; branches; next 1.3; 1.3 date 2003.01.18.21.17.34; author bouyer; state Exp; branches; next 1.2; 1.2 date 2002.11.06.08.37.47; author thorpej; state dead; branches; next 1.1; 1.1 date 2002.10.19.21.38.10; author thorpej; state Exp; branches; next ; desc @@ 1.9 log @There haven't been any simh releases in years, so convert this package to take a snapshot from github. Update to 7964e2b72d9. Changes: too many to list them all, full list of changes is available at https://github.com/simh/simh/blob/master/README.md Highlights: - many new simulators - simulator front panel API - VAXstation video display simulation using SDL - UDP and NAT packet transports - scripting support @ text @$NetBSD: patch-ab,v 1.8 2012/06/16 14:58:36 abs Exp $ --- sim_ether.c.orig 2012-03-30 15:30:26.000000000 +0000 +++ sim_ether.c @@@@ -806,6 +806,8 @@@@ void eth_show_dev (FILE* st, ETH_DEV* de #include #include #include +#elif defined(__sun) +#undef USE_TAP_NETWORK #elif defined(USE_BSDTUNTAP) #include #include @ 1.8 log @- Pickup pkgsrc CFLAGS correctly - Fix build on NetBSD/vax 6.0 - Bump PKGREVISION @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.7 2012/05/04 09:38:23 hans Exp $ @ 1.7 log @Update simh to 3.9.0 See https://raw.github.com/simh/simh/master/sim_rev.h for changes @ text @d1 1 a1 1 $NetBSD$ d3 2 a4 2 --- sim_ether.c.orig 2012-03-30 16:30:26.000000000 +0200 +++ sim_ether.c 2012-05-03 23:31:13.438944514 +0200 @ 1.6 log @Update simh to 3.8.0. Based on PR 39750 and some clean up. ChangeLog V3.8.0 15-Jun-2008 SCP and libraries: * Fixed bug in local/global register search (found by Mark Pizzolato) * Fixed bug in restore of RO units (from Mark Pizzolato) * Added SET/SHO/NO BR with default argument (from Dave Bryan) * Worked around Telnet negotiation problem with QCTerm (from Dave Bryan) GRI-909: * Added GRI-99 support HP2100 (all changes from Dave Bryan): * Implemented 12966A Buffered Asynchronous Communications Interface simulator * Added SET CPU DEBUG and OS/VMA flags, enabled OS/VMA * Corrected MP W5 (JSB) jumper action, SET/SHOW reversal, mp_mevff clear on interrupt with I/O instruction in trap cell * Removed DBI support from 1000-M (was temporary for RTE-6/VM) * Enabled EMA and VIS, added EMA, VIS, and SIGNAL debug flags * Enabled SIGNAL instructions, SIG debug flag * Fixed single stepping through interrupts * Implemented VMA, OS, VIS, SIGNAL, and EMA firmware extensions * Fixed unsigned divide bug in .DDI * Fixed unsigned multiply bug in .DMP * Fixed B register return bug in /CMRT * DS disk: corrected and verified ioCRS action * MUX: sync mux poll with console poll for idle compatibility * PTR: fixed trailing null counter for tape re-read * CLK: synchronized CLK with TTY if set for 10 msec. * TTY: changed TTY output wait from 100 to 200 for MSU BASIC Nova (all changes from Bruce Ray): * Added CPU support for third-party 64KW memory * Added CPU history support * Renamed CLK to RTC, to match DG literature * Renamed DK to DKP, to match DG literature * Changed DKP bootstrap to DG official sequence * Rename DP to DSK, to match DG literature * Changed DSK bootstrap to DG official sequence * Renamed MT to MTA, to match DG literature * Changed MTA bootstrap to DG official sequence PDP11: * Fixed DMA memory address limit test (found by John Dundas) * Fixed MMR0 treatment in RESET (found by Walter Mueller) * Fixed write behavior of 11/70 MBRK, LOSIZE, HISIZE (found by Walter Mueller) * Added support to set default state of KDJ11B,E clock control register * Added support for DC11 * Added support for KE11A * Added support for KG11A (from John Dundas) * Added support for RC11 (from John Dundas) * Added modem control to DL11 * Rename TTIX/TTOX to DLI/DLO, to match DC11 nomenclature V3.7.3 02-Sep-2007 SCP: * -Fixed bug in SET THROTTLE command PDP-10: * Fixed non-portable usage in SHOW HISTORY routine PDP-11: * TA: forward op at BOT skips initial file gap PDP-8: * CT: forward op at BOT skips initial file gap * -CT: fixed handling of BEOT VAX, VAX780:: * CPU: fixed bug in read access g-format indexed specifiers V3.7.2 12-Jul-2007 Ethernet library (from Dave Hittner): * fixed non-ethernet device removal loop (from Naoki Hamada) * added dynamic loading of wpcap.dll; * corrected exceed max index bug in ethX lookup * corrected failure to look up ethernet device names in the registry on Windows XP x64 Honeywell 316/516 (from Theo Engel) * LPT: fixed loss of last print line (from Theo Engel) * MT: fixed bug in write without stop (from Theo Engel) * CLK: fixed bug in clock increment (from Theo Engel) IBM 1401: * added recognition of overlapped operation modifiers * remove restriction on load-mode binary tape operations * fixed read tape mark operation (found by Van Snyder) PDP-1: * -fixed typo in SBS clear (from Norm Lastovica) PDP-11: * RH, RP, TU: CS1 DVA is in the device, not the MBA PDP-8: * fixed typo (from Norm Lastovica) VAX: * revised idle detector V3.7.1 12-May-2007 SCP and libraries: * fixed bug in get_sim_opt (reported by Don North) * fixed bug in RESTORE with changed memory size * fixed breakpoint actions in DO command file processing (from Dave Bryan) HP2100 (all fixes from Dave Bryan): * IPLI EDT delays DMA completion interrupt for TSB * MUX: * corrected "mux_sta" size from 16 to 21 elements * fixed "muxc_reset" to clear lines 16-20 * fixed control card OTx to set current channel number * fixed to set "muxl_ibuf" in response to a transmit interrupt * changed "mux_xbuf", "mux_rbuf" declarations from 8 to 16 bits * fixed to set "mux_rchp" when a line break is received * fixed incorrect "odd_par" table values * reversed test in "RCV_PAR" to return "LIL_PAR" on odd parity * fixed mux reset (ioCRS) to clear port parameters * fixed to use PUT_DCH instead of PUT_CCH for data channel status * added DIAG/TERM modifiers to implement diagnostic mode PDP-11: * CPU: changed memory size routine to work with RESTORE * HK: NOP and DCLR (at least) do not check drive type * HK: MR2 and MR3 only updated on NOP * TU: TMK sets FCE only on read (found by Naoki Hamada) * XU: added missing FC_RMAL command * XU: cleared multicast on write VAX-11/780: * modified mbz checks to reflect 780 microcode patches (found by Naoki Hamada) V3.7.0 03-Feb-2007 SCP and libraries: * Implemented throttle commands * Added idle support * Added -e to control error processing in DO command files (from Dave Bryan) * Fixed handling of non-printable characters in KSR mode * Fixed bug in reverse operations for P7B-format tapes * Fixed bug in reverse operations across erase gaps GRI-909: * Fixed handling of non-printable characters in KSR mode Honeywell 316/516 * Fixed handling of non-printable characters in KSR mode HP 2100: * Reorganized CPU modules for easier addition of new instructions * Added Double Integer instructions, 1000-F CPU, 2114 and 2115 CPUs, 12K and 24K memory sizes, 12607B and 12578A DMA controllers, and 21xx binary loader protection * Fixed DMS self-test instruction execution on 1000-M * Fixed indirect interrupt holdoff logic * Fixed DS REQUEST STATUS to clear status-1 (from Dave Bryan) * Added Floating Point Processor (from Dave Bryan) * Fixed LPS diag-mode CLC response IBM 7094: * Fixed new bug in halt IO wait loop * Added IFT, EFT expanded core test instructions Interdata: * Removed separate multiplexor clock * Added idle support * Synced multiplexor poll to real-time clock * Fixed handling of non-printable characters in KSR mode * Synced keyboard poll to real-time clock * Changed line-time clock to be free-running PDP-1: * Added 16-channel sequence break system (API) support * Added PDP-1D support (including timesharing clock) * Added Type 630 data communications subsystem (multiplexer) * Separated TTI, TTO for API support * Fixed bugs in symbolic character input, block loader PDP-10: * Added idle support * Synced keyboard poll to real-time clock * Added card reader support PDP-11: * Added idle support * Fixed bug in ASH -32 C value * Fixed RF11 unit mask (found by John Dundas) * Synced keyboard, Ethernet, and multiplexer polls to real-time clock * Added clock coscheduling support * Added TA11 (casette) support * Changed DHQ11 to be off by default * Fixed operand order in EIS instructions (found by W.F.J. Mueller) PDP-18b: * Fixed incorrect value of PC on instruction fetch mem mmgt error * Fixed PDP-15 handling of mem mmgt traps (sets API 3) * Fixed PDP-15 handling of CAL API 4 (sets only if 0-3 inactive) * Fixed PDP-15 CAF to clear memory management mode register * Fixed boundary test in KT15/XVM (reported by Andrew Warkentin) * Added XVM RDCLK instruction * Added idle support and infinite loop detection * Fixed RF15, DSCD does not clear function register * Added PDP-15 instructions for program selection of console duplex status * Fxed PDP-15 handling of reader out-of-tape * Fixed console and multiplexer handling of non-printable characters in KSR mode * Changed real-time clock to be free running * Synced keyboard poll to real-time clock PDP-8: * Fixed SC value after DVI overflow (found by Don North) * Added idle support and infinite loop detection * Added TA8E support * Changed real-time clock to be free running * Added ability to disambiguate overlapping IOT definitions in symbolic input and output * Fxed console handling of non-printable characters in KSR mode * Synced keyboard poll to real-time clock VAX, VAX780: * Added idle support * Fixed operand order in EIS instructions (found by W.F.J. Mueller) V3.6.1 22-Jul-2006 SCP: * Implemented SET/SHOW PCHAR all DECtapes: * Fixed conflict in ATTACH switches HP2100 (from Dave Bryan): * Added CAPACITY as alternate for REEL * Fixed EOT test for unlimited reel size IBM 1620 (from Tim McBride): * Fixed card reader fgets call * Fixed card reader boot sequence IBM 7094: * Fixed bug in halt IO wait loop * Fixed bug in reading full 80 column binary cards * Added binary loader (courtesy of Dave Pitt) Interdata 32b: * Fixed transcription errors in disk boot loader (found by Davis Johnson) PDP-1: * Fixed bugs in MUS and DIV PDP-11: * CIS: added interrupt tests to character instructions * CIS: added 11/44 stack probe test to MOVCx (only) * KL11/DL11: first release * RF11: first release * TTI, TTO: added UC support to TTI, TTO 18b PDP's: * CPU: fixed RESET to clear AC, L, and MQ * DT: fixed checksum calculation bug for Type 550 * FPP: fixed bugs in left shift, multiply * TTI, TTO: fixed Baudot letters/figures inversion for PDP-4 * TTI, TTO: fixed letters/figures tracking for PDP-4 * TTI, TTO: fixed PDP-4/PDP-7 terminal default to be local echo * Added FioDEC, Baudot display * Generalized LOAD to handle HRI, RIM, and BIN files PDP-8: * TTIX: fixed bug in DETACH routine V3.6.0 20-Apr-2006 SCP and libraries * Revised save/restore format to check simulator options for consistency Most magnetic tapes * Added support for limiting tape capacity to a particular size in MB IBM 7094 - First release VAX and VAX-11/780 (most bugs found by Tim Stark) * Added KESU capability to virtual examine * Fixed bugs in virtual examine * Rewrote CPU history function for improved usability * Fixed fault cleanup to clear PSL * Fixed ADAWI r-mode to preserve dst<31:16> * Fixed ACBD/G to test correct operand * Fixed access checking on modify-class specifiers * Ffixed branch address calculation in CPU history * Fixed bug in reported VA on faulting cross-page write * Fixed POLYD, POLYG to clear R4, R5 * Fixed POLYD, POLYG to set R3 correctly * Fixed POLYD, POLYG to not exit prematurely if arg = 0 * Fixed POLYD, POLYG to do full 64b multiply * Fixed POLYF, POLYD, POLYG to remove truncation on add * Fixed POLYF, POLYD, POLYG to mask multiply result to 31b/63b/63b * Fixed fp add routine to test for zero via fraction to support "denormal" argument from POLYF, POLYD, POLYG * Fixed bug in 32b floating multiply routine * Fixed bug in 64b extended modulus routine VAX-11/780 only (most bugs found by Tim Stark) * Added FLOAD command, loads system file from console floppy disk * Fixed MOVTC, MOVTUC to preserve cc's through page faults * Fixed MOVTUC to stop on translated == escape * Fixed CVTPL to set registers before destination reg write * Fixed CVTPL to set correct cc bit on overflow * Fixed EDITPC to preserve cc's through page faults * Fixed EDITPC EO$BLANK_ZERO count, cc test * Fixed EDITPC EO$INSERT to insert fill instead of blank * Fixed EDITPC EO$LOAD_PLUS/MINUS to skip character * Fixed MNEGH to test negated sign, clear C * Fixed carry propagation in qp_inc, qp_neg, qp_add * Fixed pack routines to test for zero via fraction * Fixed ACBH to set cc's on result * Fixed POLYH to set R3 correctly * Fixed POLYH to not exit prematurely if arg = 0 * Fixed POLYH to mask multiply result to 127b * Fixed fp add routine to test for zero via fraction to support "denormal" argument from POLYH * Fixed EMODH to concatenate 15b of 16b extension * Fixed bug in reported VA on faulting cross-page write * Added access check on system PTE reference in TLB miss flows * Added MBZ checking in LDPCTX and MTPR * Compatibility mode: fixed omission of SXT * Compatibility mode: fixed order of operand fetching in XOR * CR: added CR11/CD11 support Honeywell 316 * CPU: fixed bugs in LLL, LRL (found by Theo Engel) * LPT: fixed bug in blanks backscanning (found by Theo Engel) * TTY: fixed bugs in punch state handling (found by Theo Engel) IBM 1401 - Fixed bug in divide (reported by Van Snyder) Interdata * CPU: fixed bug in DH (found by Mark Hittinger) * SELCH: fixed bug, GO preserves EXA and SSTA (found by Davis Johnson) * IDC: fixed WD/WH handling (found by Davis Johnson) * IDC: fixed bug, nop command should be ignored (found by Davis Johnson) NOVA - Fixed bug in DIVS (found by Mark Hittinger) PDP-11 * CPU: fixed order of operand XOR operand fetch for SDSD-type models * CIS: fixed bug in decode table (found by John Dundas) * CIS: fixed bug in ASHP * CIS: fixed bug in write decimal string with mmgt enabled * CIS: fixed bug in 0-length strings in multiply/divide * CR: added CR11/CD11 support (from John Dundas) * TC: fixed READ to set extended data bits in TCST (found by Alan Frisbie) V3.5.2 20-Jan-2006 All 7-track tapes: added write support for P7B format All console terminals: KSR/UC output suppresses non-printable characters PDP10: * RP.c: fixed DCLR not to clear disk address PDP11 (also VAX, VAX780 where applicable): * HK: fixed overlapped seek interaction with NOP, etc * RH: added enable/disable routine * RP, RQ, TQ, TS, TU: widened address display to 64b when USE_ADDR64 * RP: fixed DCLR not to clear disk address * RP, TU: fixed device enable/disable logic to include Massbus adapter * RP, TU: widened address display to 64b when USE_ADDR64 * TU: changed default adapter to TM03 (for VMS) PDP8: * DF, RF, DT: fixed unaligned access bug (found by Doug Carman) * RL: fixed IOT 61 decoding bug (found by David Gesswein) VAX: * CPU: fixed breakpoint detection when USE_ADDR64 option is active * CPU: fixed CVTfi to trap on integer overflow if PSW set * Changed default compile options to USE_ADDR64 VAX780: first release V3.5.1 15-Oct-2005 IBM 1401: * Changed character encodings to be consistent with Paul Pierce 709X simulator * Changed card column binary format to be consistent with Paul Pierce 709X simulator * Added choice of business or Fortran encoding for card punch, line printer , and inquiry terminal output * Added mode control for old/new character encodings IBM 1620: Changed character encodings to be consistent with 7094 and 1401 PDP-11: Fixed bug in autoconfiguration algorithm (missing XU table entry) VAX: * Fixed bug in autoconfiguration algorithm (missing XU table entry) * Fixed bug in floating point structure definitions with 32b compilation option V3.5.0 09-Sep-2005 SCP and libraries: * Fixed to trim trailing spaces on file names * sim_ether: added Windows user-defined adapter names (from Timothe Litt) * sim_sock: fixed SIGPIPE error on UNIX * sim_tape: fixed misallocation of TPC map array in 64b configurations * sim_tmxr: added support for SET DISCONNECT IBM 1401: * Fixed clearing of SSB-SSG on reset (reported by Ralph Reinke) * Fixed problem with 2, 5 character R, P instructions (reported by Van Snyder) * Removed error stops from MCE PDP-11: * Revised autoconfiguration algorithm and interface * Added additional 11/60 registers * pdp11_vh: fixed bug in vector display routine * pdp11_xu: fixed runt packet processing (found by Tim Chapman) PDP-15: * Removed spurious AAS instruction * Fixed bug in SHOW TTIX CONN/STATS * Fixed bug in SET TTIXn LOG/NOLOG PDP8 * Fixed bug in SHOW TTIX CONN/STATS * Fixed bug in SET TTIXn LOG/NOLOG HP2100 * Added SET MUXLn DISCONNECT Interdata: * fixed bug in SHOW PAS CONN/STATS * Added SET PASLn DISCONNECT SDS * Fixed bug in SHOW MUX CONN/STATS * Added SET MUXLn DISCONNECT V3.4.0 03-May-05 SCP and libraries: * Fixed ASSERT code * Revised syntax for SET DEBUG (from Dave Bryan) * Revised interpretation of fprint_sym, fparse_sym returns * Moved DETACH sanity tests into detach_unit * Added test for WSAEINPROGRESS (from Tim Riker) PDP-10: * Fixed TU bug, ERASE and WREOF should not clear done (reported by Rich Alderson) * Fixed TU error reporting PDP-11: * Fixed TU error reporting Interdata 16b: * Fixed bug in show history routine (from Mark Hittinger) * Revised examine/deposit to do words rather than bytes Interdata 32b: * Fixed bug in initial memory allocation * Fixed bug in show history routine (from Mark Hittinger) * Revised examine/deposit to do words rather than bytes HP2100 (all changes and fixes from Dave Bryan) * CPU: reorganized CPU options * CPU1: reorganized EIG routines * Added FFP support V3.3.2 09-Mar-05 SCP: added ASSERT command (from Dave Bryan) PDP-11: * Fixed bugs in RESET for 11/70 (reported by Tim Chapman) * Fixed bug in SHOW MODEL (from Sergey Okhapkin) * Made SYSID variable for 11/70 (from Tim Chapman) * Fixed MBRK write case for 11/70 (from Tim Chapman) * RQ: added RA60, RA71, RA81 disks * RY: fixed bug in boot code (reported by Graham Toal) H316 * Fixed IORETURN macro * PT: fixed bug in OCP '0001 (found by Philipp Hachtmann) * MT: fixed error reporting from OCP (found by Philipp Hachtmann) HP2100 (from Dave Bryan) * Fixed missing MPCK on JRS target * Removed EXECUTE instruction (is NOP in actual microcode) * Fixed missing negative overflow renorm in StoreFP I1401: fixed bug in LPT write line routine (reported by Van Snyder) Interdata 32b: fixed branches to mask new PC (from Greg Johnson) VAX: * Fixed initial state of cpu_extmem * RQ: added RA60, RA71, RA81 disks V3.3.1 08-Jan-05 H316: * Fxed bug in DIV * TTY: fixed bug in SKS '104 (reported by Philipp Hachtmann) * TTY: fixed bug in SKS '504 * Added reader/punch ASCII file support * Added Teletype reader/punch support * DP: fixed bug in skip on !seeking * MT: fixed bug in DMA/DMC support * LP: fixed bug in DMA/DMC support HP2100: * Fixed DMA reset to clear alternate CTL flop (from Dave Bryan) * Fixed DMA reset to not clear control words (from Dave Bryan) * Fixed SBS, CBS, TBS to do virtual reads * Separated A/B from M[0/1], for DMA IO (from Dave Bryan) * Added SET CPU 21MX-M, 21MX-E (from Dave Brian) * Disabled TIMER/EXECUTE/DIAG instructions for 21MX-M (from Dave Bryan) * Added post-processor to maintain T/M consistency (from Dave Bryan) * DS: first release * LPS, LPT: added restart when set online, etc (from Dave Bryan) * LPS: col count for non-printing characters (from Dave Bryan) IBM 1401: added address argument support (from Van Snyder) Interdata: added magtape read-only file support PDP-11: * Fixed WAIT to work in all modes (from John Dundas) * TM, TS: added read-only file support SDS 940: added magtape read-only file support @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.5 2004/12/22 21:07:01 skrll Exp $ d3 11 a13 45 --- sim_ether.c.orig 2007-05-17 12:08:20.000000000 +0200 +++ sim_ether.c @@@@ -1131,6 +1131,15 @@@@ void eth_callback(u_char* info, const st /* set data in passed read packet */ tmp_packet.len = header->len; memcpy(tmp_packet.msg, data, header->len); + /* + * Pad packet to minimum ethernet len, in case it comes from the local + * host. + */ + if (header->len < 60) { + tmp_packet.len = 60; + memset(dev->read_packet->msg + header->len, 0, 60 - header->len); + } + if (dev->need_crc) eth_add_crc32(&tmp_packet); @@@@ -1143,6 +1152,15 @@@@ void eth_callback(u_char* info, const st /* set data in passed read packet */ dev->read_packet->len = header->len; memcpy(dev->read_packet->msg, data, header->len); + /* + * Pad packet to minimum ethernet len, in case it comes from the local + * host. + */ + if (header->len <60) { + dev->read_packet->len = 60; + memset(dev->read_packet->msg + header->len, 0, 60 - header->len); + } + if (dev->need_crc) eth_add_crc32(dev->read_packet); @@@@ -1431,8 +1449,10 @@@@ int eth_host_devices(int used, int max, int eth_devices(int max, ETH_LIST* list) { +#ifndef DONT_USE_PCAP_FINDALLDEVS pcap_if_t* alldevs; pcap_if_t* dev; +#endif int i = 0; char errbuf[PCAP_ERRBUF_SIZE]; @ 1.5 log @Update simh to 3.3.0. Too many new features and bug fixes to list here. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.4 2003/05/31 16:10:53 thorpej Exp $ d3 1 a3 1 --- sim_ether.c.orig 2004-03-31 13:38:58.000000000 +0100 d5 2 a6 1 @@@@ -830,6 +830,15 @@@@ void eth_callback(u_char* info, const st a8 1 d18 2 a19 1 eth_packet_trace (dev, tmp_packet.msg, tmp_packet.len, "rcvqd"); d21 2 a22 2 pthread_mutex_lock (&dev->lock); @@@@ -840,6 +849,15 @@@@ void eth_callback(u_char* info, const st a24 1 d31 1 a31 1 + memset(dev->read_packet->msg + header->len, 0, 60 - header->len); d33 3 a35 2 + eth_packet_trace (dev, dev->read_packet->msg, dev->read_packet->len, "reading"); d37 1 a37 2 /* call optional read callback function */ @@@@ -1080,8 +1098,10 @@@@ int eth_host_devices(int used, int max, @ 1.4 log @Update to 2.10.4. Change summary: 15-Nov-02: SCP and libraries: * Added Telnet console support * Removed VT emulation support * Added support for statically buffered devices * Added HELP * Fixed bugs in set_logon, ssh_break (found by David Hittner) * Added VMS file optimization (from Robert Alan Byer) * Added quiet mode, DO with parameters, GUI interface, extensible commands (from Brian Knittel) * Added sim_os_sleep, renamed sim_poll_kbd, sim_putchar * Modified calling sequence for boot routines * Modified save file format to save device and unit flags (note: RESTORing save files from previous versions will produce errors) All magtapes: Added support for end-of-medium All DECtapes: Added support for RT11 image file format PDP-1: * Added DECtape support * Added device enable/disable support PDP-8: Added RX28 support PDP-10: * Added variable vector support * Added SHOW CPU IOSPACE command * Added RX211 support PDP-11: * Added variable vector support * Added SHOW CPU IOSPACE command * Added RX211, KW11P, and TMSCP tape support * Added support for up to four RQDX3 MSCP disk controllers * Added support for variable CSR addressing to device bootstraps * Added automatic disabling of Unibus devices in Qbus configurations * Abstracted paper tape reader for code sharing * Fixed TS11/TSV05 bugs * Added latent support for Ethernet and autoconfigure VAX: * Added TMSCP tape support * Added support for up to four RQDX3 MSCP disk controllers * Added support to attach NVR to a file * Added automatic load of bootstrap code file * Added variable vector support * Added SHOW CPU IOSPACE command * Fixed TS11/TSV05 bugs * Added latent support for Ethernet and autoconfigure IBM 1620: first release Altair Z80: added hard drive support IBM 1401: fixed bug in load mode magtape read 21-Nov-02: PDP-1 * Changed typewriter to half duplex, fixed shift control (found by Derek Peschel) PDP-10 * Fixed bug in tape boot (reported by Michael Thompson) * Fixed bug in tape read (reported by Harris Newman) 18-Jan-03: SCP and libraries * Added dynamic memory size support in RESTORE * Added EValuate command * Added ! (OS shell) command (from Mark Pizzolato) * Added BREAK support to Telnet routines (from Mark Pizzolato) * Fixed IAC+IAC processing bugs (from Mark Pizzolato) * Added active connect routines for HP interprocessor link * Fixed bug in Windows stack startup/shutdown PDP-1: added Type 24 serial drum PDP-4: added Type 24 serial drum PDP-11 * Fixed intermittent read problem in TMSCP tape emulator * Changed terminal mode default to 7-bit (for early UNIX) * Fixed bug in XQ chained mode processing (from by Mark Pizzolato) * Improved XQ performance (from Mark Pizzolato) VAX: added console halt capability (from Mark Pizzolato) HP2100 * Added IOP support to 21MX * Added Access interprocessor link Interdata: first release SDS 940: first release Terminals and multiplexors: added BREAK support 06-Feb-03: SCP: added VMS support for ! (from Mark Pizzolato) PDP-11: changed R, added SP to track current register set and stack pointer PDP-18b: * Fixed RF09/RF15 IOT decoding and address overrun logic (found by Hans Pufal) * Modified RF09/RF15 to support variable sizes and autosizing * Fixed RP15/RP02 IOT decoding and command initiation * Added RB09 fixed head disk for the PDP-9 * Added LP09 line printer for the PDP-9 and PDP-15 PDP-8: modified DF32 and RF08 to support variable sizes and autosizing Nova: modified Novadisk to support variable sizes and autosizing Interdata 16b CPU: fixed bug in SETM, SETMR (found by Mark Pizzolato) HP2100: * Fixed last cycle bug in DMA output (found by Mike Gemeny) * Modified interprocessor link to be full duplex (found by Mike Gemeny) 24-Feb-03: SCP: * Added .ini startup capability * Added multiple breakpoint actions * Added multiple switch evaluation points in command lines * Added magtape support library * Fixed bug in multiword deposit to files Nova: fixed autosizing algorithm in Nova fixed head disk PDP-8: * Fixed autosizing algorithm in DF32, RF08, and RX28 * Fixed beginning of tape error handling in TM8E PDP-11/VAX: * Added user-defined drive type in RQDX3 and TQK50 * Fixed queue ordering problem in RQDX3 and TQK50 * Fixed interrupt vector calculation in RQDX3 and TQK50 * Fixed overly restrictive test for bad modifiers in TQK50 * Fixed autosizing algorithm in RX211 18B PDP's: * Fixed three EAE bugs (found by Hans Pufal) * Fixed FMTASC macro problem (found by Hans Pufal) * Removed extra bit from RF15 address register * Fixed autosizing algorithm in RF15 * Fixed TC59 interrupt handling, BOT error handling Interdata: * Fixed DP and MSM handling of cylinder overflow on writes * Fixed magtape to stop selector channel on end-of-file or other read error * Fixed precision clock autocalibration for Unix V7 * Added capability to boot from DP fixed platter * Added SHOW SELCH n command * Changed TTP default to 7B (for Unix) * Added relative addressing to symbolic debugger All line frequency clocks: added SET 50HZ/60HZ to select line frequency All DEC consoles: added SET TTI CTRL-C for Windows VC++ ^C problem All magtapes: revised to use magtape library @ text @d1 1 a1 1 $NetBSD$ d3 19 a21 4 --- sim_ether.c.orig 2003-01-16 09:45:04.000000000 -0800 +++ sim_ether.c 2003-05-31 08:51:54.000000000 -0700 @@@@ -383,6 +383,14 @@@@ /* set data in passed read packet */ d24 1 d33 14 a47 2 #ifdef ETH_DEBUG eth_packet_trace (dev->read_packet, "reading"); @ 1.3 log @If we receive a packet shorter than 60 bytes from the bpf (this can happen for short packets from local host) pad it to 60 bytes. @ text @d1 1 a1 1 $NetBSD: patch-aa,v 1.4 2002/10/19 21:38:10 thorpej Exp $ d3 14 a16 14 --- sim_ether.c.orig Tue Oct 22 16:34:16 2002 +++ sim_ether.c Sat Jan 18 18:25:37 2003 @@@@ -256,6 +256,14 @@@@ /* set data in passed read packet */ dev->read_packet->len = header->len; memcpy(dev->read_packet->msg, data, header->len); + /* + * Pad packet to minimum ethernet len, in case if comes from the local + * host. + */ + if (header->len <60) { + dev->read_packet->len = 60; + memset(dev->read_packet->msg + header->len, 0, 60 - header->len); + } d18 2 a19 2 #ifdef _DEBUG eth_packet_trace (dev->read_packet, "reading"); @ 1.2 log @Update the DELQA module to beta5. Changes: 22-Oct-02 DTH Added all_multicast and promiscuous support 21-Oct-02 DTH Added write buffer max size check (code by Jason Thorpe) Corrected copyright again Implemented NXM testing and recovery 22-Oct-02 DTH Added all_multicast and promiscuous support Fixed not attached behavior 21-Oct-02 DTH Added NetBSD code from Jason Thorpe Patched buffer size to make sure entire packet is read in Made 'ethX' check characters passed as well as length Corrected copyright again Bump revision to nb2. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.1 2002/10/19 21:38:10 thorpej Exp $ d3 13 a15 123 --- sim_ether.c.orig Sat Oct 19 14:26:01 2002 +++ sim_ether.c Sat Oct 19 14:26:10 2002 @@@@ -70,6 +70,7 @@@@ msg, dst, src, *proto, packet->len); } +#ifndef __NetBSD__ char* eth_getname(int number, char* name) { #define ETH_SUPPORTED_DEVICES 10 @@@@ -80,6 +81,7 @@@@ strcpy(name, list[number].name); return name; } +#endif /* ! __NetBSD__ */ void eth_zero(ETH_DEV* dev) { @@@@ -89,7 +91,7 @@@@ /* First, all the non-implemented versions */ -#if !defined (WIN32) && !defined(linux) +#if !defined (WIN32) && !defined(linux) && !defined(__NetBSD__) t_stat eth_open (ETH_DEV* dev, char* name) {return SCPE_NOFNC;} t_stat eth_close (ETH_DEV* dev) @@@@ -110,9 +112,13 @@@@ #ifdef WIN32 #include #endif /*WIN32*/ -#ifdef linux +#ifdef __NetBSD__ +#include +#include +#endif /* __NetBSD__ */ +#if defined(linux) || defined(__NetBSD__) #include -#endif /*linux*/ +#endif /*linux || __NetBSD__*/ t_stat eth_open(ETH_DEV* dev, char* name) { @@@@ -124,22 +130,34 @@@@ /* initialize device */ eth_zero(dev); +#ifndef __NetBSD__ /* translate name of type "ethX" */ if ((strlen(name) == 4) && isdigit(name[3])) { num = atoi(&name[3]); savname = eth_getname(num, temp); } +#endif /* ! __NetBSD__ */ /* attempt to connect device */ - dev->handle = (void*) pcap_open_live(savname, BUFSIZ, ETH_PROMISC, /*ETH_TIMEOUT*/-1, errbuf); + dev->handle = (void*) pcap_open_live(savname, ETH_MAX_PACKET, ETH_PROMISC, /*ETH_TIMEOUT*/-1, errbuf); - if (!dev->handle) return SCPE_OPENERR; /* can't open device */ + if (!dev->handle) { + printf("pcap_open_live: %s\n", errbuf); + return SCPE_OPENERR; /* can't open device */ + } /* save name of device */ dev->name = malloc(strlen(savname)+1); strcpy(dev->name, savname); -#ifdef linux +#ifdef __NetBSD__ + /* tell the kernel that the header is fully-formed when it gets it. this + is required in order to fake the src address. */ + i = 1; + ioctl(pcap_fileno(dev->handle), BIOCSHDRCMPLT, &i); +#endif /* __NetBSD__ */ + +#if defined(linux) || defined(__NetBSD__) /* set file non-blocking */ fcntl(pcap_fileno(dev->handle), F_SETFL, fcntl(pcap_fileno(dev->handle), F_GETFL, 0) | O_NONBLOCK); #endif /*linux*/ @@@@ -373,4 +391,53 @@@@ #endif /*linux*/ +#ifdef __NetBSD__ + +#include +#include +#include +#include +#include +#include + +int pcap_sendpacket(pcap_t* handle, u_char* msg, int len) +{ + return (write(pcap_fileno(handle), msg, len) == len)?0:-1; +} + +int PacketGetAdapterNames(char* buffer, int* size) +{ + const struct sockaddr_dl *sdl; + struct ifaddrs *ifap, *ifa; + char *p; + int ptr = 0; + + if (getifaddrs(&ifap) != 0) { + *size = 0; + return (0); + } + + p = NULL; + for (ifa = ifap; ifa; ifa = ifa->ifa_next) { + if (ifa->ifa_addr->sa_family != AF_LINK) + continue; + if (p && strcmp(p, ifa->ifa_name) == 0) + continue; + sdl = (const struct sockaddr_dl *) ifa->ifa_addr; + if (sdl->sdl_type != IFT_ETHER) + continue; + + strcpy(buffer+ptr, ifa->ifa_name); + ptr += strlen(ifa->ifa_name)+1; a16 9 + + freeifaddrs(ifap); + + buffer[ptr++] = '\0'; + buffer[ptr++] = '\0'; + *size = ptr; + + return (ptr); +} d18 2 a19 1 +#endif /* __NetBSD__ */ @ 1.1 log @Add David Hittner's DELQA/DEQNA Ethernet module for SIMH (PDP11 and VAX). Patches for the sim_ether module to support NetBSD, and a bug fix to the XQ module from me (both patches sent to author). Bump package revision to nb1. NOTE: To work, this requires a patch to libpcap recently posted to tech-net. @ text @d1 1 a1 1 $NetBSD$ @