And among the changes …
scp.c:
- added *nix READLINE support (Mark Pizzolato)
- fixed handling of DO with no arguments (Dave Bryan)
- fixed “SHOW DEVICE” with only one enabled unit (Dave Bryan)
- clarified some help messages (Mark Pizzolato)
- added “SHOW SHOW” and “SHOW <dev> SHOW” commands (Mark Pizzolato)
- fixed bug in deposit stride for numeric input (John Dundas)
sim_console.c
- added support for BREAK key on Windows (Mark Pizzolato)
sim_ether.c
- major revision (Dave Hittner and Mark Pizzolato)
- fixed array overrun which caused SEGFAULT on hosts with many devices which libpcap can access.
- fixed duplicate MAC address detection to work reliably on switch connected LANs
sim_tmxr.c:
- made telnet option negotiation more reliable, VAX simulator now works with PuTTY as console (Mark Pizzolato)
h316_cpu.c:
- fixed bugs in MPY, DIV introduced in 3.8-1 (from Theo Engel)
- fixed bugs in double precision, normalization, SC (from Adrian Wise)
- fixed XR behavior (from Adrian Wise)
hp2100 all peripherals (Dave Bryan):
- Changed I/O signal handlers for newly revised signal model
- Deprecated DEVNO modifier in favor of SC
hp2100_cpu.c (Dave Bryan):
- Minor speedup in “is_mapped”
- Added casts to cpu_mod, dmasio, dmapio, cpu_reset, dma_reset
- Fixed I/O return status bug for DMA cycles
- Failed I/O cycles now stop on failing instruction
- Revised DMA for new multi-card paradigm
- Consolidated DMA reset routines
- DMA channels renamed from 0,1 to 1,2 to match documentation
- Changed I/O instructions, handlers, and DMA for revised signal model
- Changed I/O dispatch table to use DIB pointers
- Removed DMA latency counter
- Fixed DMA requests to enable stealing every cycle
- Fixed DMA priority for channel 1 over channel 2
- Corrected comments for “cpu_set_idle”
hp2100_cpu.h:
- Changed declarations for VMS compiler
hp2100_cpu0.c (Dave Bryan):
- Removed DS note regarding PIF card (is now implemented)
hp2100_cpu4.c (Dave Bryan):
- Added OPSIZE casts to fp_accum calls in .FPWR/.TPWR
hp2100_cpu5.c (Dave Bryan):
- Added sign extension for dim count in “cpu_ema_resolve”
- Eliminated unused variable in “cpu_ema_vset”
hp2100_cpu6.c (Dave Bryan):
- DMA channels renamed from 0,1 to 1,2 to match documentation
hp2100_cpu7.c (Dave Bryan):
- Corrected “opsize” parameter type in vis_abs
hp2100_defs.h (Dave Bryan):
- Added hp_setsc, hp_showsc functions to support SC modifier
- DMA channels renamed from 0,1 to 1,2 to match documentation
- Revised I/O signal enum values for concurrent signals
- Revised I/O macros for new signal handling
- Added DA and DC device select code assignments
hp2100_di.c, hp2100_di.h (Dave Bryan):
- Implemented 12821A HP-IB Disc Interface
hp2100_di_da.c (Dave Bryan):
- Implemented 7906H/20H/25H ICD disc drives
hp2100_dp.c (Dave Bryan):
- Added CNTLR_TYPE cast to dp_settype
hp2100_ds.c (Dave Bryan):
- Rewritten to use the MAC/ICD disc controller library
- ioIOO now notifies controller service of parameter output
- Corrected SRQ generation and FIFO under/overrun detection
- Corrected Clear command to conform to the hardware
- Fixed Request Status to return Unit Unavailable if illegal
- Seek and Cold Load Read now Seek Check if seek in progress
- Remodeled command wait for seek completion
- Corrected status returns for disabled drive, auto-seek beyond drive limits, Request Sector Address and Wakeup with invalid or offline unit
- Address verification reenabled if auto-seek during
- Read Without Verify
hp2100_fp1.c (Dave Bryan):
- Added missing precision on constant “one” in fp_trun
- Completed the comments for divide; no code changes
hp2100_ipl.c (Dave Bryan):
- Added CARD_INDEX casts to dib.card_index
- A failed STC may now be retried
- Consolidated reporting of consecutive CRS signals
- Revised for new multi-card paradigm
hp2100_lps.c (Dave Bryan):
- Revised detection of CLC at last DMA cycle
- Corrected 12566B (DIAG mode) jumper settings
hp2100_ms.c (Dave Bryan):
- Added CNTLR_TYPE cast to ms_settype
hp2100_mt.c (Dave Bryan):
- Removed redundant MTAB_VUN from “format” MTAB entry
- Fixed command scanning error in mtcio ioIOO handler
hp2100_stddev.c (Dave Bryan):
- Add TBG as a logical name for the CLK device
hp2100_sys.c (Dave Bryan):
- Deprecated DEVNO in favor of SC
- Added hp_setsc, hp_showsc functions to support SC modifier
- Added DA and dummy DC devices
- DMA channels renamed from 0,1 to 1,2 to match documentation
- Changed DIB access for revised signal model
hp_disclib.c, hp_disclib.h (Dave Bryan)
- Created MAC/ICD disc controller library
i1401_cd.c:
- fixed read stacker operation in column binary mode
- fixed punch stacker operation (Van Snyder)
id_pas.c:
- fixed TT_GET_MODE test to use TTUF_MODE_x (Michael Bloom)
- revised to use clock coscheduling
id_tt.c, id_ttc.p:
- revised to use clock coscheduling
id_uvc.c:
- added clock coscheduling routine
1401_cpu.c:
- reverted multiple tape indicator implementation
- fixed EOT indicator test not to clear indicator (Van Snyder)
- fixed divide not to clear word marks in quotient (Van Snyder)
- revised divide algorithm (Van Snyder)
i1401_mt.c:
- reverted multiple tape indicator implementation
- fixed END indicator test not to clear indicator (Van Snyder)
- fixed backspace over tapemark not to set EOR (Van Snyder)
- added no rewind option (Van Snyder)
i1401_sys.c:
- fixed misuse of & instead of && in decode (Peter Schorn)
pdp1_cpu.c:
- fixed misuse of & instead of && in Ea_ch (Michael Bloom)
pdp1_stddev.c:
- fixed unitialized variable in tty output service (Michael Bloom)
pdp10_fe.c:
- revised to use clock coscheduling
pdp11_defs.h:
- fixed priority of PIRQ vs IO; added INT_INTERNALn
pdp11_io.c:
- fixed Qbus interrupts to treat all IO devices (except clock) as BR4
- fixed order of int_internal (Jordi Guillaumes i Pons)
ppd11_rf.c
- fixed bug in updating mem addr extension (Peter Schorn)
pdp11_rk.c:
- fixed bug in read header (Walter F Mueller)
pdp11_rl.c:
- added debug support
pdp11_rq.c:
- added RD32 support
pdp11_tq.c: (Mark Pizzolato)
- set UNIT_SXC flag when a tape mark is encountered during forward motion read operations
- fixed logic which clears UNIT_SXC to check command modifier
- added CMF_WR flag to tq_cmf entry for OP_WTM
- made non-immediate rewind positioning operations take 2 seconds
- added UNIT_IDLE flag to tq units.
- fixed debug output of tape file positions when they are 64b
- added more debug output after positioning operations
- added textual display of the command being performed
- fixed comments about register addresses
pdp11_ts.c:
- fixed t_addr printouts for 64b big-endian systems (Mark Pizzolato)
pdp11_tu.c:
- fixed t_addr printouts for 64b big-endian systems (Mark Pizzolato)
pdp11_vh.c: (Mark Pizzolato)
- fixed SET VH LINES=n to correctly adjust the number of lines available to be 8, 16, 24, or 32.
- fixed performance issue avoiding redundant polling
pdp11_xq.c: (Mark Pizzolato)
- Fixed missing information from save/restore which caused operations to not complete correctly after a restore until the OS reset the controller.
- Added address conflict check during attach.
- Fixed loopback processing to correctly handle forward packets.
- Fixed interrupt dispatch issue which caused delivered packets (in and out) to sometimes not interrupt the CPU after processing.
- Fixed the SCP visibile SA registers to always display the ROM mac address, even after it is changed by SET XQ MAC=.
- Added changes so that the Console DELQA diagnostic (>>>TEST 82)Â will succeed.
- Added DELQA-T (aka DELQA Plus) device emulation support.
- Added dropped frame statistics to record when the receiver discards received packets due to the receiver being disabled, or due to the XQ device’s packet receive queue being full.
- Fixed bug in receive processing when we’re not polling. This could cause receive processing to never be activated again if we don’t read all available packets via eth_read each time we get the opportunity.
- Added the ability to Coalesce received packet interrupts. This is enabled by SET XQ POLL=DELAY=nnn where nnn is a number of microseconds to delay the triggering of an interrupt when a packet is received.
- Added SET XQ POLL=DISABLE (aka SET XQ POLL=0) to operate without polling for packet read completion.
- Changed the sanity and id timer mechanisms to use a separate timer unit so that transmit and recieve activities can be dealt with by the normal xq_svc routine.
- Dynamically determine the timer polling rate based on the calibrated tmr_poll and clk_tps values of the simulator.
- Enabled the SET XQ POLL to be meaningful if the simulator currently doesn’t support idling.
- Changed xq_debug_setup to use sim_debug instead of printf so that all debug output goes to the same place.
- Restored the call to xq_svc after all successful calls to eth_write to allow receive processing to happen before the next event service time. This must have been inadvertently commented out while other things were being tested.
pdp11_xu.c: (Mark Pizzolato)
- Added SHOW XU FILTERS modifier (Dave Hittner)
- Corrected SELFTEST command, enabling use by VMS 3.7, VMS 4.7, and Ultrix 1.1 (Dave Hittner)
- Added address conflict check during attach.
- Added loopback processing support
- Fixed the fact that no broadcast packets were received by the DEUNA
- Fixed transmitted packets to have the correct source MAC address.
- Fixed incorrect address filter setting calling eth_filter().
pdp18b_stddev.c:
- added clock coscheduling
- revised TTI to use clock coscheduling and to fix perpetual CAF bug
pdp18b_ttx.c:
- revised to use clock coscheduling
pdp8_clk.c:
- added clock coscheduling
pdp8_fpp.c: (Rick Murphy)
- many bug fixes; now functional
pdp8_tt.c:
- revised to use clock coscheduling and to fix perpetual CAF bug
pdp8_ttx.c:
- revised to use clock cosheduling
pdp8_sys.c:
- added link to FPP
pdp8_td.c:
- fixed SDLC to clear AC (Dave Gesswein)
sds_mt.c:
- fixed bug in scan function decode (Peter Schorn)
vax_cpu.c:
- revised idle design (Mark Pizzolato)
- fixed bug in SET CPU IDLE
- fixed failure to clear PSL<tp> in BPT, XFC
vax_cpu1.c:
- revised idle design Mark Pizzolato)
- added VEC_QMODE test in interrupt handler
vax_fpa.c:
- fixed integer overflow bug in EMODx (Camiel Vanderhoeven)
- fixed POLYx normalizing before add mask bug (Camiel Vanderhoeven)
- fixed missing arguments in 32b floating add (Mark Pizzolato)
vax_octa.c (Camiel Vanderhoeven)
- fixed integer overflow bug in EMODH
- fixed POLYH normalizing before add mask bug
vax_stddev.c:
- revised to use clock coscheduling
vax_syscm.c:
- fixed t_addr printouts for 64b big-endian systems (Mark Pizzolato)
vax_sysdev.c:
- added power clear call to boot routine (Mark Pizzolato)
vax780_sbi.c:
- added AUTORESTART switch support (Mark Pizzolato)
vax780_stddev.c
- added REBOOT support (Mark Pizzolato)
- revised to use clock coscheduling
vaxmod_def.h
- moved all Qbus devices to BR4; deleted RP definitions
As always you can download it from the homepage, or from sourceforge.