Merge with v3.9-0-rc2 first pass
This commit is contained in:
parent
6d11b3bd25
commit
6e813b8364
104 changed files with 415 additions and 348 deletions
|
@ -1,6 +1,6 @@
|
||||||
/* altair_cpu.c: MITS Altair Intel 8080 CPU simulator
|
/* altair_cpu.c: MITS Altair Intel 8080 CPU simulator
|
||||||
|
|
||||||
Copyright (c) 1997-2005, Charles E. Owen
|
Copyright (c) 1997-2012, Charles E. Owen
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,6 +25,7 @@
|
||||||
|
|
||||||
cpu 8080 CPU
|
cpu 8080 CPU
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed data type for breakpoint variables
|
||||||
08-Oct-02 RMS Tied off spurious compiler warnings
|
08-Oct-02 RMS Tied off spurious compiler warnings
|
||||||
|
|
||||||
The register state for the 8080 CPU is:
|
The register state for the 8080 CPU is:
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
|
|
||||||
14-Jan-08 RMS Added GRI-99 support
|
14-Jan-08 RMS Added GRI-99 support
|
||||||
28-Apr-07 RMS Removed clock initialization
|
28-Apr-07 RMS Removed clock initialization
|
||||||
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
|
22-Sep-05 RMS Fixed declarations (Sterling Garwood)
|
||||||
18-Jul-04 RMS Fixed missing ao_update calls in AX, AY write
|
18-Jul-04 RMS Fixed missing ao_update calls in AX, AY write
|
||||||
17-Jul-04 RMS Revised MSR, EAO based on additional documentation
|
17-Jul-04 RMS Revised MSR, EAO based on additional documentation
|
||||||
14-Mar-03 RMS Fixed bug in SC queue tracking
|
14-Mar-03 RMS Fixed bug in SC queue tracking
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
hsp S42-006 high speed punch
|
hsp S42-006 high speed punch
|
||||||
rtc real time clock
|
rtc real time clock
|
||||||
|
|
||||||
31-May-08 RMS Fixed declarations (found by Peter Schorn)
|
31-May-08 RMS Fixed declarations (Peter Schorn)
|
||||||
30-Sep-06 RMS Fixed handling of non-printable characters in KSR mode
|
30-Sep-06 RMS Fixed handling of non-printable characters in KSR mode
|
||||||
22-Nov-05 RMS Revised for new terminal processing routines
|
22-Nov-05 RMS Revised for new terminal processing routines
|
||||||
29-Dec-03 RMS Added support for console backpressure
|
29-Dec-03 RMS Added support for console backpressure
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
14-Jan-08 RMS Added GRI-99 support
|
14-Jan-08 RMS Added GRI-99 support
|
||||||
18-Oct-02 RMS Fixed bug in symbolic decode (found by Hans Pufal)
|
18-Oct-02 RMS Fixed bug in symbolic decode (Hans Pufal)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "gri_defs.h"
|
#include "gri_defs.h"
|
||||||
|
|
|
@ -25,12 +25,12 @@
|
||||||
|
|
||||||
cpu H316/H516 CPU
|
cpu H316/H516 CPU
|
||||||
|
|
||||||
19-Nov-11 RMS Fixed XR behavior (from Adrian Wise)
|
19-Nov-11 RMS Fixed XR behavior (Adrian Wise)
|
||||||
19-Nov-11 RMS Fixed bugs in double precision, normalization, SC (from Adrian Wise)
|
19-Nov-11 RMS Fixed bugs in double precision, normalization, SC (Adrian Wise)
|
||||||
10-Jan-10 RMS Fixed bugs in LDX, STX introduced in 3.8-1 (from Theo Engel)
|
10-Jan-10 RMS Fixed bugs in LDX, STX introduced in 3.8-1 (Theo Engel)
|
||||||
28-Apr-07 RMS Removed clock initialization
|
28-Apr-07 RMS Removed clock initialization
|
||||||
03-Apr-06 RMS Fixed bugs in LLL, LRL (from Theo Engel)
|
03-Apr-06 RMS Fixed bugs in LLL, LRL (Theo Engel)
|
||||||
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
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
15-Feb-05 RMS Added start button interrupt
|
15-Feb-05 RMS Added start button interrupt
|
||||||
01-Dec-04 RMS Fixed bug in DIV
|
01-Dec-04 RMS Fixed bug in DIV
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* h316_dp.c: Honeywell 4623, 4651, 4720 disk simulator
|
/* h316_dp.c: Honeywell 4623, 4651, 4720 disk simulator
|
||||||
|
|
||||||
Copyright (c) 2003-2008, Robert M. Supnik
|
Copyright (c) 2003-2012, Robert M. Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -27,7 +27,8 @@
|
||||||
4651 disk subsystem
|
4651 disk subsystem
|
||||||
4720 disk subsystem
|
4720 disk subsystem
|
||||||
|
|
||||||
04-Sep-05 RMS Fixed missing return (found by Peter Schorn)
|
19-Mar-12 RMS Fixed declaration of chan_req (Mark Pizzolato)
|
||||||
|
04-Sep-05 RMS Fixed missing return (Peter Schorn)
|
||||||
15-Jul-05 RMS Fixed bug in attach routine
|
15-Jul-05 RMS Fixed bug in attach routine
|
||||||
01-Dec-04 RMS Fixed bug in skip on !seeking
|
01-Dec-04 RMS Fixed bug in skip on !seeking
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* h316_fhd.c: H316/516 fixed head simulator
|
/* h316_fhd.c: H316/516 fixed head simulator
|
||||||
|
|
||||||
Copyright (c) 2003-2008, Robert M. Supnik
|
Copyright (c) 2003-2012, Robert M. Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,7 +25,8 @@
|
||||||
|
|
||||||
fhd 516-4400 fixed head disk
|
fhd 516-4400 fixed head disk
|
||||||
|
|
||||||
15-May-06 RMS Fixed bug in autosize attach (reported by David Gesswein)
|
19-Mar-12 RMS Fixed declaration of chan_req (Mark Pizzolato)
|
||||||
|
15-May-06 RMS Fixed bug in autosize attach (David Gesswein)
|
||||||
04-Jan-04 RMS Changed sim_fsize calling sequence
|
04-Jan-04 RMS Changed sim_fsize calling sequence
|
||||||
|
|
||||||
These head-per-track devices are buffered in memory, to minimize overhead.
|
These head-per-track devices are buffered in memory, to minimize overhead.
|
||||||
|
|
|
@ -25,9 +25,9 @@
|
||||||
|
|
||||||
lpt line printer
|
lpt line printer
|
||||||
|
|
||||||
09-Jun-07 RMS Fixed lost last print line (from Theo Engel)
|
09-Jun-07 RMS Fixed lost last print line (Theo Engel)
|
||||||
19-Jan-06 RMS Added UNIT_TEXT flag
|
19-Jan-06 RMS Added UNIT_TEXT flag
|
||||||
03-Apr-06 RMS Fixed bug in blanks backscanning (from Theo Engel)
|
03-Apr-06 RMS Fixed bug in blanks backscanning (Theo Engel)
|
||||||
01-Dec-04 RMS Fixed bug in DMA/DMC support
|
01-Dec-04 RMS Fixed bug in DMA/DMC support
|
||||||
24-Oct-03 RMS Added DMA/DMC support
|
24-Oct-03 RMS Added DMA/DMC support
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* h316_mt.c: H316/516 magnetic tape simulator
|
/* h316_mt.c: H316/516 magnetic tape simulator
|
||||||
|
|
||||||
Copyright (c) 2003-2008, Robert M. Supnik
|
Copyright (c) 2003-2012, Robert M. Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,10 +25,11 @@
|
||||||
|
|
||||||
mt 516-4100 seven track magnetic tape
|
mt 516-4100 seven track magnetic tape
|
||||||
|
|
||||||
09-Jun-07 RMS Fixed bug in write without stop (from Theo Engel)
|
19-Mar-12 RMS Fixed declaration of chan_req (Mark Pizzolato)
|
||||||
|
09-Jun-07 RMS Fixed bug in write without stop (Theo Engel)
|
||||||
16-Feb-06 RMS Added tape capacity checking
|
16-Feb-06 RMS Added tape capacity checking
|
||||||
26-Aug-05 RMS Revised to use API for write lock check
|
26-Aug-05 RMS Revised to use API for write lock check
|
||||||
08-Feb-05 RMS Fixed error reporting from OCP (found by Philipp Hachtmann)
|
08-Feb-05 RMS Fixed error reporting from OCP (Philipp Hachtmann)
|
||||||
01-Dec-04 RMS Fixed bug in DMA/DMC support
|
01-Dec-04 RMS Fixed bug in DMA/DMC support
|
||||||
|
|
||||||
Magnetic tapes are represented as a series of variable records
|
Magnetic tapes are represented as a series of variable records
|
||||||
|
|
|
@ -28,13 +28,13 @@
|
||||||
tty 316/516-33 teleprinter
|
tty 316/516-33 teleprinter
|
||||||
clk/options 316/516-12 real time clocks/internal options
|
clk/options 316/516-12 real time clocks/internal options
|
||||||
|
|
||||||
09-Jun-07 RMS Fixed bug in clock increment (found by Theo Engel)
|
09-Jun-07 RMS Fixed bug in clock increment (Theo Engel)
|
||||||
30-Sep-06 RMS Fixed handling of non-printable characters in KSR mode
|
30-Sep-06 RMS Fixed handling of non-printable characters in KSR mode
|
||||||
03-Apr-06 RMS Fixed bugs in punch state handling (from Theo Engel)
|
03-Apr-06 RMS Fixed bugs in punch state handling (Theo Engel)
|
||||||
22-Nov-05 RMS Revised for new terminal processing routines
|
22-Nov-05 RMS Revised for new terminal processing routines
|
||||||
05-Feb-05 RMS Fixed bug in OCP '0001 (found by Philipp Hachtmann)
|
05-Feb-05 RMS Fixed bug in OCP '0001 (Philipp Hachtmann)
|
||||||
31-Jan-05 RMS Fixed bug in TTY print (found by Philipp Hachtmann)
|
31-Jan-05 RMS Fixed bug in TTY print (Philipp Hachtmann)
|
||||||
01-Dec-04 RMS Fixed problem in SKS '104 (reported by Philipp Hachtmann)
|
01-Dec-04 RMS Fixed problem in SKS '104 (Philipp Hachtmann)
|
||||||
Fixed bug in SKS '504
|
Fixed bug in SKS '504
|
||||||
Added PTR detach routine, stops motion
|
Added PTR detach routine, stops motion
|
||||||
Added PTR/PTP ASCII file support
|
Added PTR/PTP ASCII file support
|
||||||
|
|
|
@ -36,16 +36,16 @@
|
||||||
This allows cards to be created and edited as normal files.
|
This allows cards to be created and edited as normal files.
|
||||||
|
|
||||||
24-Mar-09 RMS Fixed read stacker operation in column binary mode
|
24-Mar-09 RMS Fixed read stacker operation in column binary mode
|
||||||
Fixed punch stacker operation (from Van Snyder)
|
Fixed punch stacker operation (Van Snyder)
|
||||||
28-Jun-07 RMS Added support for SS overlap modifiers
|
28-Jun-07 RMS Added support for SS overlap modifiers
|
||||||
19-Jan-07 RMS Added UNIT_TEXT flag
|
19-Jan-07 RMS Added UNIT_TEXT flag
|
||||||
20-Sep-05 RMS Revised for new code tables, compatible colbinary treatment
|
20-Sep-05 RMS Revised for new code tables, compatible colbinary treatment
|
||||||
30-Aug-05 RMS Fixed read, punch to ignore modifier on 1,4 char inst
|
30-Aug-05 RMS Fixed read, punch to ignore modifier on 1,4 char inst
|
||||||
(reported by Van Snyder)
|
(Van Snyder)
|
||||||
14-Nov-04 WVS Added column binary support
|
14-Nov-04 WVS Added column binary support
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
30-May-02 RMS Widened POS to 32b
|
30-May-02 RMS Widened POS to 32b
|
||||||
30-Jan-02 RMS New zero footprint card bootstrap from Van Snyder
|
30-Jan-02 RMS New zero footprint card bootstrap (Van Snyder)
|
||||||
29-Nov-01 RMS Added read only unit support
|
29-Nov-01 RMS Added read only unit support
|
||||||
13-Apr-01 RMS Revised for register arrays
|
13-Apr-01 RMS Revised for register arrays
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -24,21 +24,21 @@
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
19-Mar-11 RMS Reverted multiple tape indicator implementation
|
19-Mar-11 RMS Reverted multiple tape indicator implementation
|
||||||
20-Jan-11 RMS Fixed branch on EOT indicator per hardware (from Van Snyder)
|
20-Jan-11 RMS Fixed branch on EOT indicator per hardware (Van Snyder)
|
||||||
07-Nov-10 RMS Fixed divide not to clear word marks in quotient
|
07-Nov-10 RMS Fixed divide not to clear word marks in quotient
|
||||||
24-Apr-10 RMS Revised divide algorithm (from Van Snyder)
|
24-Apr-10 RMS Revised divide algorithm (Van Snyder)
|
||||||
11-Jul-08 RMS Added missing A magtape modifier (from Van Snyder)
|
11-Jul-08 RMS Added missing A magtape modifier (Van Snyder)
|
||||||
Fixed tape indicator implementation (from Bob Abeles)
|
Fixed tape indicator implementation (Bob Abeles)
|
||||||
Fixed bug in ZA and ZS (from Bob Abeles)
|
Fixed bug in ZA and ZS (Bob Abeles)
|
||||||
07-Jul-07 RMS Removed restriction on load-mode binary tape
|
07-Jul-07 RMS Removed restriction on load-mode binary tape
|
||||||
28-Jun-07 RMS Added support for SS overlap modifiers
|
28-Jun-07 RMS Added support for SS overlap modifiers
|
||||||
22-May-06 RMS Fixed format error in CPU history (found by Peter Schorn)
|
22-May-06 RMS Fixed format error in CPU history (Peter Schorn)
|
||||||
06-Mar-06 RMS Fixed bug in divide (found by Van Snyder)
|
06-Mar-06 RMS Fixed bug in divide (Van Snyder)
|
||||||
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
|
22-Sep-05 RMS Fixed declarations (Sterling Garwood)
|
||||||
01-Sep-05 RMS Removed error stops in MCE
|
01-Sep-05 RMS Removed error stops in MCE
|
||||||
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
02-Jun-05 RMS Fixed SSB-SSG clearing on RESET
|
02-Jun-05 RMS Fixed SSB-SSG clearing on RESET
|
||||||
(reported by Ralph Reinke)
|
(Ralph Reinke)
|
||||||
14-Nov-04 WVS Added column binary support, debug support
|
14-Nov-04 WVS Added column binary support, debug support
|
||||||
06-Nov-04 RMS Added instruction history
|
06-Nov-04 RMS Added instruction history
|
||||||
12-Jul-03 RMS Moved ASCII/BCD tables to included file
|
12-Jul-03 RMS Moved ASCII/BCD tables to included file
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
lpt 1403 line printer
|
lpt 1403 line printer
|
||||||
|
|
||||||
19-Jan-07 RMS Added UNIT_TEXT flag
|
19-Jan-07 RMS Added UNIT_TEXT flag
|
||||||
07-Mar-05 RMS Fixed bug in write_line (reported by Van Snyder)
|
07-Mar-05 RMS Fixed bug in write_line (Van Snyder)
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
30-May-02 RMS Widened POS to 32b
|
30-May-02 RMS Widened POS to 32b
|
||||||
13-Apr-01 RMS Revised for register arrays
|
13-Apr-01 RMS Revised for register arrays
|
||||||
|
|
|
@ -27,21 +27,21 @@
|
||||||
|
|
||||||
19-Mar-11 RMS Restored lost edit to insert EOF in memory on read EOF
|
19-Mar-11 RMS Restored lost edit to insert EOF in memory on read EOF
|
||||||
Reverted multiple tape indicator implementation
|
Reverted multiple tape indicator implementation
|
||||||
20-Jan-11 RMS Fixed branch on END indicator per hardware (from Van Snyder)
|
20-Jan-11 RMS Fixed branch on END indicator per hardware (Van Snyder)
|
||||||
26-Jun-10 RMS Fixed backspace over tapemark not to set EOR (from Van Snyder)
|
26-Jun-10 RMS Fixed backspace over tapemark not to set EOR (Van Snyder)
|
||||||
11-Jul-08 RMS Added -n (no rewind) option to BOOT (from Van Snyder)
|
11-Jul-08 RMS Added -n (no rewind) option to BOOT (Van Snyder)
|
||||||
Added tape mark detect to diagnostic read (from Bob Abeles)
|
Added tape mark detect to diagnostic read (Bob Abeles)
|
||||||
Added tape mark detect in multi-character records (from Bob Abeles)
|
Added tape mark detect in multi-character records (Bob Abeles)
|
||||||
Fixed memory leak in tape rewind-unload op (from Bob Abeles)
|
Fixed memory leak in tape rewind-unload op (Bob Abeles)
|
||||||
Fixed bug, BOOT ignores GM+WM in memory (from Bob Abeles)
|
Fixed bug, BOOT ignores GM+WM in memory (Bob Abeles)
|
||||||
Fixed handling of indicators (from Bob Abeles)
|
Fixed handling of indicators (Bob Abeles)
|
||||||
Fixed bug to mask input to 6b on read (from Bob Abeles)
|
Fixed bug to mask input to 6b on read (Bob Abeles)
|
||||||
07-Jul-07 RMS Removed restriction on load-mode binary tape
|
07-Jul-07 RMS Removed restriction on load-mode binary tape
|
||||||
28-Jun-07 RMS Revised read tape mark behavior based on real hardware
|
28-Jun-07 RMS Revised read tape mark behavior based on real hardware
|
||||||
(found by Van Snyder)
|
(Van Snyder)
|
||||||
16-Feb-06 RMS Added tape capacity checking
|
16-Feb-06 RMS Added tape capacity checking
|
||||||
15-Sep-05 RMS Yet another fix to load read group mark plus word mark
|
15-Sep-05 RMS Yet another fix to load read group mark plus word mark
|
||||||
Added debug printouts (from Van Snyder)
|
Added debug printouts (Van Snyder)
|
||||||
26-Aug-05 RMS Revised to use API for write lock check
|
26-Aug-05 RMS Revised to use API for write lock check
|
||||||
16-Aug-03 RMS End-of-record on load read works like move read
|
16-Aug-03 RMS End-of-record on load read works like move read
|
||||||
(verified on real 1401)
|
(verified on real 1401)
|
||||||
|
@ -55,11 +55,11 @@
|
||||||
30-Sep-02 RMS Revamped error handling
|
30-Sep-02 RMS Revamped error handling
|
||||||
28-Aug-02 RMS Added end of medium support
|
28-Aug-02 RMS Added end of medium support
|
||||||
12-Jun-02 RMS End-of-record on move read preserves old WM under GM
|
12-Jun-02 RMS End-of-record on move read preserves old WM under GM
|
||||||
(found by Van Snyder)
|
(Van Snyder)
|
||||||
03-Jun-02 RMS Modified for 1311 support
|
03-Jun-02 RMS Modified for 1311 support
|
||||||
30-May-02 RMS Widened POS to 32b
|
30-May-02 RMS Widened POS to 32b
|
||||||
22-Apr-02 RMS Added protection against bad record lengths
|
22-Apr-02 RMS Added protection against bad record lengths
|
||||||
30-Jan-02 RMS New zero footprint tape bootstrap from Van Snyder
|
30-Jan-02 RMS New zero footprint tape bootstrap (Van Snyder)
|
||||||
20-Jan-02 RMS Changed write enabled modifier
|
20-Jan-02 RMS Changed write enabled modifier
|
||||||
29-Nov-01 RMS Added read only unit support
|
29-Nov-01 RMS Added read only unit support
|
||||||
18-Apr-01 RMS Changed to rewind tape before boot
|
18-Apr-01 RMS Changed to rewind tape before boot
|
||||||
|
|
|
@ -28,10 +28,10 @@
|
||||||
14-Nov-04 WVS Added data printout support
|
14-Nov-04 WVS Added data printout support
|
||||||
16-Mar-03 RMS Fixed mnemonic for MCS
|
16-Mar-03 RMS Fixed mnemonic for MCS
|
||||||
03-Jun-02 RMS Added 1311 support
|
03-Jun-02 RMS Added 1311 support
|
||||||
18-May-02 RMS Added -D feature from Van Snyder
|
18-May-02 RMS Added -D feature (Van Snyder)
|
||||||
26-Jan-02 RMS Fixed H, NOP with no trailing wm (found by Van Snyder)
|
26-Jan-02 RMS Fixed H, NOP with no trailing wm (Van Snyder)
|
||||||
17-Sep-01 RMS Removed multiconsole support
|
17-Sep-01 RMS Removed multiconsole support
|
||||||
13-Jul-01 RMS Fixed bug in symbolic output (found by Peter Schorn)
|
13-Jul-01 RMS Fixed bug in symbolic output (Peter Schorn)
|
||||||
27-May-01 RMS Added multiconsole support
|
27-May-01 RMS Added multiconsole support
|
||||||
14-Mar-01 RMS Revised load/dump interface (again)
|
14-Mar-01 RMS Revised load/dump interface (again)
|
||||||
30-Oct-00 RMS Added support for examine to file
|
30-Oct-00 RMS Added support for examine to file
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* i1620_cd.c: IBM 1622 card reader/punch
|
/* i1620_cd.c: IBM 1622 card reader/punch
|
||||||
|
|
||||||
Copyright (c) 2002-2008, Robert M. Supnik
|
Copyright (c) 2002-2012, Robert M. Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -26,9 +26,10 @@
|
||||||
cdr 1622 card reader
|
cdr 1622 card reader
|
||||||
cdp 1622 card punch
|
cdp 1622 card punch
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed declarations of saved_pc, io_stop (Mark Pizzolato)
|
||||||
19-Jan-07 RMS Set UNIT_TEXT flag
|
19-Jan-07 RMS Set UNIT_TEXT flag
|
||||||
13-Jul-06 RMS Fixed card reader fgets call (from Tom McBride)
|
13-Jul-06 RMS Fixed card reader fgets call (Tom McBride)
|
||||||
Fixed card reader boot sequence (from Tom McBride)
|
Fixed card reader boot sequence (Tom McBride)
|
||||||
21-Sep-05 RMS Revised translation tables for 7094/1401 compatibility
|
21-Sep-05 RMS Revised translation tables for 7094/1401 compatibility
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
|
|
||||||
|
|
|
@ -26,15 +26,15 @@
|
||||||
This CPU module incorporates code and comments from the 1620 simulator by
|
This CPU module incorporates code and comments from the 1620 simulator by
|
||||||
Geoff Kuenning, with his permission.
|
Geoff Kuenning, with his permission.
|
||||||
|
|
||||||
28-May-06 RMS Fixed bug in cpu history (found by Peter Schorn)
|
28-May-06 RMS Fixed bug in cpu history Peter Schorn)
|
||||||
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
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
07-Nov-04 RMS Added instruction history
|
07-Nov-04 RMS Added instruction history
|
||||||
26-Mar-04 RMS Fixed warnings with -std=c99
|
26-Mar-04 RMS Fixed warnings with -std=c99
|
||||||
02-Nov-03 RMS Fixed bug in branch digit (found by Dave Babcock)
|
02-Nov-03 RMS Fixed bug in branch digit (Dave Babcock)
|
||||||
21-Aug-03 RMS Fixed bug in immediate index add (found by Michael Short)
|
21-Aug-03 RMS Fixed bug in immediate index add (Michael Short)
|
||||||
25-Apr-03 RMS Changed t_addr to uint32 throughout
|
25-Apr-03 RMS Changed t_addr to uint32 throughout
|
||||||
18-Oct-02 RMS Fixed bugs in invalid result testing (found by Hans Pufal)
|
18-Oct-02 RMS Fixed bugs in invalid result testing (Hans Pufal)
|
||||||
|
|
||||||
The simulated register state for the IBM 1620 is:
|
The simulated register state for the IBM 1620 is:
|
||||||
|
|
||||||
|
|
|
@ -35,7 +35,7 @@
|
||||||
to mean the implied sector number that would be in place if the disk pack
|
to mean the implied sector number that would be in place if the disk pack
|
||||||
had been formatted with sequential sector numbers.
|
had been formatted with sequential sector numbers.
|
||||||
|
|
||||||
18-Oct-02 RMS Fixed bug in error testing (found by Hans Pufal)
|
18-Oct-02 RMS Fixed bug in error testing (Hans Pufal)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "i1620_defs.h"
|
#include "i1620_defs.h"
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
|
|
||||||
where S represents flag bits if the mantissa or exponent are negative.
|
where S represents flag bits if the mantissa or exponent are negative.
|
||||||
|
|
||||||
31-May-2008 RMS Fixed add_field call (found by Peter Schorn)
|
31-May-2008 RMS Fixed add_field call (Peter Schorn)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "i1620_defs.h"
|
#include "i1620_defs.h"
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* i1620_pt.c: IBM 1621/1624 paper tape reader/punch simulator
|
/* i1620_pt.c: IBM 1621/1624 paper tape reader/punch simulator
|
||||||
|
|
||||||
Copyright (c) 2002-2008, Robert M Supnik
|
Copyright (c) 2002-2012, Robert M Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -26,6 +26,7 @@
|
||||||
ptr 1621 paper tape reader
|
ptr 1621 paper tape reader
|
||||||
ptp 1624 paper tape punch
|
ptp 1624 paper tape punch
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed declaration of io_stop (Mark Pizzolato)
|
||||||
21-Sep-05 RMS Revised translation tables for 7094/1401 compatibility
|
21-Sep-05 RMS Revised translation tables for 7094/1401 compatibility
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -22,6 +22,8 @@
|
||||||
Except as contained in this notice, the name of Robert M Supnik shall not be
|
Except as contained in this notice, the name of Robert M Supnik shall not be
|
||||||
used in advertising or otherwise to promote the sale, use or other dealings
|
used in advertising or otherwise to promote the sale, use or other dealings
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed declaration of CCT (Mark Pizzolato)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "i1620_defs.h"
|
#include "i1620_defs.h"
|
||||||
|
@ -122,7 +124,8 @@ const char *sim_stop_messages[] = {
|
||||||
|
|
||||||
t_stat sim_load (FILE *fileref, char *cptr, char *fnam, int flag)
|
t_stat sim_load (FILE *fileref, char *cptr, char *fnam, int flag)
|
||||||
{
|
{
|
||||||
int32 col, rpt, ptr, mask, cctbuf[CCT_LNT];
|
uint32 col, mask, cctbuf[CCT_LNT];
|
||||||
|
int32 ptr, rpt;
|
||||||
t_stat r;
|
t_stat r;
|
||||||
extern int32 cct_lnt, cct_ptr;
|
extern int32 cct_lnt, cct_ptr;
|
||||||
extern uint32 cct[CCT_LNT];
|
extern uint32 cct[CCT_LNT];
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* i7094_cd.c: IBM 711/721 card reader/punch
|
/* i7094_cd.c: IBM 711/721 card reader/punch
|
||||||
|
|
||||||
Copyright (c) 2003-2008, Robert M. Supnik
|
Copyright (c) 2003-2012, Robert M. Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -26,6 +26,7 @@
|
||||||
cdr 711 card reader
|
cdr 711 card reader
|
||||||
cdp 721 card punch
|
cdp 721 card punch
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed declaration of sim_switches (Mark Pizzolato)
|
||||||
19-Jan-07 RMS Added UNIT_TEXT
|
19-Jan-07 RMS Added UNIT_TEXT
|
||||||
13-Jul-06 RMS Fixed problem with 80 column full cards
|
13-Jul-06 RMS Fixed problem with 80 column full cards
|
||||||
|
|
||||||
|
|
|
@ -26,8 +26,8 @@
|
||||||
com 7750 controller
|
com 7750 controller
|
||||||
coml 7750 lines
|
coml 7750 lines
|
||||||
|
|
||||||
12-Aug-2010 RMS Major rewrite for CTSS (from Dave Pitts)
|
12-Aug-10 RMS Major rewrite for CTSS (Dave Pitts)
|
||||||
19-Nov-2008 RMS Revised for common TMXR show routines
|
19-Nov-08 RMS Revised for common TMXR show routines
|
||||||
|
|
||||||
This module implements an abstract simulator for the IBM 7750 communications
|
This module implements an abstract simulator for the IBM 7750 communications
|
||||||
computer as used by the CTSS system. The 7750 supports up to 112 lines;
|
computer as used by the CTSS system. The 7750 supports up to 112 lines;
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
31-Dec-11 RMS Select traps have priority over protect traps
|
31-Dec-11 RMS Select traps have priority over protect traps
|
||||||
Added SRI, SPI
|
Added SRI, SPI
|
||||||
Fixed user mode and relocation from CTSS RPQ documentation
|
Fixed user mode and relocation from CTSS RPQ documentation
|
||||||
16-Jul-10 RMS Fixed user mode protection (found by Dave Pitts)
|
16-Jul-10 RMS Fixed user mode protection (Dave Pitts)
|
||||||
Fixed issues in storage nullification mode
|
Fixed issues in storage nullification mode
|
||||||
28-Apr-07 RMS Removed clock initialization
|
28-Apr-07 RMS Removed clock initialization
|
||||||
29-Oct-06 RMS Added additional expanded core instructions
|
29-Oct-06 RMS Added additional expanded core instructions
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
31-Dec-11 RMS Refined PSE and MSE user-mode protection based on
|
31-Dec-11 RMS Refined PSE and MSE user-mode protection based on
|
||||||
CTSS RPQ specification
|
CTSS RPQ specification
|
||||||
Select traps have priority over protection traps
|
Select traps have priority over protection traps
|
||||||
16-Jul-10 RMS Fixed PSE and MSE user-mode protection (from Dave Pitts)
|
16-Jul-10 RMS Fixed PSE and MSE user-mode protection (Dave Pitts)
|
||||||
Added SPUx, SPTx, SPRx
|
Added SPUx, SPTx, SPRx
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
|
|
||||||
drm 7289/7320A "fast" drum
|
drm 7289/7320A "fast" drum
|
||||||
|
|
||||||
|
23-Mar-12 RMS Corrected disk addressing and logical disk crossing
|
||||||
25-Mar-11 RMS Updated based on RPQ
|
25-Mar-11 RMS Updated based on RPQ
|
||||||
|
|
||||||
This simulator implements a subset of the functionality of the 7289, as
|
This simulator implements a subset of the functionality of the 7289, as
|
||||||
|
@ -47,7 +48,7 @@
|
||||||
Limitations in this simulator:
|
Limitations in this simulator:
|
||||||
|
|
||||||
- Chain mode is not implemented.
|
- Chain mode is not implemented.
|
||||||
- Write protect switches are not implemented.
|
- LPCR is not implemented.
|
||||||
|
|
||||||
For speed, the entire drum is buffered in memory.
|
For speed, the entire drum is buffered in memory.
|
||||||
*/
|
*/
|
||||||
|
@ -55,10 +56,12 @@
|
||||||
#include "i7094_defs.h"
|
#include "i7094_defs.h"
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
#define DRM_NUMDR 8 /* drums/controller */
|
#define DRM_NUMDR 4 /* drums/controller */
|
||||||
|
|
||||||
/* Drum geometry */
|
/* Drum geometry */
|
||||||
|
|
||||||
|
#define DRM_NUMWDG 1024 /* words/group */
|
||||||
|
#define DRM_GPMASK (DRM_NUMWDG - 1) /* group mask */
|
||||||
#define DRM_NUMWDS 2048 /* words/sector */
|
#define DRM_NUMWDS 2048 /* words/sector */
|
||||||
#define DRM_SCMASK (DRM_NUMWDS - 1) /* sector mask */
|
#define DRM_SCMASK (DRM_NUMWDS - 1) /* sector mask */
|
||||||
#define DRM_NUMSC 16 /* sectors/log drum */
|
#define DRM_NUMSC 16 /* sectors/log drum */
|
||||||
|
@ -68,6 +71,7 @@
|
||||||
#define DRM_SIZE (DRM_NUMLD * DRM_NUMWDL) /* words/phys drum */
|
#define DRM_SIZE (DRM_NUMLD * DRM_NUMWDL) /* words/phys drum */
|
||||||
#define GET_POS(x) ((int) fmod (sim_gtime() / ((double) (x)), \
|
#define GET_POS(x) ((int) fmod (sim_gtime() / ((double) (x)), \
|
||||||
((double) DRM_NUMWDS)))
|
((double) DRM_NUMWDS)))
|
||||||
|
#define GET_PROT(x) ((x[drm_phy] >> (drm_log - 1)) & 1)
|
||||||
|
|
||||||
/* Drum address from channel */
|
/* Drum address from channel */
|
||||||
|
|
||||||
|
@ -80,7 +84,7 @@
|
||||||
#define DRM_GETPHY(x) (((uint32) ((x) >> DRM_V_PHY)) & DRM_M_PHY)
|
#define DRM_GETPHY(x) (((uint32) ((x) >> DRM_V_PHY)) & DRM_M_PHY)
|
||||||
#define DRM_GETLOG(x) ((((uint32) (x)) >> DRM_V_LOG) & DRM_M_LOG)
|
#define DRM_GETLOG(x) ((((uint32) (x)) >> DRM_V_LOG) & DRM_M_LOG)
|
||||||
#define DRM_GETWDA(x) ((((uint32) (x)) >> DRM_V_WDA) & DRM_M_WDA)
|
#define DRM_GETWDA(x) ((((uint32) (x)) >> DRM_V_WDA) & DRM_M_WDA)
|
||||||
#define DRM_GETDA(x) (((DRM_GETLOG(x) - 1) * DRM_NUMWDL) + DRM_GETWDA(x))
|
#define DRM_GETDA(l,x) ((((l) - 1) * DRM_NUMWDL) + (x))
|
||||||
|
|
||||||
/* SCD word */
|
/* SCD word */
|
||||||
|
|
||||||
|
@ -88,9 +92,7 @@
|
||||||
#define DRMS_V_INV 33 /* invalid command */
|
#define DRMS_V_INV 33 /* invalid command */
|
||||||
#define DRMS_V_PHY 31 /* physical drum */
|
#define DRMS_V_PHY 31 /* physical drum */
|
||||||
#define DRMS_V_LOG 28 /* logical drum */
|
#define DRMS_V_LOG 28 /* logical drum */
|
||||||
#define DRMS_V_HWDA 24 /* high word addr */
|
#define DRMS_V_WDA 13 /* disk address */
|
||||||
#define DRMS_M_HWDA 017
|
|
||||||
#define DRMS_V_GRP 23 /* group */
|
|
||||||
#define DRMS_V_WRP 22 /* write protect */
|
#define DRMS_V_WRP 22 /* write protect */
|
||||||
#define DRMS_V_LPCR 18 /* LPRCR */
|
#define DRMS_V_LPCR 18 /* LPRCR */
|
||||||
#define DRMS_M_LPCR 017
|
#define DRMS_M_LPCR 017
|
||||||
|
@ -106,10 +108,12 @@
|
||||||
uint32 drm_ch = CH_G; /* drum channel */
|
uint32 drm_ch = CH_G; /* drum channel */
|
||||||
uint32 drm_da = 0; /* drum address */
|
uint32 drm_da = 0; /* drum address */
|
||||||
uint32 drm_phy = 0; /* physical drum */
|
uint32 drm_phy = 0; /* physical drum */
|
||||||
|
uint32 drm_log = 0; /* logical drum */
|
||||||
uint32 drm_sta = 0; /* state */
|
uint32 drm_sta = 0; /* state */
|
||||||
uint32 drm_op = 0; /* operation */
|
uint32 drm_op = 0; /* operation */
|
||||||
t_uint64 drm_chob = 0; /* output buf */
|
t_uint64 drm_chob = 0; /* output buf */
|
||||||
uint32 drm_chob_v = 0; /* valid */
|
uint32 drm_chob_v = 0; /* valid */
|
||||||
|
uint32 drm_prot[DRM_NUMDR] = { 0 }; /* drum protect sw */
|
||||||
int32 drm_time = 10; /* inter-word time */
|
int32 drm_time = 10; /* inter-word time */
|
||||||
|
|
||||||
extern uint32 ind_ioc;
|
extern uint32 ind_ioc;
|
||||||
|
@ -138,23 +142,20 @@ UNIT drm_unit[] = {
|
||||||
UNIT_MUSTBUF+UNIT_DISABLE+UNIT_DIS, DRM_SIZE) },
|
UNIT_MUSTBUF+UNIT_DISABLE+UNIT_DIS, DRM_SIZE) },
|
||||||
{ UDATA (&drm_svc, UNIT_FIX+UNIT_ATTABLE+UNIT_BUFABLE+
|
{ UDATA (&drm_svc, UNIT_FIX+UNIT_ATTABLE+UNIT_BUFABLE+
|
||||||
UNIT_MUSTBUF+UNIT_DISABLE+UNIT_DIS, DRM_SIZE) },
|
UNIT_MUSTBUF+UNIT_DISABLE+UNIT_DIS, DRM_SIZE) },
|
||||||
{ UDATA (&drm_svc, UNIT_FIX+UNIT_ATTABLE+UNIT_BUFABLE+
|
|
||||||
UNIT_MUSTBUF+UNIT_DISABLE+UNIT_DIS, DRM_SIZE) },
|
|
||||||
{ UDATA (&drm_svc, UNIT_FIX+UNIT_ATTABLE+UNIT_BUFABLE+
|
|
||||||
UNIT_MUSTBUF+UNIT_DISABLE+UNIT_DIS, DRM_SIZE) },
|
|
||||||
{ UDATA (&drm_svc, UNIT_FIX+UNIT_ATTABLE+UNIT_BUFABLE+
|
|
||||||
UNIT_MUSTBUF+UNIT_DISABLE+UNIT_DIS, DRM_SIZE) },
|
|
||||||
{ UDATA (&drm_svc, UNIT_FIX+UNIT_ATTABLE+UNIT_BUFABLE+
|
|
||||||
UNIT_MUSTBUF+UNIT_DISABLE+UNIT_DIS, DRM_SIZE) },
|
|
||||||
};
|
};
|
||||||
|
|
||||||
REG drm_reg[] = {
|
REG drm_reg[] = {
|
||||||
{ ORDATA (STATE, drm_sta, 3) },
|
{ ORDATA (STATE, drm_sta, 3) },
|
||||||
{ ORDATA (DA, drm_da, 18) },
|
{ ORDATA (UNIT,drm_phy, 2), REG_RO },
|
||||||
|
{ ORDATA (LOG, drm_log, 3), REG_RO },
|
||||||
|
{ ORDATA (DA, drm_da, 15) },
|
||||||
{ FLDATA (OP, drm_op, 0) },
|
{ FLDATA (OP, drm_op, 0) },
|
||||||
{ ORDATA (UNIT,drm_phy, 3) },
|
|
||||||
{ ORDATA (CHOB, drm_chob, 36) },
|
{ ORDATA (CHOB, drm_chob, 36) },
|
||||||
{ FLDATA (CHOBV, drm_chob_v, 0) },
|
{ FLDATA (CHOBV, drm_chob_v, 0) },
|
||||||
|
{ ORDATA (PROT0, drm_prot[0], 6) },
|
||||||
|
{ ORDATA (PROT1, drm_prot[1], 6) },
|
||||||
|
{ ORDATA (PROT2, drm_prot[2], 6) },
|
||||||
|
{ ORDATA (PROT3, drm_prot[3], 6) },
|
||||||
{ DRDATA (TIME, drm_time, 24), REG_NZ + PV_LEFT },
|
{ DRDATA (TIME, drm_time, 24), REG_NZ + PV_LEFT },
|
||||||
{ DRDATA (CHAN, drm_ch, 3), REG_HRO },
|
{ DRDATA (CHAN, drm_ch, 3), REG_HRO },
|
||||||
{ NULL }
|
{ NULL }
|
||||||
|
@ -199,24 +200,38 @@ switch (sel) { /* case on cmd */
|
||||||
return SCPE_OK;
|
return SCPE_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Channel diagnostic store routine */
|
||||||
|
|
||||||
|
t_uint64 drm_sdc (uint32 ch)
|
||||||
|
{
|
||||||
|
t_uint64 val;
|
||||||
|
|
||||||
|
|
||||||
|
val = (((t_uint64) ind_ioc) << DRMS_V_IOC) |
|
||||||
|
(((t_uint64) drm_phy) << DRMS_V_PHY) |
|
||||||
|
(((t_uint64) drm_log) << DRMS_V_LOG) |
|
||||||
|
(((t_uint64) (drm_da & ~ DRM_GPMASK)) << DRMS_V_WDA) |
|
||||||
|
(((t_uint64) GET_PROT(drm_prot)) << DRMS_V_WRP);
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
/* Channel write routine */
|
/* Channel write routine */
|
||||||
|
|
||||||
t_stat drm_chwr (uint32 ch, t_uint64 val, uint32 flags)
|
t_stat drm_chwr (uint32 ch, t_uint64 val, uint32 flags)
|
||||||
{
|
{
|
||||||
uint32 l;
|
|
||||||
int32 cp, dp;
|
int32 cp, dp;
|
||||||
|
|
||||||
if (drm_sta == DRM_1ST) {
|
if (drm_sta == DRM_1ST) {
|
||||||
drm_phy = DRM_GETPHY (val); /* get unit */
|
drm_phy = DRM_GETPHY (val); /* get unit */
|
||||||
l = DRM_GETLOG (val); /* get logical address */
|
drm_log = DRM_GETLOG (val); /* get logical disk */
|
||||||
if ((drm_phy >= DRM_NUMDR) || /* invalid unit? */
|
drm_da = DRM_GETWDA (val); /* get drum word addr */
|
||||||
(drm_unit[drm_phy].flags & UNIT_DIS) || /* disabled unit? */
|
if ((drm_unit[drm_phy].flags & UNIT_DIS) || /* disabled unit? */
|
||||||
(l == 0) || (l > DRM_NUMLD)) { /* invalid log drum? */
|
(drm_log == 0) || (drm_log > DRM_NUMLD) || /* invalid log drum? */
|
||||||
|
((drm_op != 0) && (GET_PROT (drm_prot) != 0))) { /* write to prot drum? */
|
||||||
ch6_err_disc (ch, U_DRM, CHF_TRC); /* disconnect */
|
ch6_err_disc (ch, U_DRM, CHF_TRC); /* disconnect */
|
||||||
drm_sta = DRM_IDLE;
|
drm_sta = DRM_IDLE;
|
||||||
return SCPE_OK;
|
return SCPE_OK;
|
||||||
}
|
}
|
||||||
drm_da = DRM_GETDA (val); /* get drum addr */
|
|
||||||
cp = GET_POS (drm_time); /* current pos in sec */
|
cp = GET_POS (drm_time); /* current pos in sec */
|
||||||
dp = (drm_da & DRM_SCMASK) - cp; /* delta to desired pos */
|
dp = (drm_da & DRM_SCMASK) - cp; /* delta to desired pos */
|
||||||
if (dp <= 0) /* if neg, add rev */
|
if (dp <= 0) /* if neg, add rev */
|
||||||
|
@ -243,23 +258,19 @@ t_stat drm_svc (UNIT *uptr)
|
||||||
{
|
{
|
||||||
uint32 i;
|
uint32 i;
|
||||||
t_uint64 *fbuf = (t_uint64 *) uptr->filebuf;
|
t_uint64 *fbuf = (t_uint64 *) uptr->filebuf;
|
||||||
|
uint32 da = DRM_GETDA (drm_log, drm_da);
|
||||||
|
|
||||||
if ((uptr->flags & UNIT_BUF) == 0) { /* not buf? */
|
if ((uptr->flags & UNIT_BUF) == 0) { /* not buf? */
|
||||||
ch6_err_disc (drm_ch, U_DRM, CHF_TRC); /* set TRC, disc */
|
ch6_err_disc (drm_ch, U_DRM, CHF_TRC); /* set TRC, disc */
|
||||||
drm_sta = DRM_IDLE; /* drum is idle */
|
drm_sta = DRM_IDLE; /* drum is idle */
|
||||||
return SCPE_UNATT;
|
return SCPE_UNATT;
|
||||||
}
|
}
|
||||||
if (drm_da >= DRM_SIZE) { /* nx logical drum? */
|
|
||||||
ch6_err_disc (drm_ch, U_DRM, CHF_EOF); /* set EOF, disc */
|
|
||||||
drm_sta = DRM_IDLE; /* drum is idle */
|
|
||||||
return SCPE_OK;
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (drm_sta) { /* case on state */
|
switch (drm_sta) { /* case on state */
|
||||||
|
|
||||||
case DRM_FILL: /* write, clr sector */
|
case DRM_FILL: /* write, clr group */
|
||||||
for (i = drm_da & ~DRM_SCMASK; i <= (drm_da | DRM_SCMASK); i++)
|
for (i = da & ~DRM_GPMASK; i <= (da | DRM_GPMASK); i++)
|
||||||
fbuf[i] = 0; /* clear sector */
|
fbuf[i] = 0; /* clear group */
|
||||||
if (i >= uptr-> hwmark)
|
if (i >= uptr-> hwmark)
|
||||||
uptr->hwmark = i + 1;
|
uptr->hwmark = i + 1;
|
||||||
drm_sta = DRM_DATA; /* now data */
|
drm_sta = DRM_DATA; /* now data */
|
||||||
|
@ -270,14 +281,14 @@ switch (drm_sta) { /* case on state */
|
||||||
drm_chob_v = 0;
|
drm_chob_v = 0;
|
||||||
else if (ch6_qconn (drm_ch, U_DRM)) /* no, chan conn? */
|
else if (ch6_qconn (drm_ch, U_DRM)) /* no, chan conn? */
|
||||||
ind_ioc = 1; /* io check */
|
ind_ioc = 1; /* io check */
|
||||||
fbuf[drm_da] = drm_chob; /* get data */
|
fbuf[da] = drm_chob; /* get data */
|
||||||
if (drm_da >= uptr->hwmark)
|
if (da >= uptr->hwmark)
|
||||||
uptr->hwmark = drm_da + 1;
|
uptr->hwmark = da + 1;
|
||||||
if (!drm_da_incr ())
|
if (!drm_da_incr ()) /* room for more? */
|
||||||
ch6_req_wr (drm_ch, U_DRM);
|
ch6_req_wr (drm_ch, U_DRM);
|
||||||
}
|
}
|
||||||
else{ /* read */
|
else{ /* read */
|
||||||
ch6_req_rd (drm_ch, U_DRM, fbuf[drm_da], 0); /* send word to channel */
|
ch6_req_rd (drm_ch, U_DRM, fbuf[da], 0); /* send word to channel */
|
||||||
drm_da_incr ();
|
drm_da_incr ();
|
||||||
}
|
}
|
||||||
sim_activate (uptr, drm_time); /* next word */
|
sim_activate (uptr, drm_time); /* next word */
|
||||||
|
@ -293,12 +304,12 @@ switch (drm_sta) { /* case on state */
|
||||||
return SCPE_OK;
|
return SCPE_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Increment drum address - return true, set new state if end of sector */
|
/* Increment drum address - return true, set new state if end of logical disk */
|
||||||
|
|
||||||
t_bool drm_da_incr (void)
|
t_bool drm_da_incr (void)
|
||||||
{
|
{
|
||||||
drm_da = (drm_da & ~DRM_LDMASK) | ((drm_da + 1) & DRM_LDMASK);
|
drm_da = (drm_da + 1) & DRM_LDMASK;
|
||||||
if ((drm_da & DRM_LDMASK) != 0)
|
if (drm_da != 0)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
drm_sta = DRM_EOD;
|
drm_sta = DRM_EOD;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
@ -311,6 +322,7 @@ t_stat drm_reset (DEVICE *dptr)
|
||||||
uint32 i;
|
uint32 i;
|
||||||
|
|
||||||
drm_phy = 0;
|
drm_phy = 0;
|
||||||
|
drm_log = 0;
|
||||||
drm_da = 0;
|
drm_da = 0;
|
||||||
drm_op = 0;
|
drm_op = 0;
|
||||||
drm_sta = DRM_IDLE;
|
drm_sta = DRM_IDLE;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* i7094_io.c: IBM 7094 I/O subsystem (channels)
|
/* i7094_io.c: IBM 7094 I/O subsystem (channels)
|
||||||
|
|
||||||
Copyright (c) 2003-2006, Robert M. Supnik
|
Copyright (c) 2003-2012, Robert M. Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,6 +25,8 @@
|
||||||
|
|
||||||
chana..chanh I/O channels
|
chana..chanh I/O channels
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed declaration of breakpoint variables (Mark Pizzolato)
|
||||||
|
|
||||||
Notes on channels and CTSS.
|
Notes on channels and CTSS.
|
||||||
|
|
||||||
- CTSS B-core is supported by the addition of a 16th bit to the current
|
- CTSS B-core is supported by the addition of a 16th bit to the current
|
||||||
|
@ -834,10 +836,12 @@ return SCPE_OK;
|
||||||
|
|
||||||
t_stat ch_op_store_diag (uint32 ch, t_uint64 *dat)
|
t_stat ch_op_store_diag (uint32 ch, t_uint64 *dat)
|
||||||
{
|
{
|
||||||
|
extern t_uint64 drm_sdc (uint32 ch);
|
||||||
|
|
||||||
if ((ch >= NUM_CHAN) || (ch_dev[ch].flags & DEV_DIS))
|
if ((ch >= NUM_CHAN) || (ch_dev[ch].flags & DEV_DIS))
|
||||||
return STOP_NXCHN;
|
return STOP_NXCHN;
|
||||||
if (ch_flags[ch] & DEV_7289)
|
if (ch_flags[ch] & DEV_7289)
|
||||||
*dat = ind_ioc? SIGN: 0;
|
*dat = drm_sdc (ch);
|
||||||
else if (ch_flags[ch] & DEV_7909)
|
else if (ch_flags[ch] & DEV_7909)
|
||||||
*dat = (((t_uint64) (ch_lcc[ch] & CHF_M_LCC)) << CHF_V_LCC) |
|
*dat = (((t_uint64) (ch_lcc[ch] & CHF_M_LCC)) << CHF_V_LCC) |
|
||||||
(ch_flags[ch] & CHF_SDC_7909);
|
(ch_flags[ch] & CHF_SDC_7909);
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* i7094_lp.c: IBM 716 line printer simulator
|
/* i7094_lp.c: IBM 716 line printer simulator
|
||||||
|
|
||||||
Copyright (c) 2003-2008, Robert M. Supnik
|
Copyright (c) 2003-2012, Robert M. Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* i7094_mt.c: IBM 7094 magnetic tape simulator
|
/* i7094_mt.c: IBM 7094 magnetic tape simulator
|
||||||
|
|
||||||
Copyright (c) 2003-2008, Robert M Supnik
|
Copyright (c) 2003-2012, Robert M Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,7 +25,8 @@
|
||||||
|
|
||||||
mt magtape simulator
|
mt magtape simulator
|
||||||
|
|
||||||
16-Jul-10 RMS Fixed handling of BSR, BSF (from Dave Pitts)
|
19-Mar-12 RMS Fixed declaration of sel_name (Mark Pizzolato)
|
||||||
|
16-Jul-10 RMS Fixed handling of BSR, BSF (Dave Pitts)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "i7094_defs.h"
|
#include "i7094_defs.h"
|
||||||
|
|
|
@ -28,15 +28,15 @@
|
||||||
28-Apr-07 RMS Removed clock initialization
|
28-Apr-07 RMS Removed clock initialization
|
||||||
27-Oct-06 RMS Added idle support
|
27-Oct-06 RMS Added idle support
|
||||||
Removed separate PASLA clock
|
Removed separate PASLA clock
|
||||||
06-Feb-06 RMS Fixed bug in DH (found by Mark Hittinger)
|
06-Feb-06 RMS Fixed bug in DH (Mark Hittinger)
|
||||||
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
|
22-Sep-05 RMS Fixed declarations (Sterling Garwood)
|
||||||
25-Aug-05 RMS Fixed DH integer overflow cases
|
25-Aug-05 RMS Fixed DH integer overflow cases
|
||||||
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
10-Mar-05 RMS Fixed bug in show history routine (from Mark Hittinger)
|
10-Mar-05 RMS Fixed bug in show history routine (Mark Hittinger)
|
||||||
Revised examine/deposit to do words rather than bytes
|
Revised examine/deposit to do words rather than bytes
|
||||||
07-Nov-04 RMS Added instruction history
|
07-Nov-04 RMS Added instruction history
|
||||||
22-Sep-03 RMS Added additional instruction decode types
|
22-Sep-03 RMS Added additional instruction decode types
|
||||||
07-Feb-03 RMS Fixed bug in SETM, SETMR (found by Mark Pizzolato)
|
07-Feb-03 RMS Fixed bug in SETM, SETMR (Mark Pizzolato)
|
||||||
|
|
||||||
The register state for the Interdata 16b CPU is:
|
The register state for the Interdata 16b CPU is:
|
||||||
|
|
||||||
|
|
|
@ -29,13 +29,13 @@
|
||||||
27-Oct-06 RMS Added idle support
|
27-Oct-06 RMS Added idle support
|
||||||
Removed separate PASLA clock
|
Removed separate PASLA clock
|
||||||
09-Mar-06 RMS Added 8 register bank support for 8/32
|
09-Mar-06 RMS Added 8 register bank support for 8/32
|
||||||
06-Feb-06 RMS Fixed bug in DH (found by Mark Hittinger)
|
06-Feb-06 RMS Fixed bug in DH (Mark Hittinger)
|
||||||
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
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
10-Mar-05 RMS Fixed bug in initial memory allocation
|
10-Mar-05 RMS Fixed bug in initial memory allocation
|
||||||
RMS Fixed bug in show history routine (from Mark Hittinger)
|
RMS Fixed bug in show history routine (Mark Hittinger)
|
||||||
RMS Revised examine/deposit to do words rather than bytes
|
RMS Revised examine/deposit to do words rather than bytes
|
||||||
18-Feb-05 RMS Fixed branches to mask new PC (from Greg Johnson)
|
18-Feb-05 RMS Fixed branches to mask new PC (Greg Johnson)
|
||||||
06-Nov-04 RMS Added =n to SHOW HISTORY
|
06-Nov-04 RMS Added =n to SHOW HISTORY
|
||||||
25-Jan-04 RMS Revised for device debug support
|
25-Jan-04 RMS Revised for device debug support
|
||||||
31-Dec-03 RMS Fixed bug in cpu_set_hist
|
31-Dec-03 RMS Fixed bug in cpu_set_hist
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
used in advertising or otherwise to promote the sale, use or other dealings
|
used in advertising or otherwise to promote the sale, use or other dealings
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
17-Jul-06 RMS Fixed transcription errors (found by Davis Johnson)
|
17-Jul-06 RMS Fixed transcription errors (Davis Johnson)
|
||||||
17-Feb-03 RMS Fixed for UNIX bootstrap, upper platter bootstrap
|
17-Feb-03 RMS Fixed for UNIX bootstrap, upper platter bootstrap
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* id_fd.c: Interdata floppy disk simulator
|
/* id_fd.c: Interdata floppy disk simulator
|
||||||
|
|
||||||
Copyright (c) 2001-2008, Robert M Supnik
|
Copyright (c) 2001-2012, Robert M Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,6 +25,8 @@
|
||||||
|
|
||||||
fd M46-630 floppy disk
|
fd M46-630 floppy disk
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed macro naming conflict (Mark Pizzolato)
|
||||||
|
|
||||||
A diskette consists of 77 tracks, each with 26 sectors of 128B. The
|
A diskette consists of 77 tracks, each with 26 sectors of 128B. The
|
||||||
Interdata floppy uses a logical record numbering scheme from 1 to 2002.
|
Interdata floppy uses a logical record numbering scheme from 1 to 2002.
|
||||||
Physical tracks are numbered 0-76, physical sectors 1-26.
|
Physical tracks are numbered 0-76, physical sectors 1-26.
|
||||||
|
@ -75,14 +77,11 @@
|
||||||
|
|
||||||
#define STA_WRP 0x80 /* *write prot */
|
#define STA_WRP 0x80 /* *write prot */
|
||||||
#define STA_DEF 0x40 /* def track NI */
|
#define STA_DEF 0x40 /* def track NI */
|
||||||
#ifdef STA_DEL /* Some platforms define a conflicting symbol here */
|
#define STA_DLR 0x20 /* del record */
|
||||||
#undef STA_DEL
|
|
||||||
#endif
|
|
||||||
#define STA_DEL 0x20 /* del record */
|
|
||||||
#define STA_ERR 0x10 /* error */
|
#define STA_ERR 0x10 /* error */
|
||||||
#define STA_IDL 0x02 /* idle */
|
#define STA_IDL 0x02 /* idle */
|
||||||
#define STA_OFL 0x01 /* fault */
|
#define STA_OFL 0x01 /* fault */
|
||||||
#define STA_MASK (STA_DEF|STA_DEL|STA_ERR|STA_BSY|STA_IDL)
|
#define STA_MASK (STA_DEF|STA_DLR|STA_ERR|STA_BSY|STA_IDL)
|
||||||
#define SET_EX (STA_ERR) /* set EX */
|
#define SET_EX (STA_ERR) /* set EX */
|
||||||
|
|
||||||
/* Extended status, 6 bytes, * = dynamic */
|
/* Extended status, 6 bytes, * = dynamic */
|
||||||
|
@ -332,7 +331,7 @@ switch (fnc) { /* case on function */
|
||||||
for (i = 0; i < FD_NUMBY; i++) /* read sector */
|
for (i = 0; i < FD_NUMBY; i++) /* read sector */
|
||||||
fdxb[i] = fbuf[da + i];
|
fdxb[i] = fbuf[da + i];
|
||||||
if (fbuf[FD_SIZE + uptr->LRN - 1]) { /* deleted? set err */
|
if (fbuf[FD_SIZE + uptr->LRN - 1]) { /* deleted? set err */
|
||||||
fd_sta = fd_sta | STA_DEL;
|
fd_sta = fd_sta | STA_DLR;
|
||||||
fd_es[u][0] = fd_es[u][0] | ES0_DEL;
|
fd_es[u][0] = fd_es[u][0] | ES0_DEL;
|
||||||
}
|
}
|
||||||
fd_es[u][2] = GET_SEC (uptr->LRN); /* set ext sec/trk */
|
fd_es[u][2] = GET_SEC (uptr->LRN); /* set ext sec/trk */
|
||||||
|
|
|
@ -25,8 +25,8 @@
|
||||||
|
|
||||||
idc MSM/IDC disk controller
|
idc MSM/IDC disk controller
|
||||||
|
|
||||||
03-Apr-06 RMS Fixed WD/WH handling (found by Davis Johnson)
|
03-Apr-06 RMS Fixed WD/WH handling (Davis Johnson)
|
||||||
30-Mar-06 RMS Fixed bug, nop command should be ignored (found by Davis Johnson)
|
30-Mar-06 RMS Fixed bug, nop command should be ignored (Davis Johnson)
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
16-Feb-03 RMS Fixed read to test transfer ok before selch operation
|
16-Feb-03 RMS Fixed read to test transfer ok before selch operation
|
||||||
|
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
used in advertising or otherwise to promote the sale, use or other dealings
|
used in advertising or otherwise to promote the sale, use or other dealings
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
30-Mar-06 RMS Fixed bug, GO preserves EXA and SSTA (found by Davis Johnson)
|
30-Mar-06 RMS Fixed bug, GO preserves EXA and SSTA (Davis Johnson)
|
||||||
21-Jun-03 RMS Changed subroutine argument for ARM compiler conflict
|
21-Jun-03 RMS Changed subroutine argument for ARM compiler conflict
|
||||||
|
|
||||||
Interdata I/O devices are defined by a device information block:
|
Interdata I/O devices are defined by a device information block:
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
|
|
||||||
lpt M46-206 line printer
|
lpt M46-206 line printer
|
||||||
|
|
||||||
27-May-08 RMS Fixed bug in printing test (from Davis Johnson)
|
27-May-08 RMS Fixed bug in printing test (Davis Johnson)
|
||||||
19-Jan-07 RMS Added UNIT_TEXT flag
|
19-Jan-07 RMS Added UNIT_TEXT flag
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* id_pas.c: Interdata programmable async line adapter simulator
|
/* id_pas.c: Interdata programmable async line adapter simulator
|
||||||
|
|
||||||
Copyright (c) 2001-2008, Robert M Supnik
|
Copyright (c) 2001-2012, Robert M Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,6 +25,7 @@
|
||||||
|
|
||||||
pas Programmable asynchronous line adapter(s)
|
pas Programmable asynchronous line adapter(s)
|
||||||
|
|
||||||
|
21-Mar-12 RMS Fixed TT_GET_MODE test to use TTUF_MODE_x (Michael Bloom)
|
||||||
19-Nov-08 RMS Revised for common TMXR show routines
|
19-Nov-08 RMS Revised for common TMXR show routines
|
||||||
18-Jun-07 RMS Added UNIT_IDLE flag
|
18-Jun-07 RMS Added UNIT_IDLE flag
|
||||||
18-Oct-06 RMS Synced PASLA to clock
|
18-Oct-06 RMS Synced PASLA to clock
|
||||||
|
@ -345,7 +346,7 @@ for (ln = 0; ln < PAS_ENAB; ln++) { /* loop thru lines */
|
||||||
else { /* normal */
|
else { /* normal */
|
||||||
out = c & 0x7F; /* echo is 7b */
|
out = c & 0x7F; /* echo is 7b */
|
||||||
c = sim_tt_inpcvt (c, TT_GET_MODE (pasl_unit[ln].flags));
|
c = sim_tt_inpcvt (c, TT_GET_MODE (pasl_unit[ln].flags));
|
||||||
if (TT_GET_MODE (pasl_unit[ln].flags) != TT_MODE_8B)
|
if (TT_GET_MODE (pasl_unit[ln].flags) != TTUF_MODE_8B)
|
||||||
c = pas_par (pas_cmd[ln], c); /* apply parity */
|
c = pas_par (pas_cmd[ln], c); /* apply parity */
|
||||||
pas_rbuf[ln] = c; /* save char */
|
pas_rbuf[ln] = c; /* save char */
|
||||||
pas_rchp[ln] = 1; /* char pending */
|
pas_rchp[ln] = 1; /* char pending */
|
||||||
|
@ -378,7 +379,7 @@ uint32 ln = uptr - pasl_unit; /* line # */
|
||||||
if (pas_ldsc[ln].conn) { /* connected? */
|
if (pas_ldsc[ln].conn) { /* connected? */
|
||||||
if (pas_ldsc[ln].xmte) { /* xmt enabled? */
|
if (pas_ldsc[ln].xmte) { /* xmt enabled? */
|
||||||
TMLN *lp = &pas_ldsc[ln]; /* get line */
|
TMLN *lp = &pas_ldsc[ln]; /* get line */
|
||||||
if (TT_GET_MODE (pasl_unit[ln].flags) == TT_MODE_8B)
|
if (TT_GET_MODE (pasl_unit[ln].flags) == TTUF_MODE_8B)
|
||||||
c = pas_par (pas_cmd[ln], pas_xbuf[ln]); /* apply parity */
|
c = pas_par (pas_cmd[ln], pas_xbuf[ln]); /* apply parity */
|
||||||
else c = sim_tt_outcvt (pas_xbuf[ln], TT_GET_MODE (pasl_unit[ln].flags));
|
else c = sim_tt_outcvt (pas_xbuf[ln], TT_GET_MODE (pasl_unit[ln].flags));
|
||||||
if (c >= 0) {
|
if (c >= 0) {
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
pt paper tape reader and punch
|
pt paper tape reader and punch
|
||||||
|
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
10-Apr-03 RMS Fixed type problem in ptr service (from Mark Pizzolato)
|
10-Apr-03 RMS Fixed type problem in ptr service (Mark Pizzolato)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "id_defs.h"
|
#include "id_defs.h"
|
||||||
|
|
|
@ -25,8 +25,8 @@
|
||||||
|
|
||||||
cpu LGP-30 [LGP-21] CPU
|
cpu LGP-30 [LGP-21] CPU
|
||||||
|
|
||||||
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
|
22-Sep-05 RMS Fixed declarations (Sterling Garwood)
|
||||||
04-Sep-05 RMS Fixed missing returns (found by Peter Schorn)
|
04-Sep-05 RMS Fixed missing returns (Peter Schorn)
|
||||||
04-Jan-05 RMS Modified VM pointer setup
|
04-Jan-05 RMS Modified VM pointer setup
|
||||||
|
|
||||||
The system state for the LGP-30 [LGP-21] is:
|
The system state for the LGP-30 [LGP-21] is:
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
17-Sep-01 RMS Added terminal multiplexor support
|
17-Sep-01 RMS Added terminal multiplexor support
|
||||||
17-Mar-01 RMS Moved function prototype
|
17-Mar-01 RMS Moved function prototype
|
||||||
05-Mar-01 RMS Added clock calibration
|
05-Mar-01 RMS Added clock calibration
|
||||||
24-Sep-97 RMS Fixed bug in unit service (found by Charles Owen)
|
24-Sep-97 RMS Fixed bug in unit service (Charles Owen)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "nova_defs.h"
|
#include "nova_defs.h"
|
||||||
|
|
|
@ -34,10 +34,10 @@
|
||||||
'ind_max' changed from 16 to 65536 for better unmapped system compatibility,
|
'ind_max' changed from 16 to 65536 for better unmapped system compatibility,
|
||||||
INT_TRAP added for Nova 3, 4 trap instruction handling,
|
INT_TRAP added for Nova 3, 4 trap instruction handling,
|
||||||
28-Apr-07 RMS Removed clock initialization
|
28-Apr-07 RMS Removed clock initialization
|
||||||
06-Feb-06 RMS Fixed bug in DIVS (found by Mark Hittinger)
|
06-Feb-06 RMS Fixed bug in DIVS (Mark Hittinger)
|
||||||
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
|
22-Sep-05 RMS Fixed declarations (Sterling Garwood)
|
||||||
25-Aug-05 RMS Fixed DIVS case 2^31 / - 1
|
25-Aug-05 RMS Fixed DIVS case 2^31 / - 1
|
||||||
14-Jan-04 RMS Fixed device enable/disable support (found by Bruce Ray)
|
14-Jan-04 RMS Fixed device enable/disable support (Bruce Ray)
|
||||||
19-Jan-03 RMS Changed CMASK to CDMASK for Apple Dev Kit conflict
|
19-Jan-03 RMS Changed CMASK to CDMASK for Apple Dev Kit conflict
|
||||||
03-Oct-02 RMS Added DIB infrastructure
|
03-Oct-02 RMS Added DIB infrastructure
|
||||||
30-Dec-01 RMS Added old PC queue
|
30-Dec-01 RMS Added old PC queue
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
DEV_xxx macros now used for consistency,
|
DEV_xxx macros now used for consistency,
|
||||||
added secret DG DIC function,
|
added secret DG DIC function,
|
||||||
fixed boot info table size calculation
|
fixed boot info table size calculation
|
||||||
15-May-06 RMS Fixed bug in autosize attach (reported by David Gesswein)
|
15-May-06 RMS Fixed bug in autosize attach (David Gesswein)
|
||||||
04-Jan-04 RMS Changed sim_fsize calling sequence
|
04-Jan-04 RMS Changed sim_fsize calling sequence
|
||||||
26-Jul-03 RMS Fixed bug in set size routine
|
26-Jul-03 RMS Fixed bug in set size routine
|
||||||
14-Mar-03 RMS Fixed variable capacity interaction with save/restore
|
14-Mar-03 RMS Fixed variable capacity interaction with save/restore
|
||||||
|
|
|
@ -46,7 +46,7 @@
|
||||||
24-Nov-01 RMS Changed POS, USTAT, FLG to an array
|
24-Nov-01 RMS Changed POS, USTAT, FLG to an array
|
||||||
26-Apr-01 RMS Added device enable/disable support
|
26-Apr-01 RMS Added device enable/disable support
|
||||||
18-Apr-01 RMS Changed to rewind tape before boot
|
18-Apr-01 RMS Changed to rewind tape before boot
|
||||||
10-Dec-00 RMS Added Eclipse support from Charles Owen
|
10-Dec-00 RMS Added Eclipse support (Charles Owen)
|
||||||
15-Oct-00 RMS Editorial changes
|
15-Oct-00 RMS Editorial changes
|
||||||
11-Nov-98 CEO Removed clear of mta_ma on iopC
|
11-Nov-98 CEO Removed clear of mta_ma on iopC
|
||||||
04-Oct-98 RMS V2.4 magtape format
|
04-Oct-98 RMS V2.4 magtape format
|
||||||
|
|
|
@ -41,7 +41,7 @@
|
||||||
15-Oct-00 RMS Added stack, byte, trap instructions
|
15-Oct-00 RMS Added stack, byte, trap instructions
|
||||||
14-Apr-99 RMS Changed t_addr to unsigned
|
14-Apr-99 RMS Changed t_addr to unsigned
|
||||||
27-Oct-98 RMS V2.4 load interface
|
27-Oct-98 RMS V2.4 load interface
|
||||||
24-Sep-97 RMS Fixed bug in device name table (found by Charles Owen)
|
24-Sep-97 RMS Fixed bug in device name table (Charles Owen)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "nova_defs.h"
|
#include "nova_defs.h"
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp1_cpu.c: PDP-1 CPU simulator
|
/* pdp1_cpu.c: PDP-1 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
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,10 +25,11 @@
|
||||||
|
|
||||||
cpu PDP-1 central processor
|
cpu PDP-1 central processor
|
||||||
|
|
||||||
30-May-07 RMS Fixed typo in SBS clear (from Norm Lastovica)
|
210Mar-12 RMS Fixed & vs && in Ea_ch (Michael Bloom)
|
||||||
|
30-May-07 RMS Fixed typo in SBS clear (Norm Lastovica)
|
||||||
28-Dec-06 RMS Added 16-channel SBS support, PDP-1D support
|
28-Dec-06 RMS Added 16-channel SBS support, PDP-1D support
|
||||||
28-Jun-06 RMS Fixed bugs in MUS and DIV
|
28-Jun-06 RMS Fixed bugs in MUS and DIV
|
||||||
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
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
09-Nov-04 RMS Added instruction history
|
09-Nov-04 RMS Added instruction history
|
||||||
07-Sep-03 RMS Added additional explanation on I/O simulation
|
07-Sep-03 RMS Added additional explanation on I/O simulation
|
||||||
|
@ -1406,7 +1407,7 @@ else { /* multi-level */
|
||||||
return STOP_IND;
|
return STOP_IND;
|
||||||
} /* end else !extm */
|
} /* end else !extm */
|
||||||
if (IR & IA) { /* automatic mode? */
|
if (IR & IA) { /* automatic mode? */
|
||||||
if (rm & !sbs_act & ((MB & 0607777) == 0607777)) /* page cross? */
|
if (rm && !sbs_act && ((MB & 0607777) == 0607777)) /* page cross? */
|
||||||
return set_rmv (RTB_CHR);
|
return set_rmv (RTB_CHR);
|
||||||
MB = inc_bp (MB); /* incr byte ptr */
|
MB = inc_bp (MB); /* incr byte ptr */
|
||||||
Write (); /* rewrite */
|
Write (); /* rewrite */
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp1_stddev.c: PDP-1 standard devices
|
/* pdp1_stddev.c: PDP-1 standard devices
|
||||||
|
|
||||||
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
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -28,16 +28,17 @@
|
||||||
tti keyboard
|
tti keyboard
|
||||||
tto teleprinter
|
tto teleprinter
|
||||||
|
|
||||||
|
21-Mar-12 RMS Fixed unitialized variable in tto_svc (Michael Bloom)
|
||||||
21-Dec-06 RMS Added 16-channel sequence break support
|
21-Dec-06 RMS Added 16-channel sequence break support
|
||||||
29-Oct-03 RMS Added PTR FIODEC-to-ASCII translation (from Phil Budne)
|
29-Oct-03 RMS Added PTR FIODEC-to-ASCII translation (Phil Budne)
|
||||||
07-Sep-03 RMS Changed ioc to ios
|
07-Sep-03 RMS Changed ioc to ios
|
||||||
30-Aug-03 RMS Revised PTR to conform to Maintenance Manual;
|
30-Aug-03 RMS Revised PTR to conform to Maintenance Manual;
|
||||||
added deadlock prevention on errors
|
added deadlock prevention on errors
|
||||||
23-Jul-03 RMS Revised to detect I/O wait hang
|
23-Jul-03 RMS Revised to detect I/O wait hang
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
22-Dec-02 RMS Added break support
|
22-Dec-02 RMS Added break support
|
||||||
29-Nov-02 RMS Fixed output flag initialization (found by Derek Peschel)
|
29-Nov-02 RMS Fixed output flag initialization (Derek Peschel)
|
||||||
21-Nov-02 RMS Changed typewriter to half duplex (found by Derek Peschel)
|
21-Nov-02 RMS Changed typewriter to half duplex (Derek Peschel)
|
||||||
06-Oct-02 RMS Revised for V2.10
|
06-Oct-02 RMS Revised for V2.10
|
||||||
30-May-02 RMS Widened POS to 32b
|
30-May-02 RMS Widened POS to 32b
|
||||||
29-Nov-01 RMS Added read only unit support
|
29-Nov-01 RMS Added read only unit support
|
||||||
|
@ -591,7 +592,6 @@ return SCPE_OK;
|
||||||
|
|
||||||
t_stat tto_svc (UNIT *uptr)
|
t_stat tto_svc (UNIT *uptr)
|
||||||
{
|
{
|
||||||
int32 c;
|
|
||||||
t_stat r;
|
t_stat r;
|
||||||
|
|
||||||
if (tty_buf == FIODEC_UC) /* upper case? */
|
if (tty_buf == FIODEC_UC) /* upper case? */
|
||||||
|
@ -599,11 +599,16 @@ if (tty_buf == FIODEC_UC) /* upper case? */
|
||||||
else if (tty_buf == FIODEC_LC) /* lower case? */
|
else if (tty_buf == FIODEC_LC) /* lower case? */
|
||||||
tty_uc = 0;
|
tty_uc = 0;
|
||||||
else {
|
else {
|
||||||
|
int32 c;
|
||||||
c = fiodec_to_ascii[tty_buf | tty_uc]; /* translate */
|
c = fiodec_to_ascii[tty_buf | tty_uc]; /* translate */
|
||||||
if (c && ((r = sim_putchar_s (c)) != SCPE_OK)) { /* output; error? */
|
if (c && ((r = sim_putchar_s (c)) != SCPE_OK)) { /* output; error? */
|
||||||
sim_activate (uptr, uptr->wait); /* retry */
|
sim_activate (uptr, uptr->wait); /* retry */
|
||||||
return ((r == SCPE_STALL)? SCPE_OK: r);
|
return ((r == SCPE_STALL)? SCPE_OK: r);
|
||||||
}
|
}
|
||||||
|
if (c == '\r') { /* cr? add lf */
|
||||||
|
sim_putchar ('\n');
|
||||||
|
uptr->pos = uptr->pos + 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (cpls & CPLS_TTO) { /* completion pulse? */
|
if (cpls & CPLS_TTO) { /* completion pulse? */
|
||||||
ios = 1; /* restart */
|
ios = 1; /* restart */
|
||||||
|
@ -612,10 +617,6 @@ if (cpls & CPLS_TTO) { /* completion pulse? */
|
||||||
iosta = iosta | IOS_TTO; /* set flag */
|
iosta = iosta | IOS_TTO; /* set flag */
|
||||||
dev_req_int (tto_sbs); /* req interrupt */
|
dev_req_int (tto_sbs); /* req interrupt */
|
||||||
uptr->pos = uptr->pos + 1;
|
uptr->pos = uptr->pos + 1;
|
||||||
if (c == '\r') { /* cr? add lf */
|
|
||||||
sim_putchar ('\n');
|
|
||||||
uptr->pos = uptr->pos + 1;
|
|
||||||
}
|
|
||||||
return SCPE_OK;
|
return SCPE_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -29,12 +29,12 @@
|
||||||
Fixed bug in DIVx (LntDstr calculation)
|
Fixed bug in DIVx (LntDstr calculation)
|
||||||
30-May-06 RMS Added interrupt tests to character instructions
|
30-May-06 RMS Added interrupt tests to character instructions
|
||||||
Added 11/44 stack probe test to MOVCx (only)
|
Added 11/44 stack probe test to MOVCx (only)
|
||||||
22-May-06 RMS Fixed bug in decode table (found by John Dundas)
|
22-May-06 RMS Fixed bug in decode table (John Dundas)
|
||||||
Fixed bug in ASHP (reported by John Dundas)
|
Fixed bug in ASHP (John Dundas)
|
||||||
Fixed bug in write decimal string with mmgt enabled
|
Fixed bug in write decimal string with mmgt enabled
|
||||||
Fixed bug in 0-length strings in multiply/divide
|
Fixed bug in 0-length strings in multiply/divide
|
||||||
16-Sep-04 RMS Fixed bug in CMPP/N of negative strings
|
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
|
08-Oct-02 RMS Fixed macro definitions
|
||||||
|
|
||||||
The commercial instruction set consists of three instruction formats:
|
The commercial instruction set consists of three instruction formats:
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp11_cpu.c: PDP-11 CPU simulator
|
/* 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
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,19 +25,20 @@
|
||||||
|
|
||||||
cpu PDP-11 CPU
|
cpu PDP-11 CPU
|
||||||
|
|
||||||
29-Dec-08 RMS Fixed failure to clear cpu_bme on RESET (found by Walter Mueller)
|
19-Mar-12 RMS Fixed declaration of sim_switches (Mark Pizzolato)
|
||||||
22-Apr-08 RMS Fixed MMR0 treatment in RESET (found by Walter Mueller)
|
29-Dec-08 RMS Fixed failure to clear cpu_bme on RESET (Walter Mueller)
|
||||||
02-Feb-08 RMS Fixed DMA memory address limit test (found by John Dundas)
|
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
|
28-Apr-07 RMS Removed clock initialization
|
||||||
27-Oct-06 RMS Added idle support
|
27-Oct-06 RMS Added idle support
|
||||||
18-Oct-06 RMS Fixed bug in ASH -32 C value
|
18-Oct-06 RMS Fixed bug in ASH -32 C value
|
||||||
24-May-06 RMS Added instruction history
|
24-May-06 RMS Added instruction history
|
||||||
03-May-06 RMS Fixed XOR operand fetch order for 11/70-style systems
|
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
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
19-May-05 RMS Replaced WAIT clock queue check with API call
|
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)
|
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 (from John Dundas)
|
22-Dec-04 RMS Fixed WAIT to work in all modes (John Dundas)
|
||||||
02-Oct-04 RMS Added model emulation
|
02-Oct-04 RMS Added model emulation
|
||||||
25-Jan-04 RMS Removed local debug logging support
|
25-Jan-04 RMS Removed local debug logging support
|
||||||
29-Dec-03 RMS Formalized 18b Qbus 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
|
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
|
19-Jan-03 RMS Changed mode definitions for Apple Dev Kit conflict
|
||||||
05-Jan-03 RMS Added memory size restore support
|
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
|
08-Oct-02 RMS Revised to build dib_tab dynamically
|
||||||
Added SHOW IOSPACE
|
Added SHOW IOSPACE
|
||||||
09-Sep-02 RMS Added KW11P support
|
09-Sep-02 RMS Added KW11P support
|
||||||
14-Jul-02 RMS Fixed bug in MMR0 error status load
|
14-Jul-02 RMS Fixed bug in MMR0 error status load
|
||||||
03-Jun-02 RMS Fixed relocation add overflow, added PS<15:12> = 1111
|
03-Jun-02 RMS Fixed relocation add overflow, added PS<15:12> = 1111
|
||||||
special case logic to MFPI and removed it from MTPI
|
special case logic to MFPI and removed it from MTPI
|
||||||
(found by John Dundas)
|
(John Dundas)
|
||||||
29-Apr-02 RMS More fixes to DIV and ASH/ASHC (found by 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
|
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,
|
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+
|
04-Mar-02 RMS Changed double operand evaluation order for M+
|
||||||
23-Feb-02 RMS Fixed bug in MAINT, CPUERR, MEMERR read
|
23-Feb-02 RMS Fixed bug in MAINT, CPUERR, MEMERR read
|
||||||
28-Jan-02 RMS Revised for multiple timers; fixed calc_MMR1 macros
|
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-Apr-01 RMS Added TS11/TSV05 support
|
||||||
05-Mar-01 RMS Added clock calibration support
|
05-Mar-01 RMS Added clock calibration support
|
||||||
11-Feb-01 RMS Added DECtape 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
|
14-Apr-99 RMS Changed t_addr to unsigned
|
||||||
18-Aug-98 RMS Added CIS support
|
18-Aug-98 RMS Added CIS support
|
||||||
09-May-98 RMS Fixed bug in DIV overflow test
|
09-May-98 RMS Fixed bug in DIV overflow test
|
||||||
|
|
|
@ -27,12 +27,12 @@
|
||||||
|
|
||||||
20-May-08 RMS Added JCSR default for KDJ11B, KDJ11E
|
20-May-08 RMS Added JCSR default for KDJ11B, KDJ11E
|
||||||
22-Apr-08 RMS Fixed write behavior of 11/70 MBRK, LOSIZE, HISIZE
|
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
|
29-Apr-07 RMS Don't run bus setup routine during RESTORE
|
||||||
30-Aug-05 RMS Added additional 11/60 registers
|
30-Aug-05 RMS Added additional 11/60 registers
|
||||||
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
15-Feb-05 RMS Fixed bug in SHOW MODEL (from Sergey Okhapkin)
|
15-Feb-05 RMS Fixed bug in SHOW MODEL (Sergey Okhapkin)
|
||||||
19-Jan-05 RMS Added variable SYSID, MBRK write (from Tim Chapman)
|
19-Jan-05 RMS Added variable SYSID, MBRK write (Tim Chapman)
|
||||||
|
|
||||||
This module includes CPU- and system-specific registers, such as the Unibus
|
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
|
map and control registers on 22b Unibus systems, the board registers for the
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
|
|
||||||
dz DZ11 terminal multiplexor
|
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
|
19-Nov-08 RMS Revised for common TMXR show routines
|
||||||
18-Jun-07 RMS Added UNIT_IDLE flag
|
18-Jun-07 RMS Added UNIT_IDLE flag
|
||||||
29-Oct-06 RMS Synced poll and clock
|
29-Oct-06 RMS Synced poll and clock
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
used in advertising or otherwise to promote the sale, use or other dealings
|
used in advertising or otherwise to promote the sale, use or other dealings
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
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
|
04-Oct-04 RMS Added FIS instructions
|
||||||
19-Jan-03 RMS Changed mode definitions for Apple Dev Kit conflict
|
19-Jan-03 RMS Changed mode definitions for Apple Dev Kit conflict
|
||||||
08-Oct-02 RMS Fixed macro definitions
|
08-Oct-02 RMS Fixed macro definitions
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp11_hk.c - RK611/RK06/RK07 disk controller
|
/* 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
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,6 +25,7 @@
|
||||||
|
|
||||||
hk RK611/RK06/RK07 disk
|
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
|
29-Apr-07 RMS NOP and DCLR (at least) do not check drive type
|
||||||
MR2 and MR3 only updated on NOP
|
MR2 and MR3 only updated on NOP
|
||||||
17-Nov-05 RMS Removed unused variable
|
17-Nov-05 RMS Removed unused variable
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp11_io.c: PDP-11 I/O simulator
|
/* 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
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
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
|
used in advertising or otherwise to promote the sale, use or other dealings
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
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
|
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
|
19-Nov-08 RMS Moved I/O support routines to I/O library
|
||||||
16-May-08 RMS Added multiple DC11 support
|
16-May-08 RMS Added multiple DC11 support
|
||||||
Renamed DL11 in autoconfigure
|
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
|
06-Jul-06 RMS Added multiple KL11/DL11 support
|
||||||
15-Oct-05 RMS Fixed bug in autoconfiguration (missing XU)
|
15-Oct-05 RMS Fixed bug in autoconfiguration (missing XU)
|
||||||
25-Jul-05 RMS Revised autoconfiguration algorithm and interface
|
25-Jul-05 RMS Revised autoconfiguration algorithm and interface
|
||||||
30-Sep-04 RMS Revised Unibus 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
|
25-Jan-04 RMS Removed local debug logging support
|
||||||
21-Dec-03 RMS Fixed bug in autoconfigure vector assignment; added controls
|
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
|
12-Mar-03 RMS Added logical name support
|
||||||
08-Oct-02 RMS Trimmed I/O bus addresses
|
08-Oct-02 RMS Trimmed I/O bus addresses
|
||||||
Added support for dynamic tables
|
Added support for dynamic tables
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp11_rf.c: RF11 fixed head disk simulator
|
/* 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
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,7 +25,8 @@
|
||||||
|
|
||||||
rf RF11 fixed head disk
|
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
|
26-Jun-06 RMS Cloned from RF08 simulator
|
||||||
|
|
||||||
The RF11 is a head-per-track disk. To minimize overhead, the entire RF11
|
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 */
|
} while ((rf_wc != 0) && (rf_burst != 0)); /* brk if wc, no brst */
|
||||||
|
|
||||||
rf_da = da & DMASK; /* split da */
|
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_cma = ma & DMASK; /* split ma */
|
||||||
rf_cs = (rf_cs & ~RFCS_MEX) | ((ma >> (16 - RFCS_V_MEX)) & RFCS_MEX);
|
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? */
|
if ((rf_wc != 0) && ((rf_cs & RFCS_ERR) == 0)) /* more to do? */
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp11_rh.c: PDP-11 Massbus adapter simulator
|
/* 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
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,7 +25,8 @@
|
||||||
|
|
||||||
rha, rhb RH11/RH70 Massbus adapter
|
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
|
17-May-07 RMS Moved CS1 drive enable to devices
|
||||||
21-Nov-05 RMS Added enable/disable routine
|
21-Nov-05 RMS Added enable/disable routine
|
||||||
07-Jul-05 RMS Removed extraneous externs
|
07-Jul-05 RMS Removed extraneous externs
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
|
|
||||||
rk RK11/RKV11/RK05 cartridge disk
|
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
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
07-Jul-05 RMS Removed extraneous externs
|
07-Jul-05 RMS Removed extraneous externs
|
||||||
30-Sep-04 RMS Revised Unibus interface
|
30-Sep-04 RMS Revised Unibus interface
|
||||||
|
|
|
@ -39,7 +39,7 @@
|
||||||
SET RLn ONLINE/OFFLINE
|
SET RLn ONLINE/OFFLINE
|
||||||
SET RL RLV11/RLV12 (PDP-11 only)
|
SET RL RLV11/RLV12 (PDP-11 only)
|
||||||
SET RL DEBUG/NODEBUG
|
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
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
07-Jul-05 RMS Removed extraneous externs
|
07-Jul-05 RMS Removed extraneous externs
|
||||||
30-Sep-04 RMS Revised Unibus interface
|
30-Sep-04 RMS Revised Unibus interface
|
||||||
|
|
|
@ -43,20 +43,20 @@
|
||||||
18-Jun-07 RMS Added UNIT_IDLE flag to timer thread
|
18-Jun-07 RMS Added UNIT_IDLE flag to timer thread
|
||||||
31-Oct-05 RMS Fixed address width for large files
|
31-Oct-05 RMS Fixed address width for large files
|
||||||
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
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
|
17-Jan-05 RMS Added more RA and RD disks
|
||||||
31-Oct-04 RMS Added -L switch (LBNs) to RAUSER size specification
|
31-Oct-04 RMS Added -L switch (LBNs) to RAUSER size specification
|
||||||
01-Oct-04 RMS Revised Unibus interface
|
01-Oct-04 RMS Revised Unibus interface
|
||||||
Changed to identify as UDA50 in Unibus configurations
|
Changed to identify as UDA50 in Unibus configurations
|
||||||
Changed width to be 16b in all configurations
|
Changed width to be 16b in all configurations
|
||||||
Changed default timing for VAX
|
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
|
05-Feb-04 RMS Revised for file I/O library
|
||||||
25-Jan-04 RMS Revised for device debug support
|
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
|
07-Oct-03 RMS Fixed problem with multiple RAUSER drives
|
||||||
17-Sep-03 RMS Fixed MB to LBN conversion to be more accurate
|
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
|
19-May-03 RMS Revised for new conditional compilation scheme
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
14-Mar-03 RMS Fixed variable size interaction with save/restore
|
14-Mar-03 RMS Fixed variable size interaction with save/restore
|
||||||
|
@ -70,7 +70,7 @@
|
||||||
Fixed status code in HBE error log
|
Fixed status code in HBE error log
|
||||||
Consolidated MSCP/TMSCP header file
|
Consolidated MSCP/TMSCP header file
|
||||||
New data structures
|
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
|
04-May-02 RMS Fixed bug in polling loop for queued operations
|
||||||
26-Mar-02 RMS Fixed bug, reset routine cleared UF_WPH
|
26-Mar-02 RMS Fixed bug, reset routine cleared UF_WPH
|
||||||
09-Mar-02 RMS Adjusted delays for M+ timing bugs
|
09-Mar-02 RMS Adjusted delays for M+ timing bugs
|
||||||
|
|
|
@ -25,9 +25,9 @@
|
||||||
|
|
||||||
ry RX211/RXV21/RX02 floppy disk
|
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
|
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
|
30-Sep-04 RMS Revised Unibus interface
|
||||||
21-Mar-04 RMS Added VAX support
|
21-Mar-04 RMS Added VAX support
|
||||||
29-Dec-03 RMS Added RXV21 support
|
29-Dec-03 RMS Added RXV21 support
|
||||||
|
|
|
@ -32,7 +32,7 @@
|
||||||
Added clock coscheduling support
|
Added clock coscheduling support
|
||||||
05-Jul-06 RMS Added UC only support for early DOS/RSTS
|
05-Jul-06 RMS Added UC only support for early DOS/RSTS
|
||||||
22-Nov-05 RMS Revised for new terminal processing routines
|
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
|
07-Jul-05 RMS Removed extraneous externs
|
||||||
11-Oct-04 RMS Added clock model dependencies
|
11-Oct-04 RMS Added clock model dependencies
|
||||||
28-May-04 RMS Removed SET TTI CTRL-C
|
28-May-04 RMS Removed SET TTI CTRL-C
|
||||||
|
@ -46,7 +46,7 @@
|
||||||
Split DL11 dibs
|
Split DL11 dibs
|
||||||
30-May-02 RMS Widened POS to 32b
|
30-May-02 RMS Widened POS to 32b
|
||||||
26-Jan-02 RMS Revised for multiple timers
|
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
|
06-Jan-02 RMS Split I/O address routines, revised enable/disable support
|
||||||
29-Nov-01 RMS Added read only unit support
|
29-Nov-01 RMS Added read only unit support
|
||||||
09-Nov-01 RMS Added RQDX3 support
|
09-Nov-01 RMS Added RQDX3 support
|
||||||
|
|
|
@ -27,16 +27,16 @@
|
||||||
15-May-08 RMS Added KE11-A, DC11 support
|
15-May-08 RMS Added KE11-A, DC11 support
|
||||||
Renamed DL11
|
Renamed DL11
|
||||||
04-Feb-08 RMS Modified to allow -A, -B use with 8b devices
|
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
|
10-Sep-07 RMS Cleaned up binary loader
|
||||||
20-Dec-06 RMS Added TA11 support
|
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
|
14-Jul-06 RMS Reordered device list
|
||||||
06-Jul-06 RMS Added multiple KL11/DL11 support
|
06-Jul-06 RMS Added multiple KL11/DL11 support
|
||||||
26-Jun-06 RMS Added RF11 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
|
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
|
22-Dec-03 RMS Added second DEUNA/DELUA support
|
||||||
18-Oct-03 RMS Added DECtape off reel message
|
18-Oct-03 RMS Added DECtape off reel message
|
||||||
06-May-03 RMS Added support for second DEQNA/DELQA
|
06-May-03 RMS Added support for second DEQNA/DELQA
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
tc TC11/TU56 DECtape
|
tc TC11/TU56 DECtape
|
||||||
|
|
||||||
23-Jun-06 RMS Fixed switch conflict in ATTACH
|
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
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
07-Jul-05 RMS Removed extraneous externs
|
07-Jul-05 RMS Removed extraneous externs
|
||||||
30-Sep-04 RMS Revised Unibus interface
|
30-Sep-04 RMS Revised Unibus interface
|
||||||
|
|
|
@ -46,23 +46,22 @@
|
||||||
28-Aug-02 RMS Added end of medium support
|
28-Aug-02 RMS Added end of medium support
|
||||||
30-May-02 RMS Widened POS to 32b
|
30-May-02 RMS Widened POS to 32b
|
||||||
22-Apr-02 RMS Fixed max record length, first block bootstrap
|
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
|
26-Jan-02 RMS Revised bootstrap to conform to M9312
|
||||||
06-Jan-02 RMS Revised enable/disable support
|
06-Jan-02 RMS Revised enable/disable support
|
||||||
30-Nov-01 RMS Added read only unit, extended SET/SHOW support
|
30-Nov-01 RMS Added read only unit, extended SET/SHOW support
|
||||||
24-Nov-01 RMS Converted UST, POS, FLG to arrays
|
24-Nov-01 RMS Converted UST, POS, FLG to arrays
|
||||||
09-Nov-01 RMS Added bus map support
|
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
|
07-Sep-01 RMS Revised device disable and interrupt mechanisms
|
||||||
26-Apr-01 RMS Added device enable/disable support
|
26-Apr-01 RMS Added device enable/disable support
|
||||||
18-Apr-01 RMS Changed to rewind tape before boot
|
18-Apr-01 RMS Changed to rewind tape before boot
|
||||||
14-Apr-99 RMS Changed t_addr to unsigned
|
14-Apr-99 RMS Changed t_addr to unsigned
|
||||||
04-Oct-98 RMS V2.4 magtape format
|
04-Oct-98 RMS V2.4 magtape format
|
||||||
10-May-98 RMS Fixed bug with non-zero unit operation (from Steven Schultz)
|
10-May-98 RMS Fixed bug with non-zero unit operation (Steven Schultz)
|
||||||
09-May-98 RMS Fixed problems in bootstrap (from Steven Schultz)
|
09-May-98 RMS Fixed problems in bootstrap (Steven Schultz)
|
||||||
10-Apr-98 RMS Added 2nd block bootstrap (from John Holden,
|
10-Apr-98 RMS Added 2nd block bootstrap (John Holden)
|
||||||
University of Sydney)
|
31-Jul-97 RMS Added bootstrap (Ethan Dicks)
|
||||||
31-Jul-97 RMS Added bootstrap (from Ethan Dicks, Ohio State)
|
|
||||||
22-Jan-97 RMS V2.3 magtape format
|
22-Jan-97 RMS V2.3 magtape format
|
||||||
18-Jan-97 RMS Fixed double interrupt, error flag bugs
|
18-Jan-97 RMS Fixed double interrupt, error flag bugs
|
||||||
29-Jun-96 RMS Added unit disable support
|
29-Jun-96 RMS Added unit disable support
|
||||||
|
|
|
@ -49,10 +49,10 @@
|
||||||
16-Feb-06 RMS Revised for new magtape capacity checking
|
16-Feb-06 RMS Revised for new magtape capacity checking
|
||||||
31-Oct-05 RMS Fixed address width for large files
|
31-Oct-05 RMS Fixed address width for large files
|
||||||
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
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
|
30-Sep-04 RMS Revised Unibus interface
|
||||||
12-Jun-04 RMS Fixed bug in reporting write protect (reported by Lyle Bickley)
|
12-Jun-04 RMS Fixed bug in reporting write protect (Lyle Bickley)
|
||||||
18-Apr-04 RMS Fixed TQK70 media ID and model byte (found by Robert Schaffrath)
|
18-Apr-04 RMS Fixed TQK70 media ID and model byte (Robert Schaffrath)
|
||||||
26-Mar-04 RMS Fixed warnings with -std=c99
|
26-Mar-04 RMS Fixed warnings with -std=c99
|
||||||
25-Jan-04 RMS Revised for device debug support
|
25-Jan-04 RMS Revised for device debug support
|
||||||
19-May-03 RMS Revised for new conditional compilation scheme
|
19-May-03 RMS Revised for new conditional compilation scheme
|
||||||
|
@ -63,7 +63,7 @@
|
||||||
22-Feb-03 RMS Fixed ordering bug in queue process
|
22-Feb-03 RMS Fixed ordering bug in queue process
|
||||||
Fixed flags table to allow MD_CSE everywhere
|
Fixed flags table to allow MD_CSE everywhere
|
||||||
09-Jan-03 RMS Fixed bug in transfer end packet status
|
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 */
|
#if defined (VM_PDP10) /* PDP10 version */
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp11_ts.c: TS11/TSV05 magnetic tape simulator
|
/* 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
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -26,7 +26,7 @@
|
||||||
ts TS11/TSV05 magtape
|
ts TS11/TSV05 magtape
|
||||||
|
|
||||||
22-May-10 RMS Fixed t_addr printouts for 64b big-endian systems
|
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
|
16-Feb-06 RMS Added tape capacity checking
|
||||||
31-Oct-05 RMS Fixed address width for large files
|
31-Oct-05 RMS Fixed address width for large files
|
||||||
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
|
@ -59,7 +59,7 @@
|
||||||
19-Sep-01 RMS Fixed bug in bootstrap
|
19-Sep-01 RMS Fixed bug in bootstrap
|
||||||
15-Sep-01 RMS Fixed bug in NXM test
|
15-Sep-01 RMS Fixed bug in NXM test
|
||||||
07-Sep-01 RMS Revised device disable and interrupt mechanism
|
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
|
Magnetic tapes are represented as a series of variable 8b records
|
||||||
of the form:
|
of the form:
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp11_tu.c - PDP-11 TM02/TU16 TM03/TU45/TU77 Massbus magnetic tape controller
|
/* 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
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
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
|
18-Apr-11 MP Fixed t_addr printouts for 64b big-endian systems
|
||||||
17-May-07 RMS CS1 DVA resides in device, not MBA
|
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
|
16-Feb-06 RMS Added tape capacity checking
|
||||||
12-Nov-05 RMS Changed default formatter to TM03 (for VMS)
|
12-Nov-05 RMS Changed default formatter to TM03 (for VMS)
|
||||||
31-Oct-05 RMS Fixed address width for large files
|
31-Oct-05 RMS Fixed address width for large files
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp11_vh.c: DHQ11 asynchronous terminal multiplexor simulator
|
/* 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
|
Portions derived from work by Robert M Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
cpu PDP-4/7/9/15 central processor
|
cpu PDP-4/7/9/15 central processor
|
||||||
|
|
||||||
28-Apr-07 RMS Removed clock initialization
|
28-Apr-07 RMS Removed clock initialization
|
||||||
26-Dec-06 RMS Fixed boundary test in KT15/XVM (reported by Andrew Warkentin)
|
26-Dec-06 RMS Fixed boundary test in KT15/XVM (Andrew Warkentin)
|
||||||
30-Oct-06 RMS Added idle and infinite loop detection
|
30-Oct-06 RMS Added idle and infinite loop detection
|
||||||
08-Oct-06 RMS Added RDCLK instruction
|
08-Oct-06 RMS Added RDCLK instruction
|
||||||
Fixed bug, PC off by one on fetch mem mmgt error
|
Fixed bug, PC off by one on fetch mem mmgt error
|
||||||
|
@ -34,7 +34,7 @@
|
||||||
PDP-15 sets API 4 on CAL only if 0-3 inactive
|
PDP-15 sets API 4 on CAL only if 0-3 inactive
|
||||||
CAF clears memory management mode register
|
CAF clears memory management mode register
|
||||||
27-Jun-06 RMS Reset clears AC, L, and MQ
|
27-Jun-06 RMS Reset clears AC, L, and MQ
|
||||||
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
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
22-Jul-05 RMS Removed AAS, error in V1 reference manual
|
22-Jul-05 RMS Removed AAS, error in V1 reference manual
|
||||||
06-Nov-04 RMS Added =n to SHOW HISTORY
|
06-Nov-04 RMS Added =n to SHOW HISTORY
|
||||||
|
@ -56,14 +56,14 @@
|
||||||
Fixed memory protect/skip interaction
|
Fixed memory protect/skip interaction
|
||||||
Fixed CAF not to reset CPU
|
Fixed CAF not to reset CPU
|
||||||
12-Mar-03 RMS Added logical name support
|
12-Mar-03 RMS Added logical name support
|
||||||
18-Feb-03 RMS Fixed three EAE bugs (found by Hans Pufal)
|
18-Feb-03 RMS Fixed three EAE bugs (Hans Pufal)
|
||||||
05-Oct-02 RMS Added DIBs, device number support
|
05-Oct-02 RMS Added DIBs, device number support
|
||||||
25-Jul-02 RMS Added DECtape support for PDP-4
|
25-Jul-02 RMS Added DECtape support for PDP-4
|
||||||
06-Jan-02 RMS Revised enable/disable support
|
06-Jan-02 RMS Revised enable/disable support
|
||||||
30-Dec-01 RMS Added old PC queue
|
30-Dec-01 RMS Added old PC queue
|
||||||
30-Nov-01 RMS Added extended SET/SHOW support
|
30-Nov-01 RMS Added extended SET/SHOW support
|
||||||
25-Nov-01 RMS Revised interrupt structure
|
25-Nov-01 RMS Revised interrupt structure
|
||||||
19-Sep-01 RMS Fixed bug in EAE (found by Dave Conroy)
|
19-Sep-01 RMS Fixed bug in EAE (Dave Conroy)
|
||||||
17-Sep-01 RMS Fixed typo in conditional
|
17-Sep-01 RMS Fixed typo in conditional
|
||||||
10-Aug-01 RMS Removed register from declarations
|
10-Aug-01 RMS Removed register from declarations
|
||||||
17-Jul-01 RMS Moved function prototype
|
17-Jul-01 RMS Moved function prototype
|
||||||
|
@ -2132,7 +2132,7 @@ if (usmd && (sw & SWMASK ('V'))) {
|
||||||
addr = RelocXVM (addr, REL_C);
|
addr = RelocXVM (addr, REL_C);
|
||||||
else if (RELOC)
|
else if (RELOC)
|
||||||
addr = Reloc15 (addr, REL_C);
|
addr = Reloc15 (addr, REL_C);
|
||||||
if (((int32)addr) < 0)
|
if (((int32) addr) < 0)
|
||||||
return STOP_MME;
|
return STOP_MME;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -2153,7 +2153,7 @@ if (usmd && (sw & SWMASK ('V'))) {
|
||||||
addr = RelocXVM (addr, REL_C);
|
addr = RelocXVM (addr, REL_C);
|
||||||
else if (RELOC)
|
else if (RELOC)
|
||||||
addr = Reloc15 (addr, REL_C);
|
addr = Reloc15 (addr, REL_C);
|
||||||
if (((int32)addr) < 0)
|
if (((int32) addr) < 0)
|
||||||
return STOP_MME;
|
return STOP_MME;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
05-Dec-02 RMS Updated from Type 24 documentation
|
05-Dec-02 RMS Updated from Type 24 documentation
|
||||||
22-Nov-02 RMS Added PDP-4 support
|
22-Nov-02 RMS Added PDP-4 support
|
||||||
05-Feb-02 RMS Added DIB, device number support
|
05-Feb-02 RMS Added DIB, device number support
|
||||||
03-Feb-02 RMS Fixed bug in reset routine (found by Robert Alan Byer)
|
03-Feb-02 RMS Fixed bug in reset routine (Robert Alan Byer)
|
||||||
06-Jan-02 RMS Revised enable/disable support
|
06-Jan-02 RMS Revised enable/disable support
|
||||||
25-Nov-01 RMS Revised interrupt structure
|
25-Nov-01 RMS Revised interrupt structure
|
||||||
10-Jun-01 RMS Cleaned up IOT decoding to reflect hardware
|
10-Jun-01 RMS Cleaned up IOT decoding to reflect hardware
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp18b_fpp.c: FP15 floating point processor simulator
|
/* pdp18b_fpp.c: FP15 floating point processor simulator
|
||||||
|
|
||||||
Copyright (c) 2003-2008, Robert M Supnik
|
Copyright (c) 2003-2012, Robert M Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,6 +25,7 @@
|
||||||
|
|
||||||
fpp PDP-15 floating point processor
|
fpp PDP-15 floating point processor
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed declaration of pc queue (Mark Pizzolato)
|
||||||
06-Jul-06 RMS Fixed bugs in left shift, multiply
|
06-Jul-06 RMS Fixed bugs in left shift, multiply
|
||||||
31-Oct-04 RMS Fixed URFST to mask low 9b of fraction
|
31-Oct-04 RMS Fixed URFST to mask low 9b of fraction
|
||||||
Fixed exception PC setting
|
Fixed exception PC setting
|
||||||
|
|
|
@ -36,7 +36,7 @@
|
||||||
05-Feb-03 RMS Added LP09, fixed conditionalization
|
05-Feb-03 RMS Added LP09, fixed conditionalization
|
||||||
05-Oct-02 RMS Added DIB, device number support
|
05-Oct-02 RMS Added DIB, device number support
|
||||||
30-May-02 RMS Widened POS to 32b
|
30-May-02 RMS Widened POS to 32b
|
||||||
03-Feb-02 RMS Fixed typo (found by Robert Alan Byer)
|
03-Feb-02 RMS Fixed typo (Robert Alan Byer)
|
||||||
25-Nov-01 RMS Revised interrupt structure
|
25-Nov-01 RMS Revised interrupt structure
|
||||||
19-Sep-01 RMS Fixed bug in 647
|
19-Sep-01 RMS Fixed bug in 647
|
||||||
13-Feb-01 RMS Revised for register arrays
|
13-Feb-01 RMS Revised for register arrays
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
(PDP-15) RF15/RS09
|
(PDP-15) RF15/RS09
|
||||||
|
|
||||||
04-Oct-06 RMS Fixed bug, DSCD does not clear function register
|
04-Oct-06 RMS Fixed bug, DSCD does not clear function register
|
||||||
15-May-06 RMS Fixed bug in autosize attach (reported by David Gesswein)
|
15-May-06 RMS Fixed bug in autosize attach (David Gesswein)
|
||||||
14-Jan-04 RMS Revised IO device call interface
|
14-Jan-04 RMS Revised IO device call interface
|
||||||
Changed sim_fsize calling sequence
|
Changed sim_fsize calling sequence
|
||||||
26-Oct-03 RMS Cleaned up buffer copy code
|
26-Oct-03 RMS Cleaned up buffer copy code
|
||||||
|
|
|
@ -53,7 +53,7 @@
|
||||||
22-Dec-02 RMS Added break support
|
22-Dec-02 RMS Added break support
|
||||||
01-Nov-02 RMS Added 7B/8B support to terminal
|
01-Nov-02 RMS Added 7B/8B support to terminal
|
||||||
05-Oct-02 RMS Added DIBs, device number support, IORS call
|
05-Oct-02 RMS Added DIBs, device number support, IORS call
|
||||||
14-Jul-02 RMS Added ASCII reader/punch support (from Hans Pufal)
|
14-Jul-02 RMS Added ASCII reader/punch support (Hans Pufal)
|
||||||
30-May-02 RMS Widened POS to 32b
|
30-May-02 RMS Widened POS to 32b
|
||||||
29-Nov-01 RMS Added read only unit support
|
29-Nov-01 RMS Added read only unit support
|
||||||
25-Nov-01 RMS Revised interrupt structure
|
25-Nov-01 RMS Revised interrupt structure
|
||||||
|
|
|
@ -34,12 +34,12 @@
|
||||||
30-Jul-03 RMS Fixed FPM class mask
|
30-Jul-03 RMS Fixed FPM class mask
|
||||||
18-Jul-03 RMS Added FP15 support
|
18-Jul-03 RMS Added FP15 support
|
||||||
02-Mar-03 RMS Split loaders apart for greater flexibility
|
02-Mar-03 RMS Split loaders apart for greater flexibility
|
||||||
09-Feb-03 RMS Fixed bug in FMTASC (found by Hans Pufal)
|
09-Feb-03 RMS Fixed bug in FMTASC (Hans Pufal)
|
||||||
31-Jan-03 RMS Added support for RB09
|
31-Jan-03 RMS Added support for RB09
|
||||||
05-Oct-02 RMS Added variable device number support
|
05-Oct-02 RMS Added variable device number support
|
||||||
25-Jul-02 RMS Added PDP-4 DECtape support
|
25-Jul-02 RMS Added PDP-4 DECtape support
|
||||||
10-Feb-02 RMS Added PDP-7 DECtape IOT's
|
10-Feb-02 RMS Added PDP-7 DECtape IOT's
|
||||||
03-Feb-02 RMS Fixed typo (found by Robert Alan Byer)
|
03-Feb-02 RMS Fixed typo (Robert Alan Byer)
|
||||||
17-Sep-01 RMS Removed multiconsole support
|
17-Sep-01 RMS Removed multiconsole support
|
||||||
27-May-01 RMS Added second Teletype support
|
27-May-01 RMS Added second Teletype support
|
||||||
18-May-01 RMS Added PDP-9,-15 API IOT's
|
18-May-01 RMS Added PDP-9,-15 API IOT's
|
||||||
|
@ -49,8 +49,7 @@
|
||||||
30-Nov-00 RMS Added PDP-9,-15 RIM/BIN loader format
|
30-Nov-00 RMS Added PDP-9,-15 RIM/BIN loader format
|
||||||
30-Oct-00 RMS Added support for examine to file
|
30-Oct-00 RMS Added support for examine to file
|
||||||
27-Oct-98 RMS V2.4 load interface
|
27-Oct-98 RMS V2.4 load interface
|
||||||
20-Oct-97 RMS Fixed endian dependence in RIM loader
|
20-Oct-97 RMS Fixed endian dependence in RIM loader (Michael Somos)
|
||||||
(found by Michael Somos)
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "pdp18b_defs.h"
|
#include "pdp18b_defs.h"
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp8_fpp.c: PDP-8 floating point processor (FPP8A)
|
/* pdp8_fpp.c: PDP-8 floating point processor (FPP8A)
|
||||||
|
|
||||||
Copyright (c) 2007-2010, Robert M Supnik
|
Copyright (c) 2007-2011, Robert M Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* pdp8_sys.c: PDP-8 simulator interface
|
/* pdp8_sys.c: PDP-8 simulator interface
|
||||||
|
|
||||||
Copyright (c) 1993-2009, Robert M Supnik
|
Copyright (c) 1993-2011, Robert M Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -24,7 +24,7 @@
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
24-Mar-09 RMS Added link to FPP
|
24-Mar-09 RMS Added link to FPP
|
||||||
24-Jun-08 RMS Fixed bug in new rim loader (found by Don North)
|
24-Jun-08 RMS Fixed bug in new rim loader (Don North)
|
||||||
24-May-08 RMS Fixed signed/unsigned declaration inconsistency
|
24-May-08 RMS Fixed signed/unsigned declaration inconsistency
|
||||||
03-Sep-07 RMS Added FPP8 support
|
03-Sep-07 RMS Added FPP8 support
|
||||||
Rewrote rim and binary loaders
|
Rewrote rim and binary loaders
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* s3_cd.c: IBM 1442 card reader/punch
|
/* s3_cd.c: IBM 1442 card reader/punch
|
||||||
|
|
||||||
Copyright (c) 2001-2005, Charles E. Owen
|
Copyright (c) 2001-2012, Charles E. Owen
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -27,6 +27,7 @@
|
||||||
cdp card punch
|
cdp card punch
|
||||||
cdp2 card punch stacker 2
|
cdp2 card punch stacker 2
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed declaration of conversion tables (Mark Pizzolato)
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
08-Oct-02 RMS Added impossible function catcher
|
08-Oct-02 RMS Added impossible function catcher
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* s3_cpu.c: IBM System/3 CPU simulator
|
/* s3_cpu.c: IBM System/3 CPU simulator
|
||||||
|
|
||||||
Copyright (c) 2001-2005, Charles E. Owen
|
Copyright (c) 2001-2012, Charles E. Owen
|
||||||
HPL & SLC instruction code Copyright (c) 2001 by Henk Stegeman
|
HPL & SLC instruction code Copyright (c) 2001 by Henk Stegeman
|
||||||
Decimal Arithmetic Copyright (c) 2000 by Roger Bowler
|
Decimal Arithmetic Copyright (c) 2000 by Roger Bowler
|
||||||
|
|
||||||
|
@ -29,6 +29,8 @@
|
||||||
|
|
||||||
cpu System/3 (models 10 and 15) central processor
|
cpu System/3 (models 10 and 15) central processor
|
||||||
|
|
||||||
|
19-Mar-12 RMS Changed int to int32 in declarations (Mark Pizzolato)
|
||||||
|
|
||||||
The IBM System/3 was a popular small-business computing system introduced
|
The IBM System/3 was a popular small-business computing system introduced
|
||||||
in 1969 as an entry-level system for businesses that could not afford
|
in 1969 as an entry-level system for businesses that could not afford
|
||||||
the lowest rungs of the System/360. Its architecture is inspired by and
|
the lowest rungs of the System/360. Its architecture is inspired by and
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* s3_lp.c: IBM 1403 line printer simulator
|
/* s3_lp.c: IBM 1403 line printer simulator
|
||||||
|
|
||||||
Copyright (c) 2001-2005, Charles E. Owen
|
Copyright (c) 2001-2012, Charles E. Owen
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,6 +25,7 @@
|
||||||
|
|
||||||
lpt 1403 line printer
|
lpt 1403 line printer
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed declaration of conversion tables (Mark Pizzolato)
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
08-Oct-02 RMS Added impossible function catcher
|
08-Oct-02 RMS Added impossible function catcher
|
||||||
*/
|
*/
|
||||||
|
@ -114,7 +115,7 @@ int32 lpt (int32 op, int32 m, int32 n, int32 data)
|
||||||
switch (op) {
|
switch (op) {
|
||||||
case 0: /* SIO 1403 */
|
case 0: /* SIO 1403 */
|
||||||
iodata = 0;
|
iodata = 0;
|
||||||
printf("\0");
|
// printf("\0");
|
||||||
switch (n) {
|
switch (n) {
|
||||||
case 0x00: /* Spacing only */
|
case 0x00: /* Spacing only */
|
||||||
if (data > 0 && data < 4)
|
if (data > 0 && data < 4)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* s3_sys.c: IBM System/3 system interface
|
/* s3_sys.c: IBM System/3 system interface
|
||||||
|
|
||||||
Copyright (c) 2001-2005, Charles E. Owen
|
Copyright (c) 2001-2012, Charles E. Owen
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -22,6 +22,8 @@
|
||||||
Except as contained in this notice, the name of Charles E. Owen shall not be
|
Except as contained in this notice, the name of Charles E. Owen shall not be
|
||||||
used in advertising or otherwise to promote the sale, use or other dealings
|
used in advertising or otherwise to promote the sale, use or other dealings
|
||||||
in this Software without prior written authorization from Charles E. Owen.
|
in this Software without prior written authorization from Charles E. Owen.
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed declaration of conversion tables (Mark Pizzolato)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* sds_io.c: SDS 940 I/O simulator
|
/* sds_io.c: SDS 940 I/O simulator
|
||||||
|
|
||||||
Copyright (c) 2001-2008, Robert M. Supnik
|
Copyright (c) 2001-2012, Robert M. Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -22,6 +22,8 @@
|
||||||
Except as contained in this notice, the name of Robert M Supnik shall not be
|
Except as contained in this notice, the name of Robert M Supnik shall not be
|
||||||
used in advertising or otherwise to promote the sale, use or other dealings
|
used in advertising or otherwise to promote the sale, use or other dealings
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
|
19-Mar-2012 RMS Fixed various declarations (Mark Pizzolato)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "sds_defs.h"
|
#include "sds_defs.h"
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* sds_mt.c: SDS 940 magnetic tape simulator
|
/* sds_mt.c: SDS 940 magnetic tape simulator
|
||||||
|
|
||||||
Copyright (c) 2001-2008, Robert M. Supnik
|
Copyright (c) 2001-2012, Robert M. Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -25,6 +25,7 @@
|
||||||
|
|
||||||
mt 7 track magnetic tape
|
mt 7 track magnetic tape
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed bug in scan function decode (Peter Schorn)
|
||||||
16-Feb-06 RMS Added tape capacity checking
|
16-Feb-06 RMS Added tape capacity checking
|
||||||
07-Dec-04 RMS Added read-only file support
|
07-Dec-04 RMS Added read-only file support
|
||||||
25-Apr-03 RMS Revised for extended file support
|
25-Apr-03 RMS Revised for extended file support
|
||||||
|
@ -209,7 +210,7 @@ switch (fnc) { /* case function */
|
||||||
(inst & CHC_REV)) /* rw & rev? */
|
(inst & CHC_REV)) /* rw & rev? */
|
||||||
return STOP_INVIOP;
|
return STOP_INVIOP;
|
||||||
mt_inst = inst; /* save inst */
|
mt_inst = inst; /* save inst */
|
||||||
if ((inst & DEV_MTS) && !(inst && DEV_OUT)) /* scanning? */
|
if ((inst & DEV_MTS) && !(inst & DEV_OUT)) /* scanning? */
|
||||||
chan_set_flag (mt_dib.chan, CHF_SCAN); /* set chan flg */
|
chan_set_flag (mt_dib.chan, CHF_SCAN); /* set chan flg */
|
||||||
xfr_req = xfr_req & ~XFR_MT0; /* clr xfr flag */
|
xfr_req = xfr_req & ~XFR_MT0; /* clr xfr flag */
|
||||||
sim_activate (uptr, mt_gtime); /* start timer */
|
sim_activate (uptr, mt_gtime); /* start timer */
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* sds_sys.c: SDS 940 simulator interface
|
/* sds_sys.c: SDS 940 simulator interface
|
||||||
|
|
||||||
Copyright (c) 2001-2008, Robert M Supnik
|
Copyright (c) 2001-2012, Robert M Supnik
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
@ -22,6 +22,8 @@
|
||||||
Except as contained in this notice, the name of Robert M Supnik shall not be
|
Except as contained in this notice, the name of Robert M Supnik shall not be
|
||||||
used in advertising or otherwise to promote the sale, use or other dealings
|
used in advertising or otherwise to promote the sale, use or other dealings
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
|
19-Mar-12 RMS Fixed declarations of CCT arrays (Mark Pizzolato)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "sds_defs.h"
|
#include "sds_defs.h"
|
||||||
|
|
|
@ -27,9 +27,9 @@
|
||||||
|
|
||||||
sbi bus controller
|
sbi bus controller
|
||||||
|
|
||||||
21-Mar-2011 RMS Added autoreboot capability (from Mark Pizzalato)
|
21-Mar-2011 RMS Added autoreboot capability (Mark Pizzalato)
|
||||||
04-Feb-2011 MP Added RQB, RQC, and RQD as bootable controllers
|
04-Feb-2011 MP Added RQB, RQC, and RQD as bootable controllers
|
||||||
31-May-2008 RMS Fixed machine_check calling sequence (found by Peter Schorn)
|
31-May-2008 RMS Fixed machine_check calling sequence (Peter Schorn)
|
||||||
03-May-2006 RMS Fixed writes to ACCS
|
03-May-2006 RMS Fixed writes to ACCS
|
||||||
28-May-2008 RMS Inlined physical memory routines
|
28-May-2008 RMS Inlined physical memory routines
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -60,7 +60,7 @@
|
||||||
Synced keyboard to clock for idling
|
Synced keyboard to clock for idling
|
||||||
11-May-06 RMS Revised timer logic for EVKAE
|
11-May-06 RMS Revised timer logic for EVKAE
|
||||||
22-Nov-05 RMS Revised for new terminal processing routines
|
22-Nov-05 RMS Revised for new terminal processing routines
|
||||||
10-Mar-05 RMS Fixed bug in timer schedule routine (from Mark Hittinger)
|
10-Mar-05 RMS Fixed bug in timer schedule routine (Mark Hittinger)
|
||||||
08-Sep-04 RMS Cloned from vax_stddev.c, vax_sysdev.c, and pdp11_rx.c
|
08-Sep-04 RMS Cloned from vax_stddev.c, vax_sysdev.c, and pdp11_rx.c
|
||||||
|
|
||||||
The console floppy protocol is based on the description in the 1982 VAX
|
The console floppy protocol is based on the description in the 1982 VAX
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
used in advertising or otherwise to promote the sale, use or other dealings
|
used in advertising or otherwise to promote the sale, use or other dealings
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
17-May-06 RMS Added CR11/CD11 support (from John Dundas)
|
17-May-06 RMS Added CR11/CD11 support (John Dundas)
|
||||||
01-Oct-04 RMS Cloned from vax_sys.c
|
01-Oct-04 RMS Cloned from vax_sys.c
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
|
|
||||||
19-Nov-08 RMS Moved I/O support routines to I/O library
|
19-Nov-08 RMS Moved I/O support routines to I/O library
|
||||||
28-May-08 RMS Inlined physical memory routines
|
28-May-08 RMS Inlined physical memory routines
|
||||||
25-Jan-08 RMS Fixed declarations (from Mark Pizzolato)
|
25-Jan-08 RMS Fixed declarations (Mark Pizzolato)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "vax_defs.h"
|
#include "vax_defs.h"
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
16-Oct-08 RMS Fixed bug in ASHP left overflow calc (Word/NibbleLShift)
|
16-Oct-08 RMS Fixed bug in ASHP left overflow calc (Word/NibbleLShift)
|
||||||
Fixed bug in DIVx (LntDstr calculation)
|
Fixed bug in DIVx (LntDstr calculation)
|
||||||
28-May-08 RMS Inlined physical memory routines
|
28-May-08 RMS Inlined physical memory routines
|
||||||
16-May-06 RMS Fixed bug in length calculation (found by Tim Stark)
|
16-May-06 RMS Fixed bug in length calculation (Tim Stark)
|
||||||
03-May-06 RMS Fixed MOVTC, MOVTUC to preserve cc's through page faults
|
03-May-06 RMS Fixed MOVTC, MOVTUC to preserve cc's through page faults
|
||||||
Fixed MOVTUC to stop on translated == escape
|
Fixed MOVTUC to stop on translated == escape
|
||||||
Fixed CVTPL to set registers before destination reg write
|
Fixed CVTPL to set registers before destination reg write
|
||||||
|
@ -38,7 +38,7 @@
|
||||||
Fixed EDITPC EO$BLANK_ZERO count, cc test
|
Fixed EDITPC EO$BLANK_ZERO count, cc test
|
||||||
Fixed EDITPC EO$INSERT to insert fill instead of blank
|
Fixed EDITPC EO$INSERT to insert fill instead of blank
|
||||||
Fixed EDITPC EO$LOAD_PLUS/MINUS to skip character
|
Fixed EDITPC EO$LOAD_PLUS/MINUS to skip character
|
||||||
(all reported by Tim Stark)
|
(Tim Stark)
|
||||||
12-Apr-04 RMS Cloned from pdp11_cis.c and vax_cpu1.c
|
12-Apr-04 RMS Cloned from pdp11_cis.c and vax_cpu1.c
|
||||||
|
|
||||||
Zero length decimal strings require either zero bytes (trailing) or one byte
|
Zero length decimal strings require either zero bytes (trailing) or one byte
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
On a subset VAX, this module forces a fault if REI attempts to set PSL<cm>.
|
On a subset VAX, this module forces a fault if REI attempts to set PSL<cm>.
|
||||||
|
|
||||||
28-May-08 RMS Inlined physical memory routines
|
28-May-08 RMS Inlined physical memory routines
|
||||||
25-Jan-08 RMS Fixed declaration (from Mark Pizzolato)
|
25-Jan-08 RMS Fixed declaration (Mark Pizzolato)
|
||||||
03-May-06 RMS Fixed omission of SXT
|
03-May-06 RMS Fixed omission of SXT
|
||||||
Fixed order of operand fetching in XOR
|
Fixed order of operand fetching in XOR
|
||||||
24-Aug-04 RMS Cloned from PDP-11 CPU
|
24-Aug-04 RMS Cloned from PDP-11 CPU
|
||||||
|
|
|
@ -36,8 +36,8 @@
|
||||||
Determining a reasonable idle detection pattern does
|
Determining a reasonable idle detection pattern does
|
||||||
not seem possible for these versions.
|
not seem possible for these versions.
|
||||||
13-Sep-11 RMS Fixed XFC, BPT to clear PSL<tp> before exception
|
13-Sep-11 RMS Fixed XFC, BPT to clear PSL<tp> before exception
|
||||||
(found by Camiel Vanderhoeven)
|
(Camiel Vanderhoeven)
|
||||||
23-Mar-11 RMS Revised for new idle design (from Mark Pizzolato)
|
23-Mar-11 RMS Revised for new idle design (Mark Pizzolato)
|
||||||
05-Jan-11 MP Added Asynch I/O support
|
05-Jan-11 MP Added Asynch I/O support
|
||||||
24-Apr-10 RMS Added OLDVMS idle timer option
|
24-Apr-10 RMS Added OLDVMS idle timer option
|
||||||
Fixed bug in SET CPU IDLE
|
Fixed bug in SET CPU IDLE
|
||||||
|
@ -46,7 +46,7 @@
|
||||||
13-Aug-07 RMS Fixed bug in read access g-format indexed specifiers
|
13-Aug-07 RMS Fixed bug in read access g-format indexed specifiers
|
||||||
28-Apr-07 RMS Removed clock initialization
|
28-Apr-07 RMS Removed clock initialization
|
||||||
29-Oct-06 RMS Added idle support
|
29-Oct-06 RMS Added idle support
|
||||||
22-May-06 RMS Fixed format error in CPU history (found by Peter Schorn)
|
22-May-06 RMS Fixed format error in CPU history (Peter Schorn)
|
||||||
10-May-06 RMS Added -kesu switches for virtual addressing modes
|
10-May-06 RMS Added -kesu switches for virtual addressing modes
|
||||||
Fixed bugs in examine virtual
|
Fixed bugs in examine virtual
|
||||||
Rewrote history function for greater usability
|
Rewrote history function for greater usability
|
||||||
|
@ -56,32 +56,31 @@
|
||||||
Fixed ACBD/G to test correct operand
|
Fixed ACBD/G to test correct operand
|
||||||
Fixed access checking on modify-class specifiers
|
Fixed access checking on modify-class specifiers
|
||||||
Fixed branch displacements in history buffer
|
Fixed branch displacements in history buffer
|
||||||
(all reported by Tim Stark)
|
(Tim Stark)
|
||||||
17-Nov-05 RMS Fixed CVTfi with integer overflow to trap if PSW<iv> set
|
17-Nov-05 RMS Fixed CVTfi with integer overflow to trap if PSW<iv> set
|
||||||
13-Nov-05 RMS Fixed breakpoint test with 64b addresses
|
13-Nov-05 RMS Fixed breakpoint test with 64b addresses
|
||||||
25-Oct-05 RMS Removed cpu_extmem
|
25-Oct-05 RMS Removed cpu_extmem
|
||||||
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
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
13-Jan-05 RMS Fixed initial state of cpu_extmem
|
13-Jan-05 RMS Fixed initial state of cpu_extmem
|
||||||
06-Nov-04 RMS Added =n to SHOW HISTORY
|
06-Nov-04 RMS Added =n to SHOW HISTORY
|
||||||
30-Sep-04 RMS Added octaword specifier decodes and instructions
|
30-Sep-04 RMS Added octaword specifier decodes and instructions
|
||||||
Moved model-specific routines to system module
|
Moved model-specific routines to system module
|
||||||
02-Sep-04 RMS Fixed bug in EMODD/G, second word of quad dst not probed
|
02-Sep-04 RMS Fixed bug in EMODD/G, second word of quad dst not probed
|
||||||
28-Jun-04 RMS Fixed bug in DIVBx, DIVWx (reported by Peter Trimmel)
|
28-Jun-04 RMS Fixed bug in DIVBx, DIVWx (Peter Trimmel)
|
||||||
18-Apr-04 RMS Added octaword macros
|
18-Apr-04 RMS Added octaword macros
|
||||||
25-Jan-04 RMS Removed local debug logging support
|
25-Jan-04 RMS Removed local debug logging support
|
||||||
RMS,MP Added extended physical memory support
|
RMS,MP Added extended physical memory support
|
||||||
31-Dec-03 RMS Fixed bug in set_cpu_hist
|
31-Dec-03 RMS Fixed bug in set_cpu_hist
|
||||||
21-Dec-03 RMS Added autoconfiguration controls
|
21-Dec-03 RMS Added autoconfiguration controls
|
||||||
29-Oct-03 RMS Fixed WriteB declaration (found by Mark Pizzolato)
|
29-Oct-03 RMS Fixed WriteB declaration (Mark Pizzolato)
|
||||||
23-Sep-03 RMS Revised instruction history for dynamic sizing
|
23-Sep-03 RMS Revised instruction history for dynamic sizing
|
||||||
17-May-03 RMS Fixed operand order in EMODx
|
17-May-03 RMS Fixed operand order in EMODx
|
||||||
23-Apr-03 RMS Revised for 32b/64b t_addr
|
23-Apr-03 RMS Revised for 32b/64b t_addr
|
||||||
05-Jan-02 RMS Added memory size restore support
|
05-Jan-02 RMS Added memory size restore support
|
||||||
25-Dec-02 RMS Added instruction history (from Mark Pizzolato)
|
25-Dec-02 RMS Added instruction history (Mark Pizzolato)
|
||||||
29-Sep-02 RMS Revised to build dib_tab dynamically
|
29-Sep-02 RMS Revised to build dib_tab dynamically
|
||||||
14-Jul-02 RMS Added halt to console, infinite loop detection
|
14-Jul-02 RMS Added halt to console, infinite loop detection (Mark Pizzolato)
|
||||||
(from Mark Pizzolato)
|
|
||||||
02-May-02 RMS Fixed bug in indexed autoincrement register logging
|
02-May-02 RMS Fixed bug in indexed autoincrement register logging
|
||||||
30-Apr-02 RMS Added TODR powerup routine
|
30-Apr-02 RMS Added TODR powerup routine
|
||||||
18-Apr-02 RMS Cleanup ambiguous signed left shifts
|
18-Apr-02 RMS Cleanup ambiguous signed left shifts
|
||||||
|
|
|
@ -23,14 +23,14 @@
|
||||||
used in advertising or otherwise to promote the sale, use or other dealings
|
used in advertising or otherwise to promote the sale, use or other dealings
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
15-Mar-12 RMS Fixed potential integer overflow in LDPCTX (from Mark Pizzolato)
|
15-Mar-12 RMS Fixed potential integer overflow in LDPCTX (Mark Pizzolato)
|
||||||
25-Nov-11 RMS Added VEC_QBUS test in interrupt handler
|
25-Nov-11 RMS Added VEC_QBUS test in interrupt handler
|
||||||
23-Mar-11 RMS Revised idle design (from Mark Pizzolato)
|
23-Mar-11 RMS Revised idle design (Mark Pizzolato)
|
||||||
28-May-08 RMS Inlined physical memory routines
|
28-May-08 RMS Inlined physical memory routines
|
||||||
29-Apr-07 RMS Separated base register access checks for 11/780
|
29-Apr-07 RMS Separated base register access checks for 11/780
|
||||||
10-May-06 RMS Added access check on system PTE for 11/780
|
10-May-06 RMS Added access check on system PTE for 11/780
|
||||||
Added mbz check in LDPCTX for 11/780
|
Added mbz check in LDPCTX for 11/780
|
||||||
22-Sep-06 RMS Fixed declarations (from Sterling Garwood)
|
22-Sep-06 RMS Fixed declarations (Sterling Garwood)
|
||||||
30-Sep-04 RMS Added conditionals for full VAX
|
30-Sep-04 RMS Added conditionals for full VAX
|
||||||
Moved emulation to vax_cis.c
|
Moved emulation to vax_cis.c
|
||||||
Moved model-specific IPRs to system module
|
Moved model-specific IPRs to system module
|
||||||
|
@ -38,8 +38,8 @@
|
||||||
Fixed EXTxV, INSV double register PC reference fault
|
Fixed EXTxV, INSV double register PC reference fault
|
||||||
30-Apr-02 RMS Fixed interrupt/exception handler to clear traps
|
30-Apr-02 RMS Fixed interrupt/exception handler to clear traps
|
||||||
17-Apr-02 RMS Fixed pos > 31 test in bit fields (should be unsigned)
|
17-Apr-02 RMS Fixed pos > 31 test in bit fields (should be unsigned)
|
||||||
14-Apr-02 RMS Fixed prv_mode handling for interrupts (found by Tim Stark)
|
14-Apr-02 RMS Fixed prv_mode handling for interrupts (Tim Stark)
|
||||||
Fixed PROBEx to mask mode to 2b (found by Kevin Handy)
|
Fixed PROBEx to mask mode to 2b (Kevin Handy)
|
||||||
|
|
||||||
This module contains the instruction simulators for
|
This module contains the instruction simulators for
|
||||||
|
|
||||||
|
|
|
@ -23,9 +23,10 @@
|
||||||
used in advertising or otherwise to promote the sale, use or other dealings
|
used in advertising or otherwise to promote the sale, use or other dealings
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
|
23-Mar-12 RMS Fixed missing arguments in 32b floating add (Mark Pizzolato)
|
||||||
15-Sep-11 RMS Fixed integer overflow bug in EMODx
|
15-Sep-11 RMS Fixed integer overflow bug in EMODx
|
||||||
Fixed POLYx normalizing before add mask bug
|
Fixed POLYx normalizing before add mask bug
|
||||||
(both from Camiel Vanderhoeven)
|
(Camiel Vanderhoeven)
|
||||||
28-May-08 RMS Inlined physical memory routines
|
28-May-08 RMS Inlined physical memory routines
|
||||||
16-May-06 RMS Fixed bug in 32b floating multiply routine
|
16-May-06 RMS Fixed bug in 32b floating multiply routine
|
||||||
Fixed bug in 64b extended modulus routine
|
Fixed bug in 64b extended modulus routine
|
||||||
|
@ -37,8 +38,8 @@
|
||||||
Fixed POLYF, POLYD, POLYG to mask mul reslt to 31b/63b/63b
|
Fixed POLYF, POLYD, POLYG to mask mul reslt to 31b/63b/63b
|
||||||
Fixed fp add routine to test for zero via fraction
|
Fixed fp add routine to test for zero via fraction
|
||||||
to support "denormal" argument from POLYF, POLYD, POLYG
|
to support "denormal" argument from POLYF, POLYD, POLYG
|
||||||
(all reported by Tim Stark)
|
(Tim Stark)
|
||||||
27-Sep-05 RMS Fixed bug in 32b structure definitions (from Jason Stevens)
|
27-Sep-05 RMS Fixed bug in 32b structure definitions (Jason Stevens)
|
||||||
30-Sep-04 RMS Comment and formating changes based on vax_octa.c
|
30-Sep-04 RMS Comment and formating changes based on vax_octa.c
|
||||||
18-Apr-04 RMS Moved format definitions to vax_defs.h
|
18-Apr-04 RMS Moved format definitions to vax_defs.h
|
||||||
19-Jun-03 RMS Simplified add algorithm
|
19-Jun-03 RMS Simplified add algorithm
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
qba Qbus adapter
|
qba Qbus adapter
|
||||||
|
|
||||||
28-May-08 RMS Inlined physical memory routines
|
28-May-08 RMS Inlined physical memory routines
|
||||||
25-Jan-08 RMS Fixed declarations (from Mark Pizzolato)
|
25-Jan-08 RMS Fixed declarations (Mark Pizzolato)
|
||||||
03-Dec-05 RMS Added SHOW QBA VIRT and ex/dep via map
|
03-Dec-05 RMS Added SHOW QBA VIRT and ex/dep via map
|
||||||
05-Oct-05 RMS Fixed bug in autoconfiguration (missing XU)
|
05-Oct-05 RMS Fixed bug in autoconfiguration (missing XU)
|
||||||
25-Jul-05 RMS Revised autoconfiguration algorithm and interface
|
25-Jul-05 RMS Revised autoconfiguration algorithm and interface
|
||||||
|
@ -34,11 +34,11 @@
|
||||||
Moved mem_err, crd_err interrupts here from vax_cpu.c
|
Moved mem_err, crd_err interrupts here from vax_cpu.c
|
||||||
09-Sep-04 RMS Integrated powerup into RESET (with -p)
|
09-Sep-04 RMS Integrated powerup into RESET (with -p)
|
||||||
05-Sep-04 RMS Added CRD interrupt handling
|
05-Sep-04 RMS Added CRD interrupt handling
|
||||||
28-May-04 RMS Revised I/O dispatching (from John Dundas)
|
28-May-04 RMS Revised I/O dispatching (John Dundas)
|
||||||
21-Mar-04 RMS Added RXV21 support
|
21-Mar-04 RMS Added RXV21 support
|
||||||
21-Dec-03 RMS Fixed bug in autoconfigure vector assignment; added controls
|
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)
|
||||||
29-Oct-03 RMS Fixed WriteX declaration (found by Mark Pizzolato)
|
29-Oct-03 RMS Fixed WriteX declaration (Mark Pizzolato)
|
||||||
19-Apr-03 RMS Added optimized byte and word DMA routines
|
19-Apr-03 RMS Added optimized byte and word DMA routines
|
||||||
12-Mar-03 RMS Added logical name support
|
12-Mar-03 RMS Added logical name support
|
||||||
22-Dec-02 RMS Added console halt support
|
22-Dec-02 RMS Added console halt support
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
21-Jul-08 RMS Removed inlining support
|
21-Jul-08 RMS Removed inlining support
|
||||||
28-May-08 RMS Inlined physical memory routines
|
28-May-08 RMS Inlined physical memory routines
|
||||||
29-Apr-07 RMS Added address masking for system page table reads
|
29-Apr-07 RMS Added address masking for system page table reads
|
||||||
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
|
22-Sep-05 RMS Fixed declarations (Sterling Garwood)
|
||||||
30-Sep-04 RMS Comment and formating changes
|
30-Sep-04 RMS Comment and formating changes
|
||||||
19-Sep-03 RMS Fixed upper/lower case linkage problems on VMS
|
19-Sep-03 RMS Fixed upper/lower case linkage problems on VMS
|
||||||
01-Jun-03 RMS Fixed compilation problem with USE_ADDR64
|
01-Jun-03 RMS Fixed compilation problem with USE_ADDR64
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
|
|
||||||
15-Sep-11 RMS Fixed integer overflow bug in EMODH
|
15-Sep-11 RMS Fixed integer overflow bug in EMODH
|
||||||
Fixed POLYH normalizing before add mask bug
|
Fixed POLYH normalizing before add mask bug
|
||||||
(both from Camiel Vanderhoeven)
|
(Camiel Vanderhoeven)
|
||||||
28-May-08 RMS Inlined physical memory routines
|
28-May-08 RMS Inlined physical memory routines
|
||||||
10-May-06 RMS Fixed bug in reported VA on faulting cross-page write
|
10-May-06 RMS Fixed bug in reported VA on faulting cross-page write
|
||||||
03-May-06 RMS Fixed MNEGH to test negated sign, clear C
|
03-May-06 RMS Fixed MNEGH to test negated sign, clear C
|
||||||
|
@ -40,7 +40,7 @@
|
||||||
Fixed fp add routine to test for zero via fraction
|
Fixed fp add routine to test for zero via fraction
|
||||||
to support "denormal" argument from POLYH
|
to support "denormal" argument from POLYH
|
||||||
Fixed EMODH to concatenate 15b of 16b extension
|
Fixed EMODH to concatenate 15b of 16b extension
|
||||||
(all reported by Tim Stark)
|
(Tim Stark)
|
||||||
15-Jul-04 RMS Cloned from 32b VAX floating point implementation
|
15-Jul-04 RMS Cloned from 32b VAX floating point implementation
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
21-Mar-11 RMS Modified string for STOP_BOOT message
|
21-Mar-11 RMS Modified string for STOP_BOOT message
|
||||||
19-Nov-08 RMS Moved bad block routine to I/O library
|
19-Nov-08 RMS Moved bad block routine to I/O library
|
||||||
03-Nov-05 RMS Added 780 stop codes
|
03-Nov-05 RMS Added 780 stop codes
|
||||||
04-Sep-05 RMS Fixed missing assignment (found by Peter Schorn)
|
04-Sep-05 RMS Fixed missing assignment (Peter Schorn)
|
||||||
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
15-Sep-04 RMS Fixed bugs in character display and parse
|
15-Sep-04 RMS Fixed bugs in character display and parse
|
||||||
30-Sep-04 RMS Fixed bugs in parsing indirect displacement modes
|
30-Sep-04 RMS Fixed bugs in parsing indirect displacement modes
|
||||||
|
|
|
@ -24,8 +24,8 @@
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
22-May-10 RMS Fixed t_addr printouts for 64b big-endian systems
|
22-May-10 RMS Fixed t_addr printouts for 64b big-endian systems
|
||||||
(found by Mark Pizzolato)
|
(Mark Pizzolato)
|
||||||
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)
|
||||||
27-Sep-05 RMS Fixed warnings compiling with 64b addresses
|
27-Sep-05 RMS Fixed warnings compiling with 64b addresses
|
||||||
15-Sep-04 RMS Cloned from pdp11_sys.c
|
15-Sep-04 RMS Cloned from pdp11_sys.c
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -32,10 +32,10 @@
|
||||||
cso console storage output
|
cso console storage output
|
||||||
sysd system devices (SSC miscellany)
|
sysd system devices (SSC miscellany)
|
||||||
|
|
||||||
23-Dec-10 RMS Added power clear call to boot routine (from Mark Pizzolato)
|
23-Dec-10 RMS Added power clear call to boot routine (Mark Pizzolato)
|
||||||
25-Oct-05 RMS Automated CMCTL extended memory
|
25-Oct-05 RMS Automated CMCTL extended memory
|
||||||
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||||
10-Mar-05 RMS Fixed bug in timer schedule routine (from Mark Hittinger)
|
10-Mar-05 RMS Fixed bug in timer schedule routine (Mark Hittinger)
|
||||||
30-Sep-04 RMS Moved CADR, MSER, CONPC, CONPSL, machine_check, cpu_boot,
|
30-Sep-04 RMS Moved CADR, MSER, CONPC, CONPSL, machine_check, cpu_boot,
|
||||||
con_halt here from vax_cpu.c
|
con_halt here from vax_cpu.c
|
||||||
Moved model-specific IPR's here from vax_cpu1.c
|
Moved model-specific IPR's here from vax_cpu1.c
|
||||||
|
@ -46,10 +46,10 @@
|
||||||
Fixed calibration problems interval timer (Mark Pizzolato)
|
Fixed calibration problems interval timer (Mark Pizzolato)
|
||||||
12-May-03 RMS Fixed compilation warnings from VC.Net
|
12-May-03 RMS Fixed compilation warnings from VC.Net
|
||||||
23-Apr-03 RMS Revised for 32b/64b t_addr
|
23-Apr-03 RMS Revised for 32b/64b t_addr
|
||||||
19-Aug-02 RMS Removed unused variables (found by David Hittner)
|
19-Aug-02 RMS Removed unused variables (David Hittner)
|
||||||
Allowed NVR to be attached to file
|
Allowed NVR to be attached to file
|
||||||
30-May-02 RMS Widened POS to 32b
|
30-May-02 RMS Widened POS to 32b
|
||||||
28-Feb-02 RMS Fixed bug, missing end of table (found by Lars Brinkhoff)
|
28-Feb-02 RMS Fixed bug, missing end of table (Lars Brinkhoff)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "vax_defs.h"
|
#include "vax_defs.h"
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
in this Software without prior written authorization from Robert M Supnik.
|
in this Software without prior written authorization from Robert M Supnik.
|
||||||
|
|
||||||
17-Oct-06 RMS Re-ordered device list
|
17-Oct-06 RMS Re-ordered device list
|
||||||
17-May-06 RMS Added CR11/CD11 support (from John Dundas)
|
17-May-06 RMS Added CR11/CD11 support (John Dundas)
|
||||||
01-Oct-2004 RMS Cloned from vax_sys.c
|
01-Oct-2004 RMS Cloned from vax_sys.c
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
19
makefile
19
makefile
|
@ -35,7 +35,8 @@
|
||||||
ifneq (,$(or $(findstring pdp11,$(MAKECMDGOALS)),$(findstring vax,$(MAKECMDGOALS)),$(findstring all,$(MAKECMDGOALS))))
|
ifneq (,$(or $(findstring pdp11,$(MAKECMDGOALS)),$(findstring vax,$(MAKECMDGOALS)),$(findstring all,$(MAKECMDGOALS))))
|
||||||
NETWORK_USEFUL = true
|
NETWORK_USEFUL = true
|
||||||
ifneq (,$(findstring all,$(MAKECMDGOALS))$(word 2,$(MAKECMDGOALS)))
|
ifneq (,$(findstring all,$(MAKECMDGOALS))$(word 2,$(MAKECMDGOALS)))
|
||||||
BUILD_MULTIPLE = (s)
|
BUILD_MULTIPLE = s
|
||||||
|
BUILD_SINGLE := $(MAKECMDGOALS) $(BUILD_SINGLE)
|
||||||
else
|
else
|
||||||
BUILD_SINGLE := $(MAKECMDGOALS) $(BUILD_SINGLE)
|
BUILD_SINGLE := $(MAKECMDGOALS) $(BUILD_SINGLE)
|
||||||
endif
|
endif
|
||||||
|
@ -43,7 +44,8 @@ else
|
||||||
ifeq ($(MAKECMDGOALS),)
|
ifeq ($(MAKECMDGOALS),)
|
||||||
# default target is all
|
# default target is all
|
||||||
NETWORK_USEFUL = true
|
NETWORK_USEFUL = true
|
||||||
BUILD_MULTIPLE = (s)
|
BUILD_MULTIPLE = s
|
||||||
|
BUILD_SINGLE := all $(BUILD_SINGLE)
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
ifeq ($(WIN32),) #*nix Environments (&& cygwin)
|
ifeq ($(WIN32),) #*nix Environments (&& cygwin)
|
||||||
|
@ -63,6 +65,7 @@ ifeq ($(WIN32),) #*nix Environments (&& cygwin)
|
||||||
OSNAME = windows-build
|
OSNAME = windows-build
|
||||||
endif
|
endif
|
||||||
GCC_VERSION = $(shell $(GCC) --version /dev/null | grep GCC | awk '{ print $$3 }')
|
GCC_VERSION = $(shell $(GCC) --version /dev/null | grep GCC | awk '{ print $$3 }')
|
||||||
|
LTO_EXCLUDE_VERSIONS =
|
||||||
PCAPLIB = pcap
|
PCAPLIB = pcap
|
||||||
ifeq (agcc,$(findstring agcc,$(GCC))) # Android target build?
|
ifeq (agcc,$(findstring agcc,$(GCC))) # Android target build?
|
||||||
OS_CCDEFS = -D_GNU_SOURCE
|
OS_CCDEFS = -D_GNU_SOURCE
|
||||||
|
@ -249,6 +252,7 @@ else
|
||||||
GCC = gcc
|
GCC = gcc
|
||||||
GCC_Path := $(dir $(shell where gcc.exe))
|
GCC_Path := $(dir $(shell where gcc.exe))
|
||||||
GCC_VERSION = $(word 3,$(shell $(GCC) --version))
|
GCC_VERSION = $(word 3,$(shell $(GCC) --version))
|
||||||
|
LTO_EXCLUDE_VERSIONS = 4.5.2
|
||||||
ifeq (pthreads,$(shell if exist ..\windows-build\pthreads\Pre-built.2\include\pthread.h echo pthreads))
|
ifeq (pthreads,$(shell if exist ..\windows-build\pthreads\Pre-built.2\include\pthread.h echo pthreads))
|
||||||
PTHREADS_CCDEFS = -DUSE_READER_THREAD -DPTW32_STATIC_LIB -I../windows-build/pthreads/Pre-built.2/include
|
PTHREADS_CCDEFS = -DUSE_READER_THREAD -DPTW32_STATIC_LIB -I../windows-build/pthreads/Pre-built.2/include
|
||||||
ifeq (,$(NOASYNCH))
|
ifeq (,$(NOASYNCH))
|
||||||
|
@ -298,6 +302,9 @@ else
|
||||||
ifneq (3,$(GCC_MAJOR_VERSION))
|
ifneq (3,$(GCC_MAJOR_VERSION))
|
||||||
GCC_OPTIMIZERS = $(shell $(GCC) --help=optimizers)
|
GCC_OPTIMIZERS = $(shell $(GCC) --help=optimizers)
|
||||||
endif
|
endif
|
||||||
|
ifneq (,$(findstring $(GCC_VERSION),$(LTO_EXCLUDE_VERSIONS)))
|
||||||
|
NO_LTO = 1
|
||||||
|
endif
|
||||||
ifneq (,$(findstring inline-functions,$(GCC_OPTIMIZERS)))
|
ifneq (,$(findstring inline-functions,$(GCC_OPTIMIZERS)))
|
||||||
CFLAGS_O += -finline-functions
|
CFLAGS_O += -finline-functions
|
||||||
endif
|
endif
|
||||||
|
@ -316,9 +323,11 @@ else
|
||||||
ifneq (,$(findstring strict-overflow,$(GCC_OPTIMIZERS)))
|
ifneq (,$(findstring strict-overflow,$(GCC_OPTIMIZERS)))
|
||||||
CFLAGS_O += -fno-strict-overflow
|
CFLAGS_O += -fno-strict-overflow
|
||||||
endif
|
endif
|
||||||
ifneq (,$(findstring lto,$(GCC_OPTIMIZERS)))
|
ifeq (,$(NO_LTO))
|
||||||
CFLAGS_O += -flto -fwhole-program
|
ifneq (,$(findstring lto,$(GCC_OPTIMIZERS)))
|
||||||
LDFLAGS_O += -flto -fwhole-program
|
CFLAGS_O += -flto -fwhole-program
|
||||||
|
LDFLAGS_O += -flto -fwhole-program
|
||||||
|
endif
|
||||||
endif
|
endif
|
||||||
BUILD_FEATURES = - compiler optimizations and no debugging support
|
BUILD_FEATURES = - compiler optimizations and no debugging support
|
||||||
endif
|
endif
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue