diff --git a/doc/CHANGELOG.md b/doc/CHANGELOG.md
index c3afbbd1..bc5a7c20 100644
--- a/doc/CHANGELOG.md
+++ b/doc/CHANGELOG.md
@@ -36,6 +36,7 @@ The full set of tests is only run for tagged releases.
- remove Atlys support (only test designs, a w11 design was never done)
- cleanup SimH setup files (\*.scmd), use autoconfig, set disk types
- cleanup code base, use page,mmr\*,pdr,par instead of segment,ssr\*,sdr,sar
+- sysid encodes now system type, allows to distingish w11,SimH,e11
### New features
- new verification codes
- tools/tcode: fast cpu verification codes
@@ -69,9 +70,15 @@ The full set of tests is only run for tagged releases.
- rtl/sys_gen/tst_rlink_cuff/atlys/sys_tst_rlink_cuff_atlys
- rtl/sys_gen/tst_snhumanio/atlys/sys_tst_snhumanio_atlys
- general changes
- - DEC used in early documents 'segment', later on 'page' for the MMU object
- - in the w11a code base (\*.vhd,\*.\*pp,\*.tcl,\*.mac) the naming was mixed
- - now all changed to page,mmr\*,pdr,par; all segment,ssr\*,sdr,sar removed
+ - segment -< page rename
+ - DEC used in early documents 'segment', later on 'page' for the MMU object
+ - in the w11a code base (\*.vhd,\*.\*pp,\*.tcl,\*.mac) the naming was mixed
+ - now all changed to page,mmr\*,pdr,par; all segment,ssr\*,sdr,sar removed
+ - usage of 11/70 sysid
+ - encodes emulator(15),type(14:12),cpu_number(11:09) and serial number(8:0)
+ - pdp11_reg70: set sysid to 010123 --> real w11
+ - *.scmd: set sysid to 110234 --> emu Simh
+ - *.ecmd: set sysid to 120345 --> emu e11
### Bug Fixes
- tools/asm-11/lib
- tcode_std_start.mac: fix sdreg probe code
@@ -375,7 +382,7 @@ The full set of tests is only run for tagged releases.
## 2018-12-29: [w11a_V0.753](https://github.com/wfjm/w11/releases/tag/w11a_V0.753) - rev 1096(wfjm)
### Summary
- add continuous integration support via [Travis CI](https://travis-ci.org),
- add [project wfjm/w11](https://travis-ci.org/wfjm/w11), and setup
+ add [project wfjm/w11](https://travis-ci.org/wfjm/w11), and set up
a `.travis.yml` ([see blog](https://wfjm.github.io/blogs/w11/2018-09-16-travis-based-ci-cd-workflow.html)).
- use static source code analysis [Coverity Scan](https://scan.coverity.com),
add [project wfjm/w11](https://scan.coverity.com/projects/wfjm-w11).
@@ -438,7 +445,7 @@ The full set of tests is only run for tagged releases.
- DM_STAT_SY: removed, now replaced by DM_STAT_CA
- DM_STAT_EXP: added, for signals exported by pdp11_sys70
- pdp11_sys70:
- - instantiate pdp11_dmpcnt, setup performance counter sigs
+ - instantiate pdp11_dmpcnt, set up performance counter sigs
- drop ITIMER,DM_STAT_DP, use DM_STAT_EXP, add PERFEXT port
- pdp11_sequencer: drive DM_STAT_SE.(cpbusy,idec,pcload,itimer), drop ITIMER
- pdp11_cache: drop CHIT, add DM_STAT_CA port, add detailed monitoring
@@ -679,7 +686,7 @@ The full set of tests is only run for tagged releases.
- w11 shell .bs now support ibus register names and ranges
- rw11/dmhbpt.tcl: hb_set: use imap_range2addr, allow regnam and range
- integrate rbus monitor in w11 shell
- - ti_rri: setup rbus monitor if detected
+ - ti_rri: set up rbus monitor if detected
- rw11/shell.tcl: add .rme,.rmd,.rmf,.rml
- ibd_ibmon/util.tcl: move out imap_reg2addr
- rbmoni/util.tcl: add procs filter,rme,rmf
diff --git a/doc/w11a_known_differences.md b/doc/w11a_known_differences.md
index 021fbb3a..33bf19b6 100644
--- a/doc/w11a_known_differences.md
+++ b/doc/w11a_known_differences.md
@@ -10,6 +10,7 @@ The issues of the w11 CPU and systems are listed in a separate document
- [Differences in unspecified behavior cases between w11a and
KB11-C (11/70)](#user-content-unspec)
- [Known limitations](#user-content-lim)
+- [Other differences](#user-content-other)
### Known differences between w11a and KB11-C (11/70)
@@ -82,3 +83,20 @@ this is considered as acceptable implementation difference.
to a timeout, again mostly in test programs.
**--> a 'watch dog' mechanism will be added in a future version which
suspends the CPU when the server doesn't respond fast enough.**
+
+
+### Other differences
+
+- usage of 11/70 SYSID register
+ - in real 11/70's sysid held the individual serial number
+ - in the w11 project sysid encodes the execution environment
+ - this allows to distinguish between real w11 and emulation under SimH or e11
+ - the SYSID is divided in fields
+ - bit 15: emulator flag (0=w11,1=emulator)
+ - bit 14:12: type, encodes w11 or emulator type
+ - bit 11:09: cpu number on 11/74 systems
+ - bit 8:0: serial number
+ - current assignments are
+ - w11a: 010123
+ - SimH: 110234
+ - e11: 120345
diff --git a/rtl/w11a/pdp11_reg70.vhd b/rtl/w11a/pdp11_reg70.vhd
index 09823713..2796d618 100644
--- a/rtl/w11a/pdp11_reg70.vhd
+++ b/rtl/w11a/pdp11_reg70.vhd
@@ -1,6 +1,6 @@
--- $Id: pdp11_reg70.vhd 1181 2019-07-08 17:00:50Z mueller $
+-- $Id: pdp11_reg70.vhd 1279 2022-08-14 08:02:21Z mueller $
-- SPDX-License-Identifier: GPL-3.0-or-later
--- Copyright 2008-2015 by Walter F.J. Mueller
+-- Copyright 2008-2022 by Walter F.J. Mueller
--
------------------------------------------------------------------------------
-- Module Name: pdp11_reg70 - syn
@@ -9,10 +9,11 @@
-- Dependencies: -
-- Test bench: tb/tb_pdp11_core (implicit)
-- Target Devices: generic
--- Tool versions: ise 8.2-14.7; viv 2014.4-2016.1; ghdl 0.18-0.33
+-- Tool versions: ise 8.2-14.7; viv 2014.4-2022.1; ghdl 0.18-2.0.0
--
-- Revision History:
-- Date Rev Version Comment
+-- 2022-08-14 1279 1.1.3 set sysid to 010123
-- 2015-04-30 670 1.1.2 rename sys70 -> reg70
-- 2011-11-18 427 1.1.1 now numeric_std clean
-- 2010-10-17 333 1.1 use ibus V2 interface
@@ -103,7 +104,7 @@ begin
idout(r.mbrk'range) := r.mbrk;
end if;
if r.ibsel_sysid = '1' then
- idout := slv(to_unsigned(8#123456#,16));
+ idout := slv(to_unsigned(8#010123#,16));
end if;
if r.ibsel_mbrk='1' and ibw0='1' then
diff --git a/tools/simh/setup_w11a_max.scmd b/tools/simh/setup_w11a_max.scmd
index c641a51e..fddc4fbe 100644
--- a/tools/simh/setup_w11a_max.scmd
+++ b/tools/simh/setup_w11a_max.scmd
@@ -1,4 +1,4 @@
-; $Id: setup_w11a_max.scmd 1275 2022-08-10 08:10:40Z mueller $
+; $Id: setup_w11a_max.scmd 1280 2022-08-15 09:12:03Z mueller $
; SPDX-License-Identifier: GPL-3.0-or-later
; Copyright 2008-2022 by Walter F.J. Mueller
;
@@ -23,6 +23,7 @@
;
; Revision History:
; Date Rev Version Comment
+; 2922-08-14 1280 1.1.1 set sysid, indicate simulator and SimH
; 2022-07-14 1256 1.1 use autoconfig, cleanups
; 2008-12-28 182 1.0 Initial version
;
@@ -34,6 +35,10 @@ set cpu 4m
set cpu oct
set cpu idle
;
+; set sysid, leading '1' indicates simulator, next '1' SimH
+;
+dep sysid 110234
+;
; clock options
;
set clk 50hz
diff --git a/tools/simh/setup_w11a_mcode.scmd b/tools/simh/setup_w11a_mcode.scmd
index 97f10b93..3457e464 100644
--- a/tools/simh/setup_w11a_mcode.scmd
+++ b/tools/simh/setup_w11a_mcode.scmd
@@ -1,4 +1,4 @@
-; $Id: setup_w11a_mcode.scmd 1276 2022-08-12 10:25:13Z mueller $
+; $Id: setup_w11a_mcode.scmd 1280 2022-08-15 09:12:03Z mueller $
; SPDX-License-Identifier: GPL-3.0-or-later
; Copyright 2022- by Walter F.J. Mueller
;
@@ -17,6 +17,7 @@
;
; Revision History:
; Date Rev Version Comment
+; 2922-08-14 1280 1.1.1 set sysid, indicate simulator and SimH
; 2022-08-10 1275 1.0 Initial version (derived from setup_w11a_max.scmd)
;
; processor options
@@ -28,6 +29,10 @@ set cpu oct
set cpu idle
set cpu hist=1000
;
+; set sysid, leading '1' indicates simulator, next '1' SimH
+;
+dep sysid 110234
+;
; clock options
;
set clk 50hz
diff --git a/tools/simh/setup_w11a_min.scmd b/tools/simh/setup_w11a_min.scmd
index b1db7b44..6693be5c 100644
--- a/tools/simh/setup_w11a_min.scmd
+++ b/tools/simh/setup_w11a_min.scmd
@@ -1,4 +1,4 @@
-; $Id: setup_w11a_min.scmd 1275 2022-08-10 08:10:40Z mueller $
+; $Id: setup_w11a_min.scmd 1280 2022-08-15 09:12:03Z mueller $
; SPDX-License-Identifier: GPL-3.0-or-later
; Copyright 2009-2022 by Walter F.J. Mueller
;
@@ -25,6 +25,7 @@
;
; Revision History:
; Date Rev Version Comment
+; 2922-08-14 1280 1.1.1 set sysid, indicate simulator and SimH
; 2022-07-14 1256 1.1 use autoconfig, cleanups
; 2009-09-13 238 1.0 Initial version
;
@@ -36,6 +37,10 @@ set cpu 1m
set cpu oct
set cpu idle
;
+; set sysid, leading '1' indicates simulator, next '1' SimH
+;
+dep sysid 110234
+;
; clock options
;
set clk 50hz