1
0
mirror of https://github.com/wfjm/w11.git synced 2026-02-26 17:13:27 +00:00

minor updates

- Rw11Probe: ctor: fData* initialized as 0 (not false)
- tbench/*/test_*.tcl: add proper device check
- ibd_ibtst: fix sensitivity list
- RlinkContext: BUGFIX: use proper polarity of status mask
- tools/asm-11/lib
  - defs_*.tcl: add va.xxx and vp.xxx vector defs
  - vec_devcatch{_reset}.mac: rename v..deu to v..xu
This commit is contained in:
wfjm
2019-03-16 11:45:05 +01:00
parent ed5c8b7fc1
commit a36531709c
21 changed files with 110 additions and 50 deletions

View File

@@ -61,7 +61,10 @@ The full set of tests is only run for tagged releases.
automatic return type determination for the getter lambdas. Changed back
to using bind, now `std::bind`, for method forwarders. This is safer and
also more compact.
- RlinkContext: use now proper polarity of status mask. Was wrong since
2015-05-12 release w11a_V0.753 which inverted the mask polarity. Had no
practical consequences, went therefore undetected for such a long time.
### Known issues
<!-- --------------------------------------------------------------------- -->

View File

@@ -1,4 +1,4 @@
-- $Id: ibd_ibtst.vhd 1116 2019-03-03 08:24:07Z mueller $
-- $Id: ibd_ibtst.vhd 1122 2019-03-17 08:15:42Z mueller $
--
-- Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
--
@@ -176,7 +176,8 @@ begin
end if;
end process proc_regs;
proc_next : process (R_REGS, IB_MREQ, RESET, FIFO_DO, FIFO_EMPTY, FIFO_FULL)
proc_next : process (R_REGS, IB_MREQ, RESET, FIFO_DO, FIFO_EMPTY,
FIFO_FULL, FIFO_SIZE)
variable r : regs_type := regs_init;
variable n : regs_type := regs_init;
variable ibreq : slbit := '0';

View File

@@ -1,9 +1,14 @@
; $Id: defs_kwp.mac 1045 2018-09-15 15:20:57Z mueller $
; $Id: defs_kwp.mac 1122 2019-03-17 08:15:42Z mueller $
; Copyright 2018- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
; License disclaimer see License.txt in $RETROBASE directory
;
; definitions for KW11-P programmable clock
;
; vector address/priority definition
;
va.kwp=000104
vp.kwp=7
;
; register addresses
;
kw.csr=172540

View File

@@ -1,9 +1,14 @@
; $Id: defs_rk.mac 830 2016-12-26 20:25:49Z mueller $
; $Id: defs_rk.mac 1122 2019-03-17 08:15:42Z mueller $
; Copyright 2014- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
; License disclaimer see License.txt in $RETROBASE directory
;
; definitions for RK11 controler (as in defs_rk.das)
;
; vector address/priority definition
;
va.rk=000220
vp.rk=5
;
; register addresses
;
rk.ds=177400

View File

@@ -1,9 +1,14 @@
; $Id: defs_rp.mac 830 2016-12-26 20:25:49Z mueller $
; $Id: defs_rp.mac 1122 2019-03-17 08:15:42Z mueller $
; Copyright 2015- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
; License disclaimer see License.txt in $RETROBASE directory
;
; definitions for RH70/RPRM controler
;
; vector address/priority definition
;
va.rp=000254
vp.rp=5
;
; register addresses
;
rp.cs1=176700

View File

@@ -1,9 +1,14 @@
; $Id: defs_tm.mac 830 2016-12-26 20:25:49Z mueller $
; $Id: defs_tm.mac 1122 2019-03-17 08:15:42Z mueller $
; Copyright 2015- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
; License disclaimer see License.txt in $RETROBASE directory
;
; definitions for RK11 controler
;
; vector address/priority definition
;
va.tm=000224
vp.tm=5
;
; register addresses
;
tm.sr =172520

View File

@@ -1,9 +1,14 @@
; $Id: defs_xu.mac 848 2017-02-04 14:55:30Z mueller $
; $Id: defs_xu.mac 1122 2019-03-17 08:15:42Z mueller $
; Copyright 2017- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
; License disclaimer see License.txt in $RETROBASE directory
;
; definitions for DEUNA controler
;
; vector address/priority definition
;
va.xu=000120
vp.xu=5
;
; register addresses
;
xu.pr0=174510

View File

@@ -1,4 +1,4 @@
; $Id: vec_devcatch.mac 848 2017-02-04 14:55:30Z mueller $
; $Id: vec_devcatch.mac 1122 2019-03-17 08:15:42Z mueller $
; Copyright 2015- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
; License disclaimer see License.txt in $RETROBASE directory
;
@@ -43,7 +43,7 @@ v..kwp: .word v..kwp+2 ; vec 104 (KW11-P)
.word 0
;
. = 000120
v..deu: .word v..deu+2 ; vec 120 (DEUNA)
v..xu: .word v..xu+2 ; vec 120 (DEUNA)
.word 0
;
. = 000160

View File

@@ -1,4 +1,4 @@
; $Id: vec_devcatch_reset.mac 848 2017-02-04 14:55:30Z mueller $
; $Id: vec_devcatch_reset.mac 1122 2019-03-17 08:15:42Z mueller $
; Copyright 2015- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
; License disclaimer see License.txt in $RETROBASE directory
;
@@ -19,7 +19,7 @@
mov #v..kwp+2,v..kwp ; vec 104 (KW11-P)
clr v..kwp+2
;
mov #v..deu+2,v..deu ; vec 120 (DEUNA)
mov #v..xu+2,v..xu ; vec 120 (DEUNA)
clr v..deu+2
;
mov #v..rl+2,v..rl ; vec 160 (RL11)

View File

@@ -1,6 +1,6 @@
// $Id: RlinkContext.cpp 1089 2018-12-19 10:45:41Z mueller $
// $Id: RlinkContext.cpp 1122 2019-03-17 08:15:42Z mueller $
//
// Copyright 2013-2018 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
// Copyright 2013-2019 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
//
// This program is free software; you may redistribute and/or modify it under
// the terms of the GNU General Public License as published by the Free
@@ -13,6 +13,7 @@
//
// Revision History:
// Date Rev Version Comment
// 2019-03-16 1122 1.1 BUGFIX: use proper polarity of status mask
// 2018-12-18 1089 1.0.2 use c++ style casts
// 2017-04-07 868 1.0.1 Dump(): add detail arg
// 2013-02-23 492 1.0 Initial version
@@ -44,7 +45,7 @@ namespace Retro {
RlinkContext::RlinkContext()
: fStatusVal(0),
fStatusMsk(0xff),
fStatusMsk(0x00),
fErrCnt(0)
{}

View File

@@ -1,6 +1,6 @@
// $Id: RlinkContext.hpp 983 2018-01-02 20:35:59Z mueller $
// $Id: RlinkContext.hpp 1122 2019-03-17 08:15:42Z mueller $
//
// Copyright 2013-2017 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
// Copyright 2013-2019 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
//
// This program is free software; you may redistribute and/or modify it under
// the terms of the GNU General Public License as published by the Free
@@ -13,6 +13,7 @@
//
// Revision History:
// Date Rev Version Comment
// 2019-03-16 1122 1.2 BUGFIX: use proper polarity of status mask
// 2017-04-07 868 1.1.1 Dump(): add detail arg
// 2015-03-28 660 1.1 add SetStatus(Value|Mask)()
// 2013-02-23 492 1.0 Initial version
@@ -36,7 +37,7 @@ namespace Retro {
RlinkContext();
~RlinkContext();
void SetStatus(uint8_t stat, uint8_t statmsk=0xff);
void SetStatus(uint8_t stat, uint8_t statmsk=0x00);
void SetStatusValue(uint8_t stat);
void SetStatusMask(uint8_t statmsk);

View File

@@ -1,6 +1,6 @@
// $Id: RlinkContext.ipp 983 2018-01-02 20:35:59Z mueller $
// $Id: RlinkContext.ipp 1122 2019-03-17 08:15:42Z mueller $
//
// Copyright 2013-2015 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
// Copyright 2013-2019 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
//
// This program is free software; you may redistribute and/or modify it under
// the terms of the GNU General Public License as published by the Free
@@ -13,6 +13,7 @@
//
// Revision History:
// Date Rev Version Comment
// 2019-03-16 1122 1.2 BUGFIX: use proper polarity of status mask
// 2015-03-28 660 1.1 add SetStatus(Value|Mask)()
// 2013-02-23 492 1.0 Initial version
// ---------------------------------------------------------------------------
@@ -74,7 +75,7 @@ inline uint8_t RlinkContext::StatusMask() const
inline bool RlinkContext::StatusIsChecked() const
{
return fStatusMsk != 0xff;
return fStatusMsk != 0x00;
}
//------------------------------------------+-----------------------------------
@@ -82,7 +83,7 @@ inline bool RlinkContext::StatusIsChecked() const
inline bool RlinkContext::StatusCheck(uint8_t val) const
{
return (val|fStatusMsk) == (fStatusVal|fStatusMsk);
return (val & fStatusMsk) == fStatusVal;
}
//------------------------------------------+-----------------------------------

View File

@@ -1,6 +1,6 @@
// $Id: Rw11Probe.cpp 1090 2018-12-21 12:17:35Z mueller $
// $Id: Rw11Probe.cpp 1121 2019-03-11 08:59:12Z mueller $
//
// Copyright 2013-2018 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
// Copyright 2013-2019 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
//
// This program is free software; you may redistribute and/or modify it under
// the terms of the GNU General Public License as published by the Free
@@ -13,6 +13,7 @@
//
// Revision History:
// Date Rev Version Comment
// 2019-03-10 1121 1.1.3 ctor: fData* initialized as 0 (not false)
// 2018-12-19 1090 1.1.2 use RosPrintf(bool)
// 2017-04-07 868 1.1.1 Dump(): add detail arg
// 2017-02-04 848 1.1 Keep probe data; add DataInt(), DataRem()
@@ -20,7 +21,6 @@
// ---------------------------------------------------------------------------
/*!
\file
\brief Implemenation of Rw11Probe.
*/
@@ -51,8 +51,8 @@ Rw11Probe::Rw11Probe(uint16_t addr, bool probeint, bool proberem)
fProbeDone(false),
fFoundInt(false),
fFoundRem(false),
fDataInt(false),
fDataRem(false)
fDataInt(0),
fDataRem(0)
{}
//------------------------------------------+-----------------------------------

View File

@@ -1,4 +1,4 @@
# $Id: test_deuna_func.tcl 1119 2019-03-08 16:46:46Z mueller $
# $Id: test_deuna_func.tcl 1120 2019-03-09 18:19:31Z mueller $
#
# Copyright 2017-2019 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# License disclaimer see License.txt in $RETROBASE directory
@@ -169,5 +169,5 @@ $cpu cp \
-ribr xua.pr0 -edata 0
# harvest breset/creset triggered attn's
rlc wtlam 0.
rlc exec -attn -edata 0
rlc wtlam 0.

View File

@@ -1,10 +1,11 @@
# $Id: test_rhrp_basics.tcl 830 2016-12-26 20:25:49Z mueller $
# $Id: test_rhrp_basics.tcl 1120 2019-03-09 18:19:31Z mueller $
#
# Copyright 2015- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# Copyright 2015-2019 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# License disclaimer see License.txt in $RETROBASE directory
#
# Revision History:
# Date Rev Version Comment
# 2019-03-09 1120 1.0.1 add proper device check
# 2015-03-29 660 1.0 Initial version
#
# Test basic access
@@ -17,7 +18,10 @@
rlc log "test_rhrp_basics: basic access tests --------------------------------"
rlc log " setup context"
package require ibd_rhrp
ibd_rhrp::setup
if {![ibd_rhrp::setup]} {
rlc log " test_rhrp_regs-W: device not found, test aborted"
return
}
rlc set statmask $rw11::STAT_DEFMASK
rlc set statvalue 0

View File

@@ -1,10 +1,11 @@
# $Id: test_rhrp_func_reg.tcl 830 2016-12-26 20:25:49Z mueller $
# $Id: test_rhrp_func_reg.tcl 1120 2019-03-09 18:19:31Z mueller $
#
# Copyright 2015- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# Copyright 2015-2019 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# License disclaimer see License.txt in $RETROBASE directory
#
# Revision History:
# Date Rev Version Comment
# 2019-03-09 1120 1.0.2 add proper device check
# 2015-06-20 692 1.0.1 de-configure all drives at begin
# 2015-03-29 660 1.0 Initial version
#
@@ -15,7 +16,10 @@
rlc log "test_rhrp_func_reg: test functions - register level -----------------"
rlc log " setup: unit 0:RP06(mol), 1:RM05(mol,wrl), 2: RP07(mol=0), 3: off"
package require ibd_rhrp
ibd_rhrp::setup
if {![ibd_rhrp::setup]} {
rlc log " test_rhrp_regs-W: device not found, test aborted"
return
}
rlc set statmask $rw11::STAT_DEFMASK
rlc set statvalue 0

View File

@@ -1,10 +1,11 @@
# $Id: test_rhrp_int.tcl 895 2017-05-07 07:38:47Z mueller $
# $Id: test_rhrp_int.tcl 1120 2019-03-09 18:19:31Z mueller $
#
# Copyright 2015- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# Copyright 2015-2019 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# License disclaimer see License.txt in $RETROBASE directory
#
# Revision History:
# Date Rev Version Comment
# 2019-03-09 1120 1.1.3 add proper device check
# 2015-07-25 704 1.1.2 tmpproc_dotest: use args rather opts
# 2015-06-20 692 1.1.1 de-configure all drives at begin
# 2015-05-04 674 1.1 w11a start/stop/suspend overhaul
@@ -17,7 +18,10 @@
rlc log "test_rhrp_int: test interrupt response ------------------------------"
rlc log " setup: unit 0:RP06(mol), 1:RM05(mol,wrl), 2: RP07(mol=0), 3: off"
package require ibd_rhrp
ibd_rhrp::setup
if {![ibd_rhrp::setup]} {
rlc log " test_rhrp_regs-W: device not found, test aborted"
return
}
rlc set statmask $rw11::STAT_DEFMASK
rlc set statvalue 0

View File

@@ -1,10 +1,11 @@
# $Id: test_rhrp_int2.tcl 895 2017-05-07 07:38:47Z mueller $
# $Id: test_rhrp_int2.tcl 1120 2019-03-09 18:19:31Z mueller $
#
# Copyright 2015- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# Copyright 2015-2019 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# License disclaimer see License.txt in $RETROBASE directory
#
# Revision History:
# Date Rev Version Comment
# 2019-03-09 1120 1.0.2 add proper device check
# 2015-07-25 704 1.0.1 tmpproc_dotest: use args rather opts
# 2015-05-20 692 1.0 Initial version
#
@@ -15,7 +16,10 @@
rlc log "test_rhrp_int2: test interrupt response for nested xfer+seek --------"
rlc log " setup: unit 0-3: RP06(mol)"
package require ibd_rhrp
ibd_rhrp::setup
if {![ibd_rhrp::setup]} {
rlc log " test_rhrp_regs-W: device not found, test aborted"
return
}
rlc set statmask $rw11::STAT_DEFMASK
rlc set statvalue 0

View File

@@ -1,10 +1,11 @@
# $Id: test_rhrp_regs.tcl 830 2016-12-26 20:25:49Z mueller $
# $Id: test_rhrp_regs.tcl 1120 2019-03-09 18:19:31Z mueller $
#
# Copyright 2015- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# Copyright 2015-2019 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# License disclaimer see License.txt in $RETROBASE directory
#
# Revision History:
# Date Rev Version Comment
# 2019-03-09 1120 1.0.2 add proper device check
# 2015-06-20 692 1.0.1 de-configure all drives at begin
# 2015-03-29 660 1.0 Initial version
#
@@ -20,7 +21,10 @@
rlc log "test_rhrp_regs: test register response ------------------------------"
rlc log " setup context; unit 0:RP06, 1:RM05, 2: RP07, 3: off"
package require ibd_rhrp
ibd_rhrp::setup
if {![ibd_rhrp::setup]} {
rlc log " test_rhrp_regs-W: device not found, test aborted"
return
}
rlc set statmask $rw11::STAT_DEFMASK
rlc set statvalue 0

View File

@@ -1,10 +1,11 @@
# $Id: test_tm11_int.tcl 895 2017-05-07 07:38:47Z mueller $
# $Id: test_tm11_int.tcl 1120 2019-03-09 18:19:31Z mueller $
#
# Copyright 2015- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# Copyright 2015-2019 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# License disclaimer see License.txt in $RETROBASE directory
#
# Revision History:
# Date Rev Version Comment
# 2019-03-09 1120 1.0.2 add proper device check
# 2015-07-25 704 1.0.1 tmpproc_dotest: use args rather opts
# 2015-05-17 683 1.0 Initial version
#
@@ -15,7 +16,10 @@
rlc log "test_tm11_int: test interrupt response ------------------------------"
rlc log " setup: all units online"
package require ibd_tm11
ibd_tm11::setup
if {![ibd_tm11::setup]} {
rlc log " test_tm11_regs-W: device not found, test aborted"
return
}
rlc set statmask $rw11::STAT_DEFMASK
rlc set statvalue 0

View File

@@ -1,10 +1,11 @@
# $Id: test_tm11_regs.tcl 830 2016-12-26 20:25:49Z mueller $
# $Id: test_tm11_regs.tcl 1120 2019-03-09 18:19:31Z mueller $
#
# Copyright 2015- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# Copyright 2015-2019 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# License disclaimer see License.txt in $RETROBASE directory
#
# Revision History:
# Date Rev Version Comment
# 2019-03-09 1120 1.0.1 add proper device check
# 2015-05-17 683 1.0 Initial version
#
# Test register response
@@ -13,7 +14,10 @@
# ----------------------------------------------------------------------------
rlc log "test_tm11_regs: test register response ------------------------------"
package require ibd_tm11
ibd_tm11::setup
if {![ibd_tm11::setup]} {
rlc log " test_tm11_regs-W: device not found, test aborted"
return
}
rlc set statmask $rw11::STAT_DEFMASK
rlc set statvalue 0