1
0
mirror of https://github.com/simh/simh.git synced 2026-04-13 23:44:44 +00:00

Merge with v3.9-0-rc2 first pass

This commit is contained in:
Mark Pizzolato
2012-03-24 19:46:37 -07:00
parent 6d11b3bd25
commit 6e813b8364
104 changed files with 415 additions and 348 deletions

View File

@@ -29,12 +29,12 @@
Fixed bug in DIVx (LntDstr calculation)
30-May-06 RMS Added interrupt tests to character instructions
Added 11/44 stack probe test to MOVCx (only)
22-May-06 RMS Fixed bug in decode table (found by John Dundas)
Fixed bug in ASHP (reported by John Dundas)
22-May-06 RMS Fixed bug in decode table (John Dundas)
Fixed bug in ASHP (John Dundas)
Fixed bug in write decimal string with mmgt enabled
Fixed bug in 0-length strings in multiply/divide
16-Sep-04 RMS Fixed bug in CMPP/N of negative strings
17-Oct-02 RMS Fixed compiler warning (found by Hans Pufal)
17-Oct-02 RMS Fixed compiler warning (Hans Pufal)
08-Oct-02 RMS Fixed macro definitions
The commercial instruction set consists of three instruction formats:

View File

@@ -1,6 +1,6 @@
/* pdp11_cpu.c: PDP-11 CPU simulator
Copyright (c) 1993-2008, Robert M Supnik
Copyright (c) 1993-2012, Robert M Supnik
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
@@ -25,19 +25,20 @@
cpu PDP-11 CPU
29-Dec-08 RMS Fixed failure to clear cpu_bme on RESET (found by Walter Mueller)
22-Apr-08 RMS Fixed MMR0 treatment in RESET (found by Walter Mueller)
02-Feb-08 RMS Fixed DMA memory address limit test (found by John Dundas)
19-Mar-12 RMS Fixed declaration of sim_switches (Mark Pizzolato)
29-Dec-08 RMS Fixed failure to clear cpu_bme on RESET (Walter Mueller)
22-Apr-08 RMS Fixed MMR0 treatment in RESET (Walter Mueller)
02-Feb-08 RMS Fixed DMA memory address limit test (John Dundas)
28-Apr-07 RMS Removed clock initialization
27-Oct-06 RMS Added idle support
18-Oct-06 RMS Fixed bug in ASH -32 C value
24-May-06 RMS Added instruction history
03-May-06 RMS Fixed XOR operand fetch order for 11/70-style systems
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
22-Sep-05 RMS Fixed declarations (Sterling Garwood)
16-Aug-05 RMS Fixed C++ declaration and cast problems
19-May-05 RMS Replaced WAIT clock queue check with API call
19-Jan-05 RMS Fixed bug(s) in RESET for 11/70 (reported by Tim Chapman)
22-Dec-04 RMS Fixed WAIT to work in all modes (from John Dundas)
19-Jan-05 RMS Fixed bug(s) in RESET for 11/70 (Tim Chapman)
22-Dec-04 RMS Fixed WAIT to work in all modes (John Dundas)
02-Oct-04 RMS Added model emulation
25-Jan-04 RMS Removed local debug logging support
29-Dec-03 RMS Formalized 18b Qbus support
@@ -47,19 +48,19 @@
01-Feb-03 RMS Changed R display to follow PSW<rs>, added SP display
19-Jan-03 RMS Changed mode definitions for Apple Dev Kit conflict
05-Jan-03 RMS Added memory size restore support
17-Oct-02 RMS Fixed bug in examine/deposit (found by Hans Pufal)
17-Oct-02 RMS Fixed bug in examine/deposit (Hans Pufal)
08-Oct-02 RMS Revised to build dib_tab dynamically
Added SHOW IOSPACE
09-Sep-02 RMS Added KW11P support
14-Jul-02 RMS Fixed bug in MMR0 error status load
03-Jun-02 RMS Fixed relocation add overflow, added PS<15:12> = 1111
special case logic to MFPI and removed it from MTPI
(found by John Dundas)
29-Apr-02 RMS More fixes to DIV and ASH/ASHC (found by John Dundas)
(John Dundas)
29-Apr-02 RMS More fixes to DIV and ASH/ASHC (John Dundas)
28-Apr-02 RMS Fixed bugs in illegal instruction 000010 and in
write-only memory pages (found by Wolfgang Helbig)
write-only memory pages (Wolfgang Helbig)
21-Apr-02 RMS Fixed bugs in DIV by zero, DIV overflow, TSTSET, RTS,
ASHC -32, and red zone trap (found by John Dundas)
ASHC -32, and red zone trap (John Dundas)
04-Mar-02 RMS Changed double operand evaluation order for M+
23-Feb-02 RMS Fixed bug in MAINT, CPUERR, MEMERR read
28-Jan-02 RMS Revised for multiple timers; fixed calc_MMR1 macros
@@ -81,7 +82,7 @@
05-Apr-01 RMS Added TS11/TSV05 support
05-Mar-01 RMS Added clock calibration support
11-Feb-01 RMS Added DECtape support
25-Jan-01 RMS Fixed 4M memory definition (found by Eric Smith)
25-Jan-01 RMS Fixed 4M memory definition (Eric Smith)
14-Apr-99 RMS Changed t_addr to unsigned
18-Aug-98 RMS Added CIS support
09-May-98 RMS Fixed bug in DIV overflow test

View File

@@ -27,12 +27,12 @@
20-May-08 RMS Added JCSR default for KDJ11B, KDJ11E
22-Apr-08 RMS Fixed write behavior of 11/70 MBRK, LOSIZE, HISIZE
(found by Walter Mueller)
(Walter Mueller)
29-Apr-07 RMS Don't run bus setup routine during RESTORE
30-Aug-05 RMS Added additional 11/60 registers
16-Aug-05 RMS Fixed C++ declaration and cast problems
15-Feb-05 RMS Fixed bug in SHOW MODEL (from Sergey Okhapkin)
19-Jan-05 RMS Added variable SYSID, MBRK write (from Tim Chapman)
15-Feb-05 RMS Fixed bug in SHOW MODEL (Sergey Okhapkin)
19-Jan-05 RMS Added variable SYSID, MBRK write (Tim Chapman)
This module includes CPU- and system-specific registers, such as the Unibus
map and control registers on 22b Unibus systems, the board registers for the

View File

@@ -25,7 +25,7 @@
dz DZ11 terminal multiplexor
29-Dec-08 RMS Added MTAB_NC to SET LOG command (found by Walter Mueller)
29-Dec-08 RMS Added MTAB_NC to SET LOG command (Walter Mueller)
19-Nov-08 RMS Revised for common TMXR show routines
18-Jun-07 RMS Added UNIT_IDLE flag
29-Oct-06 RMS Synced poll and clock

View File

@@ -23,7 +23,7 @@
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from Robert M Supnik.
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
22-Sep-05 RMS Fixed declarations (Sterling Garwood)
04-Oct-04 RMS Added FIS instructions
19-Jan-03 RMS Changed mode definitions for Apple Dev Kit conflict
08-Oct-02 RMS Fixed macro definitions

View File

@@ -1,6 +1,6 @@
/* pdp11_hk.c - RK611/RK06/RK07 disk controller
Copyright (c) 1993-2008, Robert M Supnik
Copyright (c) 1993-2012, Robert M Supnik
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
@@ -25,6 +25,7 @@
hk RK611/RK06/RK07 disk
19-Mar-12 RMS Fixed declaration of cpu_opt (Mark Pizzolato)
29-Apr-07 RMS NOP and DCLR (at least) do not check drive type
MR2 and MR3 only updated on NOP
17-Nov-05 RMS Removed unused variable

View File

@@ -1,6 +1,6 @@
/* pdp11_io.c: PDP-11 I/O simulator
Copyright (c) 1993-2011, Robert M Supnik
Copyright (c) 1993-2012, Robert M Supnik
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
@@ -23,19 +23,20 @@
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from Robert M Supnik.
19-Mar-12 RMS Fixed declaration of cpu_opt (Mark Pizzolato)
12-Dec-11 RMS Fixed Qbus interrupts to treat all IO devices as BR4
19-Nov-08 RMS Moved I/O support routines to I/O library
16-May-08 RMS Added multiple DC11 support
Renamed DL11 in autoconfigure
02-Feb-08 RMS Fixed DMA memory address limit test (found by John Dundas)
02-Feb-08 RMS Fixed DMA memory address limit test (John Dundas)
06-Jul-06 RMS Added multiple KL11/DL11 support
15-Oct-05 RMS Fixed bug in autoconfiguration (missing XU)
25-Jul-05 RMS Revised autoconfiguration algorithm and interface
30-Sep-04 RMS Revised Unibus interface
28-May-04 RMS Revised I/O dispatching (from John Dundas)
28-May-04 RMS Revised I/O dispatching (John Dundas)
25-Jan-04 RMS Removed local debug logging support
21-Dec-03 RMS Fixed bug in autoconfigure vector assignment; added controls
21-Nov-03 RMS Added check for interrupt slot conflict (found by Dave Hittner)
21-Nov-03 RMS Added check for interrupt slot conflict (Dave Hittner)
12-Mar-03 RMS Added logical name support
08-Oct-02 RMS Trimmed I/O bus addresses
Added support for dynamic tables

View File

@@ -1,6 +1,6 @@
/* pdp11_rf.c: RF11 fixed head disk simulator
Copyright (c) 2006-2008, Robert M Supnik
Copyright (c) 2006-2012, Robert M Supnik
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
@@ -25,7 +25,8 @@
rf RF11 fixed head disk
25-Dec-06 RMS Fixed bug in unit mask (found by John Dundas)
19-Mar-12 RMS Fixed bug in updating mem addr extension (Peter Schorn)
25-Dec-06 RMS Fixed bug in unit mask (John Dundas)
26-Jun-06 RMS Cloned from RF08 simulator
The RF11 is a head-per-track disk. To minimize overhead, the entire RF11
@@ -377,7 +378,7 @@ do {
} while ((rf_wc != 0) && (rf_burst != 0)); /* brk if wc, no brst */
rf_da = da & DMASK; /* split da */
rf_dae = (rf_dae & ~RFDAE_DAE) | ((rf_da >> 16) && RFDAE_DAE);
rf_dae = (rf_dae & ~RFDAE_DAE) | ((rf_da >> 16) & RFDAE_DAE);
rf_cma = ma & DMASK; /* split ma */
rf_cs = (rf_cs & ~RFCS_MEX) | ((ma >> (16 - RFCS_V_MEX)) & RFCS_MEX);
if ((rf_wc != 0) && ((rf_cs & RFCS_ERR) == 0)) /* more to do? */

View File

@@ -1,6 +1,6 @@
/* pdp11_rh.c: PDP-11 Massbus adapter simulator
Copyright (c) 2005-2008, Robert M Supnik
Copyright (c) 2005-2012, Robert M Supnik
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
@@ -25,7 +25,8 @@
rha, rhb RH11/RH70 Massbus adapter
02-Feb-08 RMS Fixed DMA memory address limit test (found by John Dundas)
19-Mar-12 RMS Fixed declaration of cpu_opt (Mark Pizzolato)
02-Feb-08 RMS Fixed DMA memory address limit test (John Dundas)
17-May-07 RMS Moved CS1 drive enable to devices
21-Nov-05 RMS Added enable/disable routine
07-Jul-05 RMS Removed extraneous externs

View File

@@ -25,7 +25,7 @@
rk RK11/RKV11/RK05 cartridge disk
20-Mar-09 RMS Fixed bug in read header (from Walter F Mueller)
20-Mar-09 RMS Fixed bug in read header (Walter F Mueller)
16-Aug-05 RMS Fixed C++ declaration and cast problems
07-Jul-05 RMS Removed extraneous externs
30-Sep-04 RMS Revised Unibus interface

View File

@@ -39,7 +39,7 @@
SET RLn ONLINE/OFFLINE
SET RL RLV11/RLV12 (PDP-11 only)
SET RL DEBUG/NODEBUG
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
22-Sep-05 RMS Fixed declarations (Sterling Garwood)
16-Aug-05 RMS Fixed C++ declaration and cast problems
07-Jul-05 RMS Removed extraneous externs
30-Sep-04 RMS Revised Unibus interface

View File

@@ -43,20 +43,20 @@
18-Jun-07 RMS Added UNIT_IDLE flag to timer thread
31-Oct-05 RMS Fixed address width for large files
16-Aug-05 RMS Fixed C++ declaration and cast problems
22-Jul-05 RMS Fixed warning from Solaris C (from Doug Gwyn)
22-Jul-05 RMS Fixed warning from Solaris C (Doug Gwyn)
17-Jan-05 RMS Added more RA and RD disks
31-Oct-04 RMS Added -L switch (LBNs) to RAUSER size specification
01-Oct-04 RMS Revised Unibus interface
Changed to identify as UDA50 in Unibus configurations
Changed width to be 16b in all configurations
Changed default timing for VAX
24-Jul-04 RMS VAX controllers luns start with 0 (from Andreas Cejna)
24-Jul-04 RMS VAX controllers luns start with 0 (Andreas Cejna)
05-Feb-04 RMS Revised for file I/O library
25-Jan-04 RMS Revised for device debug support
12-Jan-04 RMS Fixed bug in interrupt control (found by Tom Evans)
12-Jan-04 RMS Fixed bug in interrupt control (Tom Evans)
07-Oct-03 RMS Fixed problem with multiple RAUSER drives
17-Sep-03 RMS Fixed MB to LBN conversion to be more accurate
11-Jul-03 RMS Fixed bug in user disk size (found by Chaskiel M Grundman)
11-Jul-03 RMS Fixed bug in user disk size (Chaskiel M Grundman)
19-May-03 RMS Revised for new conditional compilation scheme
25-Apr-03 RMS Revised for extended file support
14-Mar-03 RMS Fixed variable size interaction with save/restore
@@ -70,7 +70,7 @@
Fixed status code in HBE error log
Consolidated MSCP/TMSCP header file
New data structures
16-Aug-02 RMS Removed unused variables (found by David Hittner)
16-Aug-02 RMS Removed unused variables (David Hittner)
04-May-02 RMS Fixed bug in polling loop for queued operations
26-Mar-02 RMS Fixed bug, reset routine cleared UF_WPH
09-Mar-02 RMS Adjusted delays for M+ timing bugs

View File

@@ -25,9 +25,9 @@
ry RX211/RXV21/RX02 floppy disk
15-May-06 RMS Fixed bug in autosize attach (reported by David Gesswein)
15-May-06 RMS Fixed bug in autosize attach (David Gesswein)
07-Jul-05 RMS Removed extraneous externs
18-Feb-05 RMS Fixed bug in boot code (reported by Graham Toal)
18-Feb-05 RMS Fixed bug in boot code (Graham Toal)
30-Sep-04 RMS Revised Unibus interface
21-Mar-04 RMS Added VAX support
29-Dec-03 RMS Added RXV21 support

View File

@@ -32,7 +32,7 @@
Added clock coscheduling support
05-Jul-06 RMS Added UC only support for early DOS/RSTS
22-Nov-05 RMS Revised for new terminal processing routines
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
22-Sep-05 RMS Fixed declarations (Sterling Garwood)
07-Jul-05 RMS Removed extraneous externs
11-Oct-04 RMS Added clock model dependencies
28-May-04 RMS Removed SET TTI CTRL-C
@@ -46,7 +46,7 @@
Split DL11 dibs
30-May-02 RMS Widened POS to 32b
26-Jan-02 RMS Revised for multiple timers
09-Jan-02 RMS Fixed bugs in KW11L (found by John Dundas)
09-Jan-02 RMS Fixed bugs in KW11L (John Dundas)
06-Jan-02 RMS Split I/O address routines, revised enable/disable support
29-Nov-01 RMS Added read only unit support
09-Nov-01 RMS Added RQDX3 support

View File

@@ -27,16 +27,16 @@
15-May-08 RMS Added KE11-A, DC11 support
Renamed DL11
04-Feb-08 RMS Modified to allow -A, -B use with 8b devices
25-Jan-08 RMS Added RC11, KG11A support from John Dundas
25-Jan-08 RMS Added RC11, KG11A support (John Dundas)
10-Sep-07 RMS Cleaned up binary loader
20-Dec-06 RMS Added TA11 support
12-Nov-06 RMS Fixed operand order in EIS instructions (found by W.F.J. Mueller)
12-Nov-06 RMS Fixed operand order in EIS instructions (W.F.J. Mueller)
14-Jul-06 RMS Reordered device list
06-Jul-06 RMS Added multiple KL11/DL11 support
26-Jun-06 RMS Added RF11 support
17-May-06 RMS Added CR11/CD11 support (from John Dundas)
17-May-06 RMS Added CR11/CD11 support (John Dundas)
16-Aug-05 RMS Fixed C++ declaration and cast problems
22-Jul-05 RMS Fixed missing , in initializer (from Doug Gwyn)
22-Jul-05 RMS Fixed missing , in initializer (Doug Gwyn)
22-Dec-03 RMS Added second DEUNA/DELUA support
18-Oct-03 RMS Added DECtape off reel message
06-May-03 RMS Added support for second DEQNA/DELQA

View File

@@ -26,7 +26,7 @@
tc TC11/TU56 DECtape
23-Jun-06 RMS Fixed switch conflict in ATTACH
10-Feb-06 RMS READ sets extended data bits in TCST (found by Alan Frisbie)
10-Feb-06 RMS READ sets extended data bits in TCST (Alan Frisbie)
16-Aug-05 RMS Fixed C++ declaration and cast problems
07-Jul-05 RMS Removed extraneous externs
30-Sep-04 RMS Revised Unibus interface

View File

@@ -46,23 +46,22 @@
28-Aug-02 RMS Added end of medium support
30-May-02 RMS Widened POS to 32b
22-Apr-02 RMS Fixed max record length, first block bootstrap
(found by Jonathan Engdahl)
(Jonathan Engdahl)
26-Jan-02 RMS Revised bootstrap to conform to M9312
06-Jan-02 RMS Revised enable/disable support
30-Nov-01 RMS Added read only unit, extended SET/SHOW support
24-Nov-01 RMS Converted UST, POS, FLG to arrays
09-Nov-01 RMS Added bus map support
18-Oct-01 RMS Added stub diagnostic register (found by Thord Nilson)
18-Oct-01 RMS Added stub diagnostic register (Thord Nilson)
07-Sep-01 RMS Revised device disable and interrupt mechanisms
26-Apr-01 RMS Added device enable/disable support
18-Apr-01 RMS Changed to rewind tape before boot
14-Apr-99 RMS Changed t_addr to unsigned
04-Oct-98 RMS V2.4 magtape format
10-May-98 RMS Fixed bug with non-zero unit operation (from Steven Schultz)
09-May-98 RMS Fixed problems in bootstrap (from Steven Schultz)
10-Apr-98 RMS Added 2nd block bootstrap (from John Holden,
University of Sydney)
31-Jul-97 RMS Added bootstrap (from Ethan Dicks, Ohio State)
10-May-98 RMS Fixed bug with non-zero unit operation (Steven Schultz)
09-May-98 RMS Fixed problems in bootstrap (Steven Schultz)
10-Apr-98 RMS Added 2nd block bootstrap (John Holden)
31-Jul-97 RMS Added bootstrap (Ethan Dicks)
22-Jan-97 RMS V2.3 magtape format
18-Jan-97 RMS Fixed double interrupt, error flag bugs
29-Jun-96 RMS Added unit disable support

View File

@@ -49,10 +49,10 @@
16-Feb-06 RMS Revised for new magtape capacity checking
31-Oct-05 RMS Fixed address width for large files
16-Aug-05 RMS Fixed C++ declaration and cast problems
22-Jul-05 RMS Fixed warning from Solaris C (from Doug Gwyn)
22-Jul-05 RMS Fixed warning from Solaris C (Doug Gwyn)
30-Sep-04 RMS Revised Unibus interface
12-Jun-04 RMS Fixed bug in reporting write protect (reported by Lyle Bickley)
18-Apr-04 RMS Fixed TQK70 media ID and model byte (found by Robert Schaffrath)
12-Jun-04 RMS Fixed bug in reporting write protect (Lyle Bickley)
18-Apr-04 RMS Fixed TQK70 media ID and model byte (Robert Schaffrath)
26-Mar-04 RMS Fixed warnings with -std=c99
25-Jan-04 RMS Revised for device debug support
19-May-03 RMS Revised for new conditional compilation scheme
@@ -63,7 +63,7 @@
22-Feb-03 RMS Fixed ordering bug in queue process
Fixed flags table to allow MD_CSE everywhere
09-Jan-03 RMS Fixed bug in transfer end packet status
17-Oct-02 RMS Fixed bug in read reverse (found by Hans Pufal)
17-Oct-02 RMS Fixed bug in read reverse (Hans Pufal)
*/
#if defined (VM_PDP10) /* PDP10 version */

View File

@@ -1,6 +1,6 @@
/* pdp11_ts.c: TS11/TSV05 magnetic tape simulator
Copyright (c) 1993-2010, Robert M Supnik
Copyright (c) 1993-2012, Robert M Supnik
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
@@ -26,7 +26,7 @@
ts TS11/TSV05 magtape
22-May-10 RMS Fixed t_addr printouts for 64b big-endian systems
(found by Mark Pizzolato)
(Mark Pizzolato)
16-Feb-06 RMS Added tape capacity checking
31-Oct-05 RMS Fixed address width for large files
16-Aug-05 RMS Fixed C++ declaration and cast problems
@@ -59,7 +59,7 @@
19-Sep-01 RMS Fixed bug in bootstrap
15-Sep-01 RMS Fixed bug in NXM test
07-Sep-01 RMS Revised device disable and interrupt mechanism
13-Jul-01 RMS Fixed bug in space reverse (found by Peter Schorn)
13-Jul-01 RMS Fixed bug in space reverse (Peter Schorn)
Magnetic tapes are represented as a series of variable 8b records
of the form:

View File

@@ -1,6 +1,6 @@
/* pdp11_tu.c - PDP-11 TM02/TU16 TM03/TU45/TU77 Massbus magnetic tape controller
Copyright (c) 1993-2008, Robert M Supnik
Copyright (c) 1993-2012, Robert M Supnik
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
@@ -27,7 +27,7 @@
18-Apr-11 MP Fixed t_addr printouts for 64b big-endian systems
17-May-07 RMS CS1 DVA resides in device, not MBA
29-Apr-07 RMS Fixed bug in setting FCE on TMK (found by Naoki Hamada)
29-Apr-07 RMS Fixed bug in setting FCE on TMK (Naoki Hamada)
16-Feb-06 RMS Added tape capacity checking
12-Nov-05 RMS Changed default formatter to TM03 (for VMS)
31-Oct-05 RMS Fixed address width for large files

View File

@@ -1,6 +1,6 @@
/* pdp11_vh.c: DHQ11 asynchronous terminal multiplexor simulator
Copyright (c) 2004-2010, John A. Dundas III
Copyright (c) 2004-2012, John A. Dundas III
Portions derived from work by Robert M Supnik
Permission is hereby granted, free of charge, to any person obtaining a