diff --git a/doc/CHANGELOG.md b/doc/CHANGELOG.md index 626e88cd..891a66a6 100644 --- a/doc/CHANGELOG.md +++ b/doc/CHANGELOG.md @@ -37,6 +37,7 @@ The full set of tests is only run for tagged releases. - Rw11Cpu,RtclRw11Cpu: add ibmon setup and HasIbtst() - RtclGet.ipp: use const& for oper() of string& and Rtime& - firmware changes + - rbd_rbmon: more robust ack,err trace when busy - rbd_tester: use now fifo_simple_dram - sys_w11a_s3: set BTOWIDTH 7 (was 6, must be > vmbox atowidth (6)) - pdp11_sys70: instantiate ibd_ibtst (when sys_conf_ibtst = true) @@ -46,7 +47,12 @@ The full set of tests is only run for tagged releases. - add sys_conf_ibd_dz11 (enabled in all systems) ### Bug Fixes - +- backend code: some getters crashed with `SIGSEGV`, see + [issue #19](https://github.com/wfjm/w11/issues/19). The culprit was the + 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. + ### Known issues diff --git a/rtl/sys_gen/tst_sram/tst_sram.vhd b/rtl/sys_gen/tst_sram/tst_sram.vhd index 29909b13..aee151a2 100644 --- a/rtl/sys_gen/tst_sram/tst_sram.vhd +++ b/rtl/sys_gen/tst_sram/tst_sram.vhd @@ -1,6 +1,6 @@ --- $Id: tst_sram.vhd 1101 2019-01-02 21:22:37Z mueller $ +-- $Id: tst_sram.vhd 1116 2019-03-03 08:24:07Z mueller $ -- --- Copyright 2007-2017 by Walter F.J. Mueller +-- Copyright 2007-2019 by Walter F.J. Mueller -- -- 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 @@ -27,10 +27,11 @@ -- s3board/tb/tb_tst_sram_s3 (with sram) -- -- Target Devices: generic --- Tool versions: xst 8.2-14.7; viv 2014.4-2017.1; ghdl 0.18-0.34 +-- Tool versions: xst 8.2-14.7; viv 2014.4-2018.3; ghdl 0.18-0.35 -- -- Revision History: -- Date Rev Version Comment +-- 2019-03-02 1116 1.6.1 define init_rbf_* -- 2017-06-25 917 1.6 allow AWIDTH=17; sstat_rbf_awidth instead of _wide -- 2016-07-10 785 1.5.1 std SWI layout: now (7:4) disp select, SWI(1)->XON -- 2016-07-09 784 1.5 AWIDTH generic, add 22bit support for cram @@ -300,6 +301,9 @@ architecture syn of tst_sram is subtype df_word0 is integer range 15 downto 0; subtype df_word1 is integer range 31 downto 16; + constant init_rbf_seq: integer := 0; + constant init_rbf_mem: integer := 1; + subtype maddrh_rbf_h is integer range AWIDTH-1-16 downto 0; constant mcmd_rbf_ld: integer := 14; @@ -439,8 +443,8 @@ begin MEM_RESET <= RESET; if RB_MREQ.init='1' and RB_MREQ.addr=RB_ADDR then - SEQ_RESET <= RB_MREQ.din(0); - MEM_RESET <= RB_MREQ.din(1); + SEQ_RESET <= RB_MREQ.din(init_rbf_seq); + MEM_RESET <= RB_MREQ.din(init_rbf_mem); end if; end process proc_reset; diff --git a/rtl/vlib/rbus/rbd_rbmon.vhd b/rtl/vlib/rbus/rbd_rbmon.vhd index 1bedc54b..54af4383 100644 --- a/rtl/vlib/rbus/rbd_rbmon.vhd +++ b/rtl/vlib/rbus/rbd_rbmon.vhd @@ -1,6 +1,6 @@ --- $Id: rbd_rbmon.vhd 984 2018-01-02 20:56:27Z mueller $ +-- $Id: rbd_rbmon.vhd 1116 2019-03-03 08:24:07Z mueller $ -- --- Copyright 2010-2017 by Walter F.J. Mueller +-- Copyright 2010-2019 by Walter F.J. Mueller -- -- 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 @@ -20,7 +20,7 @@ -- Test bench: rlink/tb/tb_rlink_tba_ttcombo -- -- Target Devices: generic --- Tool versions: xst 12.1-14.7; viv 2014.4-2016.4; ghdl 0.29-0.34 +-- Tool versions: xst 12.1-14.7; viv 2014.4-2018.3; ghdl 0.29-0.35 -- -- Synthesized (xst): -- Date Rev ise Target flop lutl lutm slic t peri @@ -32,6 +32,7 @@ -- -- Revision History: -- Date Rev Version Comment +-- 2019-03-02 1116 6.0.1 more robust ack,err trace when busy -- 2017-04-16 879 6.0 revised interface, add suspend and repeat collapse -- 2015-05-02 672 5.0.1 use natural for AWIDTH to work around a ghdl issue -- 2014-12-22 619 5.0 reorganized, supports now 16 bit addresses @@ -461,9 +462,8 @@ begin n.rberr := RB_SRES_SUM.err; n.rbnbusy := (others=>'0'); else -- if non-initial cycles - if RB_SRES_SUM.err = '1' then -- keep track of err flags - n.rberr := '1'; - end if; + n.rback := r.rback or RB_SRES_SUM.ack; -- keep track of ack + n.rberr := r.rberr or RB_SRES_SUM.err; -- keep track of err if r.rbnbusy /= rbnbusylast then -- and count n.rbnbusy := slv(unsigned(r.rbnbusy) + 1); end if; diff --git a/rtl/w11a/pdp11.vhd b/rtl/w11a/pdp11.vhd index c5b5e651..05dd7816 100644 --- a/rtl/w11a/pdp11.vhd +++ b/rtl/w11a/pdp11.vhd @@ -1,6 +1,6 @@ --- $Id: pdp11.vhd 1055 2018-10-12 17:53:52Z mueller $ +-- $Id: pdp11.vhd 1116 2019-03-03 08:24:07Z mueller $ -- --- Copyright 2006-2018 by Walter F.J. Mueller +-- Copyright 2006-2019 by Walter F.J. Mueller -- -- 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 @@ -16,10 +16,11 @@ -- Description: Definitions for pdp11 components -- -- Dependencies: - --- Tool versions: ise 8.2-14.7; viv 2016.2-2018.2; ghdl 0.18-0.34 +-- Tool versions: ise 8.2-14.7; viv 2016.2-2018.3; ghdl 0.18-0.35 -- -- Revision History: -- Date Rev Version Comment +-- 2019-03-01 1116 1.6.11 define c_init_rbf_greset -- 2018-10-07 1054 1.6.10 add DM_STAT_EXP; add DM_STAT_SE.itimer -- 2018-10-05 1053 1.6.9 drop DM_STAT_SY; add DM_STAT_CA, use in pdp11_cache -- add DM_STAT_SE.pcload @@ -755,6 +756,8 @@ package pdp11 is constant c_rbaddr_membe: slv5 := "10000"; -- R/W memory write byte enables + constant c_init_rbf_greset: integer := 0; + subtype c_al_rbf_addr is integer range 15 downto 1; -- al: address constant c_ah_rbf_ena_ubmap: integer := 7; -- ah: ubmap constant c_ah_rbf_ena_22bit: integer := 6; -- ah: 22bit diff --git a/rtl/w11a/pdp11_core_rbus.vhd b/rtl/w11a/pdp11_core_rbus.vhd index 7d3da3be..df814382 100644 --- a/rtl/w11a/pdp11_core_rbus.vhd +++ b/rtl/w11a/pdp11_core_rbus.vhd @@ -1,6 +1,6 @@ --- $Id: pdp11_core_rbus.vhd 984 2018-01-02 20:56:27Z mueller $ +-- $Id: pdp11_core_rbus.vhd 1116 2019-03-03 08:24:07Z mueller $ -- --- Copyright 2007-2016 by Walter F.J. Mueller +-- Copyright 2007-2019 by Walter F.J. Mueller -- -- 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 @@ -19,7 +19,7 @@ -- Test bench: tb/tb_rlink_tba_pdp11core -- -- 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-2018.3; ghdl 0.18-0.35 -- -- Synthesized (xst): -- Date Rev ise Target flop lutl lutm slic t peri @@ -27,6 +27,7 @@ -- -- Revision History: - -- Date Rev Version Comment +-- 2019-03-02 1116 1.5.3 rename state field rbinit to greset -- 2016-05-22 767 1.5.2 don't init N_REGS (vivado fix for fsm inference) -- 2015-07-10 700 1.5.1 add cpuact logic, redefine lam as cpuact 1->0 -- 2015-05-09 677 1.5 start/stop/suspend overhaul; reset overhaul @@ -138,7 +139,7 @@ architecture syn of pdp11_core_rbus is state : state_type; -- state rbselc : slbit; -- rbus select for core rbseli : slbit; -- rbus select for ibus - rbinit : slbit; -- rbus init seen (1 cycle pulse) + greset : slbit; -- greset from rbus init (1 cycle pulse) cpreq : slbit; -- cp request flag cpfunc : slv5; -- cp function cpuact_1 : slbit; -- prev cycle cpuact @@ -154,7 +155,7 @@ architecture syn of pdp11_core_rbus is constant regs_init : regs_type := ( s_idle, -- state '0','0', -- rbselc,rbseli - '0', -- rbinit + '0', -- greset '0', -- cpreq (others=>'0'), -- cpfunc '0', -- cpuact_1 @@ -215,9 +216,9 @@ architecture syn of pdp11_core_rbus is -- generate single cycle pulse in case init against rbus base address seen -- is used to generate some state machine resets via GRESET - n.rbinit := '0'; + n.greset := '0'; if RB_MREQ.init='1' and RB_MREQ.addr=RB_ADDR_CORE then - n.rbinit := RB_MREQ.din(0); + n.greset := RB_MREQ.din(c_init_rbf_greset); end if; -- rbus address decoder @@ -431,7 +432,7 @@ architecture syn of pdp11_core_rbus is RB_LAM <= irb_lam; - GRESET <= R_REGS.rbinit; + GRESET <= R_REGS.greset; CP_CNTL.req <= r.cpreq; CP_CNTL.func <= r.cpfunc; diff --git a/rtl/w11a/pdp11_sys70.vhd b/rtl/w11a/pdp11_sys70.vhd index ccfb3820..de2be77f 100644 --- a/rtl/w11a/pdp11_sys70.vhd +++ b/rtl/w11a/pdp11_sys70.vhd @@ -1,4 +1,4 @@ --- $Id: pdp11_sys70.vhd 1112 2019-02-17 11:10:04Z mueller $ +-- $Id: pdp11_sys70.vhd 1116 2019-03-03 08:24:07Z mueller $ -- -- Copyright 2015-2019 by Walter F.J. Mueller -- @@ -36,6 +36,7 @@ -- -- Revision History: -- Date Rev Version Comment +-- 2019-03-02 1116 1.3.2 add RESET_SYS; fix pdp11_mem70 reset -- 2019-02-16 1112 1.3.1 add ibd_ibtst -- 2018-10-13 1055 1.3 drop ITIMER,DM_STAT_DP out ports, use DM_STAT_EXP -- add PERFEXT in port @@ -114,9 +115,11 @@ architecture syn of pdp11_sys70 is signal EM_MREQ : em_mreq_type := em_mreq_init; signal EM_SRES : em_sres_type := em_sres_init; - signal GRESET_L : slbit := '0'; - signal CRESET_L : slbit := '0'; - signal BRESET_L : slbit := '0'; + signal GRESET_L : slbit := '0'; -- general reset (from rbus init) + signal CRESET_L : slbit := '0'; -- cpu reset (from -creset command) + signal BRESET_L : slbit := '0'; -- bus reset (RESET inst or -breset) + + signal RESET_SYS : slbit := '0'; -- or of RESET (port) and GRESET (rbus) signal HM_ENA : slbit := '0'; signal MEM70_FMISS : slbit := '0'; @@ -160,10 +163,12 @@ begin CP_DOUT => CP_DOUT ); + RESET_SYS <= RESET or GRESET_L; -- use as reset of w11 sub-system + W11A : pdp11_core port map ( CLK => CLK, - RESET => GRESET_L, + RESET => RESET_SYS, CP_CNTL => CP_CNTL, CP_ADDR => CP_ADDR, CP_DIN => CP_DIN, @@ -192,7 +197,7 @@ begin TWIDTH => sys_conf_cache_twidth) port map ( CLK => CLK, - GRESET => GRESET_L, + GRESET => RESET_SYS, EM_MREQ => EM_MREQ, EM_SRES => EM_SRES, FMISS => CACHE_FMISS, @@ -210,7 +215,7 @@ begin MEM70: pdp11_mem70 port map ( CLK => CLK, - CRESET => BRESET_L, + CRESET => CRESET_L, HM_ENA => HM_ENA, HM_VAL => DM_STAT_CA.rdhit, CACHE_FMISS => MEM70_FMISS, @@ -229,7 +234,7 @@ begin AWIDTH => sys_conf_ibmon_awidth) port map ( CLK => CLK, - RESET => RESET, + RESET => RESET_SYS, IB_MREQ => IB_MREQ_M, IB_SRES => IB_SRES_IBMON, IB_SRES_SUM => DM_STAT_VM.ibsres @@ -239,7 +244,7 @@ begin IBTST : if sys_conf_ibtst generate signal RESET_IBTST : slbit := '0'; begin - RESET_IBTST <= RESET or GRESET_L or BRESET_L; + RESET_IBTST <= RESET_SYS or BRESET_L; I0 : ibd_ibtst generic map ( IB_ADDR => slv(to_unsigned(8#170000#,16))) @@ -267,7 +272,7 @@ begin RB_ADDR => slv(to_unsigned(16#0040#,16))) port map ( CLK => CLK, - RESET => RESET, + RESET => RESET_SYS, RB_MREQ => RB_MREQ, RB_SRES => RB_SRES_DMSCNT, DM_STAT_SE => DM_STAT_SE, @@ -285,7 +290,7 @@ begin SNUM => sys_conf_dmscnt) port map ( CLK => CLK, - RESET => RESET, + RESET => RESET_SYS, RB_MREQ => RB_MREQ, RB_SRES => RB_SRES_DMCMON, DM_STAT_SE => DM_STAT_SE, @@ -303,7 +308,7 @@ begin NUNIT => sys_conf_dmhbpt_nunit) port map ( CLK => CLK, - RESET => RESET, + RESET => RESET_SYS, RB_MREQ => RB_MREQ, RB_SRES => RB_SRES_DMHBPT, DM_STAT_SE => DM_STAT_SE, @@ -401,7 +406,7 @@ begin CENA => "11111111111111111111111111111111") -- counter enables port map ( CLK => CLK, - RESET => RESET, + RESET => RESET_SYS, RB_MREQ => RB_MREQ, RB_SRES => RB_SRES_DMPCNT, PERFSIG => PERFSIG diff --git a/tools/dox/w11_cpp.Doxyfile b/tools/dox/w11_cpp.Doxyfile index aa64fe74..0a13ca18 100644 --- a/tools/dox/w11_cpp.Doxyfile +++ b/tools/dox/w11_cpp.Doxyfile @@ -1,4 +1,4 @@ -# Doxyfile 1.8.7 +# Doxyfile 1.8.15 #--------------------------------------------------------------------------- # Project related configuration options @@ -12,6 +12,7 @@ OUTPUT_DIRECTORY = $(RETRODOXY)/w11/cpp CREATE_SUBDIRS = NO ALLOW_UNICODE_NAMES = NO OUTPUT_LANGUAGE = English +OUTPUT_TEXT_DIRECTION = None BRIEF_MEMBER_DESC = YES REPEAT_BRIEF = YES ABBREVIATE_BRIEF = @@ -33,14 +34,17 @@ OPTIMIZE_OUTPUT_FOR_C = NO OPTIMIZE_OUTPUT_JAVA = NO OPTIMIZE_FOR_FORTRAN = NO OPTIMIZE_OUTPUT_VHDL = NO +OPTIMIZE_OUTPUT_SLICE = NO EXTENSION_MAPPING = ipp=C++ MARKDOWN_SUPPORT = YES +TOC_INCLUDE_HEADINGS = 0 AUTOLINK_SUPPORT = YES BUILTIN_STL_SUPPORT = YES CPP_CLI_SUPPORT = NO SIP_SUPPORT = NO IDL_PROPERTY_SUPPORT = YES DISTRIBUTE_GROUP_DOC = NO +GROUP_NESTED_COMPOUNDS = NO SUBGROUPING = YES INLINE_GROUPED_CLASSES = NO INLINE_SIMPLE_STRUCTS = NO @@ -63,6 +67,7 @@ HIDE_IN_BODY_DOCS = NO INTERNAL_DOCS = NO CASE_SENSE_NAMES = YES HIDE_SCOPE_NAMES = NO +HIDE_COMPOUND_REFERENCE= NO SHOW_INCLUDE_FILES = YES SHOW_GROUPED_MEMB_INC = NO FORCE_LOCAL_INCLUDES = NO @@ -93,6 +98,7 @@ WARNINGS = YES WARN_IF_UNDOCUMENTED = YES WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO +WARN_AS_ERROR = NO WARN_FORMAT = "$file:$line: $text" WARN_LOGFILE = #--------------------------------------------------------------------------- @@ -154,6 +160,7 @@ HTML_COLORSTYLE_HUE = 220 HTML_COLORSTYLE_SAT = 100 HTML_COLORSTYLE_GAMMA = 80 HTML_TIMESTAMP = YES +HTML_DYNAMIC_MENUS = YES HTML_DYNAMIC_SECTIONS = NO HTML_INDEX_NUM_ENTRIES = 100 GENERATE_DOCSET = NO @@ -204,11 +211,13 @@ GENERATE_LATEX = NO LATEX_OUTPUT = latex LATEX_CMD_NAME = latex MAKEINDEX_CMD_NAME = makeindex +LATEX_MAKEINDEX_CMD = \makeindex COMPACT_LATEX = NO PAPER_TYPE = a4 EXTRA_PACKAGES = LATEX_HEADER = LATEX_FOOTER = +LATEX_EXTRA_STYLESHEET = LATEX_EXTRA_FILES = PDF_HYPERLINKS = YES USE_PDFLATEX = YES @@ -216,6 +225,8 @@ LATEX_BATCHMODE = NO LATEX_HIDE_INDICES = NO LATEX_SOURCE_CODE = NO LATEX_BIB_STYLE = plain +LATEX_TIMESTAMP = NO +LATEX_EMOJI_DIRECTORY = #--------------------------------------------------------------------------- # Configuration options related to the RTF output #--------------------------------------------------------------------------- @@ -225,6 +236,7 @@ COMPACT_RTF = NO RTF_HYPERLINKS = NO RTF_STYLESHEET_FILE = RTF_EXTENSIONS_FILE = +RTF_SOURCE_CODE = NO #--------------------------------------------------------------------------- # Configuration options related to the man page output #--------------------------------------------------------------------------- @@ -239,11 +251,13 @@ MAN_LINKS = NO GENERATE_XML = NO XML_OUTPUT = xml XML_PROGRAMLISTING = YES +XML_NS_MEMB_FILE_SCOPE = NO #--------------------------------------------------------------------------- # Configuration options related to the DOCBOOK output #--------------------------------------------------------------------------- GENERATE_DOCBOOK = NO DOCBOOK_OUTPUT = docbook +DOCBOOK_PROGRAMLISTING = NO #--------------------------------------------------------------------------- # Configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- @@ -306,6 +320,9 @@ DOT_PATH = DOTFILE_DIRS = MSCFILE_DIRS = DIAFILE_DIRS = +PLANTUML_JAR_PATH = +PLANTUML_CFG_FILE = +PLANTUML_INCLUDE_PATH = DOT_GRAPH_MAX_NODES = 50 MAX_DOT_GRAPH_DEPTH = 0 DOT_TRANSPARENT = NO diff --git a/tools/dox/w11_tcl.Doxyfile b/tools/dox/w11_tcl.Doxyfile index 64b06fe4..5397e814 100644 --- a/tools/dox/w11_tcl.Doxyfile +++ b/tools/dox/w11_tcl.Doxyfile @@ -1,4 +1,4 @@ -# Doxyfile 1.8.7 +# Doxyfile 1.8.15 #--------------------------------------------------------------------------- # Project related configuration options @@ -12,6 +12,7 @@ OUTPUT_DIRECTORY = $(RETRODOXY)/w11/tcl CREATE_SUBDIRS = NO ALLOW_UNICODE_NAMES = NO OUTPUT_LANGUAGE = English +OUTPUT_TEXT_DIRECTION = None BRIEF_MEMBER_DESC = YES REPEAT_BRIEF = YES ABBREVIATE_BRIEF = @@ -33,14 +34,17 @@ OPTIMIZE_OUTPUT_FOR_C = NO OPTIMIZE_OUTPUT_JAVA = NO OPTIMIZE_FOR_FORTRAN = NO OPTIMIZE_OUTPUT_VHDL = NO +OPTIMIZE_OUTPUT_SLICE = NO EXTENSION_MAPPING = MARKDOWN_SUPPORT = YES +TOC_INCLUDE_HEADINGS = 0 AUTOLINK_SUPPORT = YES BUILTIN_STL_SUPPORT = YES CPP_CLI_SUPPORT = NO SIP_SUPPORT = NO IDL_PROPERTY_SUPPORT = YES DISTRIBUTE_GROUP_DOC = NO +GROUP_NESTED_COMPOUNDS = NO SUBGROUPING = YES INLINE_GROUPED_CLASSES = NO INLINE_SIMPLE_STRUCTS = NO @@ -63,6 +67,7 @@ HIDE_IN_BODY_DOCS = NO INTERNAL_DOCS = NO CASE_SENSE_NAMES = YES HIDE_SCOPE_NAMES = NO +HIDE_COMPOUND_REFERENCE= NO SHOW_INCLUDE_FILES = YES SHOW_GROUPED_MEMB_INC = NO FORCE_LOCAL_INCLUDES = NO @@ -93,6 +98,7 @@ WARNINGS = YES WARN_IF_UNDOCUMENTED = YES WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO +WARN_AS_ERROR = NO WARN_FORMAT = "$file:$line: $text" WARN_LOGFILE = #--------------------------------------------------------------------------- @@ -151,6 +157,7 @@ HTML_COLORSTYLE_HUE = 220 HTML_COLORSTYLE_SAT = 100 HTML_COLORSTYLE_GAMMA = 80 HTML_TIMESTAMP = YES +HTML_DYNAMIC_MENUS = YES HTML_DYNAMIC_SECTIONS = NO HTML_INDEX_NUM_ENTRIES = 100 GENERATE_DOCSET = NO @@ -201,11 +208,13 @@ GENERATE_LATEX = NO LATEX_OUTPUT = latex LATEX_CMD_NAME = latex MAKEINDEX_CMD_NAME = makeindex +LATEX_MAKEINDEX_CMD = \makeindex COMPACT_LATEX = NO PAPER_TYPE = a4 EXTRA_PACKAGES = LATEX_HEADER = LATEX_FOOTER = +LATEX_EXTRA_STYLESHEET = LATEX_EXTRA_FILES = PDF_HYPERLINKS = YES USE_PDFLATEX = YES @@ -213,6 +222,8 @@ LATEX_BATCHMODE = NO LATEX_HIDE_INDICES = NO LATEX_SOURCE_CODE = NO LATEX_BIB_STYLE = plain +LATEX_TIMESTAMP = NO +LATEX_EMOJI_DIRECTORY = #--------------------------------------------------------------------------- # Configuration options related to the RTF output #--------------------------------------------------------------------------- @@ -222,6 +233,7 @@ COMPACT_RTF = NO RTF_HYPERLINKS = NO RTF_STYLESHEET_FILE = RTF_EXTENSIONS_FILE = +RTF_SOURCE_CODE = NO #--------------------------------------------------------------------------- # Configuration options related to the man page output #--------------------------------------------------------------------------- @@ -236,11 +248,13 @@ MAN_LINKS = NO GENERATE_XML = NO XML_OUTPUT = xml XML_PROGRAMLISTING = YES +XML_NS_MEMB_FILE_SCOPE = NO #--------------------------------------------------------------------------- # Configuration options related to the DOCBOOK output #--------------------------------------------------------------------------- GENERATE_DOCBOOK = NO DOCBOOK_OUTPUT = docbook +DOCBOOK_PROGRAMLISTING = NO #--------------------------------------------------------------------------- # Configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- @@ -303,6 +317,9 @@ DOT_PATH = DOTFILE_DIRS = MSCFILE_DIRS = DIAFILE_DIRS = +PLANTUML_JAR_PATH = +PLANTUML_CFG_FILE = +PLANTUML_INCLUDE_PATH = DOT_GRAPH_MAX_NODES = 50 MAX_DOT_GRAPH_DEPTH = 0 DOT_TRANSPARENT = NO diff --git a/tools/dox/w11_vhd_all.Doxyfile b/tools/dox/w11_vhd_all.Doxyfile index 700bc177..1c63ba49 100644 --- a/tools/dox/w11_vhd_all.Doxyfile +++ b/tools/dox/w11_vhd_all.Doxyfile @@ -1,4 +1,4 @@ -# Doxyfile 1.8.7 +# Doxyfile 1.8.15 #--------------------------------------------------------------------------- # Project related configuration options @@ -12,6 +12,7 @@ OUTPUT_DIRECTORY = $(RETRODOXY)/w11/vhd CREATE_SUBDIRS = NO ALLOW_UNICODE_NAMES = NO OUTPUT_LANGUAGE = English +OUTPUT_TEXT_DIRECTION = None BRIEF_MEMBER_DESC = YES REPEAT_BRIEF = YES ABBREVIATE_BRIEF = @@ -33,14 +34,17 @@ OPTIMIZE_OUTPUT_FOR_C = NO OPTIMIZE_OUTPUT_JAVA = NO OPTIMIZE_FOR_FORTRAN = NO OPTIMIZE_OUTPUT_VHDL = YES +OPTIMIZE_OUTPUT_SLICE = NO EXTENSION_MAPPING = MARKDOWN_SUPPORT = YES +TOC_INCLUDE_HEADINGS = 0 AUTOLINK_SUPPORT = YES BUILTIN_STL_SUPPORT = YES CPP_CLI_SUPPORT = NO SIP_SUPPORT = NO IDL_PROPERTY_SUPPORT = YES DISTRIBUTE_GROUP_DOC = NO +GROUP_NESTED_COMPOUNDS = NO SUBGROUPING = YES INLINE_GROUPED_CLASSES = NO INLINE_SIMPLE_STRUCTS = NO @@ -63,6 +67,7 @@ HIDE_IN_BODY_DOCS = NO INTERNAL_DOCS = NO CASE_SENSE_NAMES = YES HIDE_SCOPE_NAMES = YES +HIDE_COMPOUND_REFERENCE= NO SHOW_INCLUDE_FILES = YES SHOW_GROUPED_MEMB_INC = NO FORCE_LOCAL_INCLUDES = NO @@ -93,6 +98,7 @@ WARNINGS = YES WARN_IF_UNDOCUMENTED = YES WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO +WARN_AS_ERROR = NO WARN_FORMAT = "$file:$line: $text" WARN_LOGFILE = #--------------------------------------------------------------------------- @@ -155,6 +161,7 @@ HTML_COLORSTYLE_HUE = 220 HTML_COLORSTYLE_SAT = 100 HTML_COLORSTYLE_GAMMA = 80 HTML_TIMESTAMP = YES +HTML_DYNAMIC_MENUS = YES HTML_DYNAMIC_SECTIONS = NO HTML_INDEX_NUM_ENTRIES = 100 GENERATE_DOCSET = NO @@ -205,11 +212,13 @@ GENERATE_LATEX = NO LATEX_OUTPUT = latex LATEX_CMD_NAME = latex MAKEINDEX_CMD_NAME = makeindex +LATEX_MAKEINDEX_CMD = \makeindex COMPACT_LATEX = NO PAPER_TYPE = a4 EXTRA_PACKAGES = LATEX_HEADER = LATEX_FOOTER = +LATEX_EXTRA_STYLESHEET = LATEX_EXTRA_FILES = PDF_HYPERLINKS = YES USE_PDFLATEX = YES @@ -217,6 +226,8 @@ LATEX_BATCHMODE = NO LATEX_HIDE_INDICES = NO LATEX_SOURCE_CODE = NO LATEX_BIB_STYLE = plain +LATEX_TIMESTAMP = NO +LATEX_EMOJI_DIRECTORY = #--------------------------------------------------------------------------- # Configuration options related to the RTF output #--------------------------------------------------------------------------- @@ -226,6 +237,7 @@ COMPACT_RTF = NO RTF_HYPERLINKS = NO RTF_STYLESHEET_FILE = RTF_EXTENSIONS_FILE = +RTF_SOURCE_CODE = NO #--------------------------------------------------------------------------- # Configuration options related to the man page output #--------------------------------------------------------------------------- @@ -240,11 +252,13 @@ MAN_LINKS = NO GENERATE_XML = NO XML_OUTPUT = xml XML_PROGRAMLISTING = YES +XML_NS_MEMB_FILE_SCOPE = NO #--------------------------------------------------------------------------- # Configuration options related to the DOCBOOK output #--------------------------------------------------------------------------- GENERATE_DOCBOOK = NO DOCBOOK_OUTPUT = docbook +DOCBOOK_PROGRAMLISTING = NO #--------------------------------------------------------------------------- # Configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- @@ -307,6 +321,9 @@ DOT_PATH = DOTFILE_DIRS = MSCFILE_DIRS = DIAFILE_DIRS = +PLANTUML_JAR_PATH = +PLANTUML_CFG_FILE = +PLANTUML_INCLUDE_PATH = DOT_GRAPH_MAX_NODES = 50 MAX_DOT_GRAPH_DEPTH = 0 DOT_TRANSPARENT = NO diff --git a/tools/tbench/cp/test_cp_ibrbasics.tcl b/tools/tbench/cp/test_cp_ibrbasics.tcl index e5479825..4fa5c127 100644 --- a/tools/tbench/cp/test_cp_ibrbasics.tcl +++ b/tools/tbench/cp/test_cp_ibrbasics.tcl @@ -1,10 +1,11 @@ -# $Id: test_cp_ibrbasics.tcl 847 2017-01-29 22:38:42Z mueller $ +# $Id: test_cp_ibrbasics.tcl 1116 2019-03-03 08:24:07Z mueller $ # -# Copyright 2014- by Walter F.J. Mueller +# Copyright 2014-2019 by Walter F.J. Mueller # License disclaimer see License.txt in $RETROBASE directory # # Revision History: # Date Rev Version Comment +# 2019-03-01 1116 1.1.1 use imap addresses for test area # 2014-12-26 621 1.1 test membe # 2014-03-02 552 1.0 Initial version # @@ -17,82 +18,86 @@ # ---------------------------------------------------------------------------- rlc log "test_cp_ibrbasics: Test very basic ibus interface gymnastics --------" +set sarsi0 [$cpu imap sarsi.0] +set sarsi1 [$cpu imap sarsi.1] +set sarsi2 [$cpu imap sarsi.2] + rlc log " write/read ibus space (MMU SAR SM I regs) via bwm/brm" -$cpu cp -wal 0172240 \ +$cpu cp -wal $sarsi0 \ -bwm {012340 012342 012344} -$cpu cp -wal 0172240 \ +$cpu cp -wal $sarsi0 \ -brm 3 -edata {012340 012342 012344} rlc log " write/read ibus space (MMU SAR SM I regs) via wibr/ribr" -$cpu cp -ribr 0172240 -edata 012340 \ - -ribr 0172242 -edata 012342 \ - -ribr 0172244 -edata 012344 -$cpu cp -wibr 0172240 022340 \ - -wibr 0172242 022342 \ - -wibr 0172244 022344 -$cpu cp -ribr 0172240 -edata 022340 \ - -ribr 0172242 -edata 022342 \ - -ribr 0172244 -edata 022344 +$cpu cp -ribr $sarsi0 -edata 012340 \ + -ribr $sarsi1 -edata 012342 \ + -ribr $sarsi2 -edata 012344 +$cpu cp -wibr $sarsi0 022340 \ + -wibr $sarsi1 022342 \ + -wibr $sarsi2 022344 +$cpu cp -ribr $sarsi0 -edata 022340 \ + -ribr $sarsi1 -edata 022342 \ + -ribr $sarsi2 -edata 022344 rlc log " membe with wibr (non sticky)" -$cpu cp -wibr 0172240 0x0100 \ - -wibr 0172242 0x0302 \ - -wibr 0172244 0x0504 +$cpu cp -wibr $sarsi0 0x0100 \ + -wibr $sarsi1 0x0302 \ + -wibr $sarsi2 0x0504 rlc log " membe = 0 (no byte selected)" $cpu cp -wmembe 0 \ - -wibr 0172242 0xffff \ + -wibr $sarsi1 0xffff \ -rmembe -edata 0x03 \ - -ribr 0172242 -edata 0x0302 + -ribr $sarsi1 -edata 0x0302 rlc log " membe = 1 (lsb selected)" $cpu cp -wmembe 0x01 \ - -wibr 0172242 0xffaa \ + -wibr $sarsi1 0xffaa \ -rmembe -edata 0x03 \ - -ribr 0172242 -edata 0x03aa + -ribr $sarsi1 -edata 0x03aa rlc log " membe = 2 (msb selected)" $cpu cp -wmembe 0x02 \ - -wibr 0172242 0xbbff \ + -wibr $sarsi1 0xbbff \ -rmembe -edata 0x03 \ - -ribr 0172242 -edata 0xbbaa + -ribr $sarsi1 -edata 0xbbaa -$cpu cp -ribr 0172240 -edata 0x0100 \ - -ribr 0172242 -edata 0xbbaa \ - -ribr 0172244 -edata 0x0504 +$cpu cp -ribr $sarsi0 -edata 0x0100 \ + -ribr $sarsi1 -edata 0xbbaa \ + -ribr $sarsi2 -edata 0x0504 rlc log " membe with wibr (sticky)" -$cpu cp -wibr 0172240 0x1110 \ - -wibr 0172242 0x1312 \ - -wibr 0172244 0x1514 +$cpu cp -wibr $sarsi0 0x1110 \ + -wibr $sarsi1 0x1312 \ + -wibr $sarsi2 0x1514 rlc log " membe = 0 + stick (no byte selected)" $cpu cp -wmembe 0 -stick \ - -wibr 0172242 0xffff \ + -wibr $sarsi1 0xffff \ -rmembe -edata 0x04 \ - -ribr 0172242 -edata 0x1312 + -ribr $sarsi1 -edata 0x1312 rlc log " membe = 1 + stick (lsb selected)" $cpu cp -wmembe 1 -stick \ - -wibr 0172240 0xffaa \ + -wibr $sarsi0 0xffaa \ -rmembe -edata 0x05 \ - -wibr 0172242 0xffbb \ + -wibr $sarsi1 0xffbb \ -rmembe -edata 0x05 \ - -wibr 0172244 0xffcc \ + -wibr $sarsi2 0xffcc \ -rmembe -edata 0x05 -$cpu cp -ribr 0172240 -edata 0x11aa \ - -ribr 0172242 -edata 0x13bb \ - -ribr 0172244 -edata 0x15cc +$cpu cp -ribr $sarsi0 -edata 0x11aa \ + -ribr $sarsi1 -edata 0x13bb \ + -ribr $sarsi2 -edata 0x15cc rlc log " membe = 2 + stick (msb selected)" $cpu cp -wmembe 2 -stick \ - -wibr 0172240 0xccff \ + -wibr $sarsi0 0xccff \ -rmembe -edata 0x06 \ - -wibr 0172242 0xbbff \ + -wibr $sarsi1 0xbbff \ -rmembe -edata 0x06 \ - -wibr 0172244 0xaaff \ + -wibr $sarsi2 0xaaff \ -rmembe -edata 0x06 -$cpu cp -ribr 0172240 -edata 0xccaa \ - -ribr 0172242 -edata 0xbbbb \ - -ribr 0172244 -edata 0xaacc +$cpu cp -ribr $sarsi0 -edata 0xccaa \ + -ribr $sarsi1 -edata 0xbbbb \ + -ribr $sarsi2 -edata 0xaacc rlc log " membe = 3 again" $cpu cp -wmembe 3 \ -rmembe -edata 0x03 diff --git a/tools/tbench/deuna/test_deuna_func.tcl b/tools/tbench/deuna/test_deuna_func.tcl index 3b9ffef1..85cb6508 100644 --- a/tools/tbench/deuna/test_deuna_func.tcl +++ b/tools/tbench/deuna/test_deuna_func.tcl @@ -1,6 +1,6 @@ -# $Id: test_deuna_func.tcl 894 2017-05-07 07:18:32Z mueller $ +# $Id: test_deuna_func.tcl 1119 2019-03-08 16:46:46Z mueller $ # -# Copyright 2017- by Walter F.J. Mueller +# Copyright 2017-2019 by Walter F.J. Mueller # License disclaimer see License.txt in $RETROBASE directory # # Revision History: @@ -167,3 +167,7 @@ $cpu cp \ -ribr xua.pr0 -edata [regbld ibd_deuna::PR0RR busy brst] \ -wibr xua.pr0 [regbld ibd_deuna::PR0RW brst] \ -ribr xua.pr0 -edata 0 + +# harvest breset/creset triggered attn's +rlc wtlam 0. +rlc exec -attn -edata 0 diff --git a/tools/tbench/w11a/test_w11a_sdreg.tcl b/tools/tbench/w11a/test_w11a_sdreg.tcl index 0a001abc..8d3d1d9d 100644 --- a/tools/tbench/w11a/test_w11a_sdreg.tcl +++ b/tools/tbench/w11a/test_w11a_sdreg.tcl @@ -1,11 +1,11 @@ -# $Id: test_w11a_sdreg.tcl 1118 2019-03-05 19:26:39Z mueller $ +# $Id: test_w11a_sdreg.tcl 1119 2019-03-08 16:46:46Z mueller $ # # Copyright 2019- by Walter F.J. Mueller # License disclaimer see License.txt in $RETROBASE directory # # Revision History: # Date Rev Version Comment -# 2019-03-05 1118 1.01 use -wal +# 2019-03-05 1118 1.0.1 use -wal # 2019-02-17 1113 1.0 Initial version # # Test cntl register response diff --git a/tools/tbench/w11a_cmon/test_cmon_regs.tcl b/tools/tbench/w11a_cmon/test_cmon_regs.tcl index 870c9a58..0669520c 100644 --- a/tools/tbench/w11a_cmon/test_cmon_regs.tcl +++ b/tools/tbench/w11a_cmon/test_cmon_regs.tcl @@ -1,10 +1,11 @@ -# $Id: test_cmon_regs.tcl 1044 2018-09-15 11:12:07Z mueller $ +# $Id: test_cmon_regs.tcl 1116 2019-03-03 08:24:07Z mueller $ # -# Copyright 2015-2017 by Walter F.J. Mueller +# Copyright 2015-2019 by Walter F.J. Mueller # License disclaimer see License.txt in $RETROBASE directory # # Revision History: # Date Rev Version Comment +# 2019-03-02 1116 2.0.1 add a few cntl logic tests # 2017-04-23 885 2.0 adopt to revised interface # 2015-07-18 701 1.0 Initial version # @@ -23,6 +24,7 @@ rlc log " A basic register access tests -----------------------------" rlc log " A1: write/read cntl---------------------------------" # test that starting captures option flags, and that stoping keeps them +# test that NOOP is a noop and doesn't change flags $cpu cp \ -wreg cm.cntl [regbld rw11::CM_CNTL {func "STA"}] \ -rreg cm.cntl -edata [regbld rw11::CM_CNTL] \ @@ -35,17 +37,23 @@ $cpu cp \ -wreg cm.cntl [regbld rw11::CM_CNTL wstop mwsup {func "STA"}] \ -rreg cm.cntl -edata [regbld rw11::CM_CNTL wstop mwsup] \ -wreg cm.cntl [regbld rw11::CM_CNTL {func "STO"}] \ + -rreg cm.cntl -edata [regbld rw11::CM_CNTL wstop mwsup] \ + -wreg cm.cntl [regbld rw11::CM_CNTL {func "NOOP"}] \ -rreg cm.cntl -edata [regbld rw11::CM_CNTL wstop mwsup] rlc log " A2: write cntl, read stat --------------------------" # test that susp/run follow functions set to cntl +# test that sus/res does not change option flags set statmsk [regbld rw11::CM_STAT wrap susp run] $cpu cp \ - -wreg cm.cntl [regbld rw11::CM_CNTL {func "STA"}] \ + -wreg cm.cntl [regbld rw11::CM_CNTL wstop imode {func "STA"}] \ + -rreg cm.cntl -edata [regbld rw11::CM_CNTL wstop imode] \ -rreg cm.stat -edata [regbld rw11::CM_STAT run] $statmsk \ -wreg cm.cntl [regbld rw11::CM_CNTL {func "SUS"}] \ + -rreg cm.cntl -edata [regbld rw11::CM_CNTL wstop imode] \ -rreg cm.stat -edata [regbld rw11::CM_STAT susp run] $statmsk \ -wreg cm.cntl [regbld rw11::CM_CNTL {func "RES"}] \ + -rreg cm.cntl -edata [regbld rw11::CM_CNTL wstop imode] \ -rreg cm.stat -edata [regbld rw11::CM_STAT run] $statmsk \ -wreg cm.cntl [regbld rw11::CM_CNTL {func "STO"}] \ -rreg cm.stat -edata [regbld rw11::CM_STAT] $statmsk diff --git a/tools/tcl/rbmoni/test_regs.tcl b/tools/tcl/rbmoni/test_regs.tcl index b0de068d..fd243fca 100644 --- a/tools/tcl/rbmoni/test_regs.tcl +++ b/tools/tcl/rbmoni/test_regs.tcl @@ -1,6 +1,6 @@ -# $Id: test_regs.tcl 1044 2018-09-15 11:12:07Z mueller $ +# $Id: test_regs.tcl 1116 2019-03-03 08:24:07Z mueller $ # -# Copyright 2011-2017 by Walter F.J. Mueller +# Copyright 2011-2019 by Walter F.J. Mueller # # 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-02 1116 3.1.1 add a few cntl logic tests # 2017-04-29 888 3.1 add data/addr logic tests # 2017-04-13 873 3.0 adopt to revised interface # 2015-04-03 661 2.1 drop estatdef (stat err check default now) @@ -42,6 +43,7 @@ namespace eval rbmoni { rlc log " A basic register access tests -----------------------------" rlc log " A1: write/read cntl---------------------------------" # test that starting captures option flags, and that stoping keeps them + # test that NOOP is a noop and doesn't change flags rlc exec \ -wreg rm.cntl [regbld rbmoni::CNTL {func "STA"}] \ -rreg rm.cntl -edata [regbld rbmoni::CNTL] \ @@ -54,17 +56,23 @@ namespace eval rbmoni { -wreg rm.cntl [regbld rbmoni::CNTL rcolw rcolr {func "STA"}] \ -rreg rm.cntl -edata [regbld rbmoni::CNTL rcolw rcolr] \ -wreg rm.cntl [regbld rbmoni::CNTL {func "STO"}] \ - -rreg rm.cntl -edata [regbld rbmoni::CNTL rcolw rcolr] + -rreg rm.cntl -edata [regbld rbmoni::CNTL rcolw rcolr] \ + -wreg rm.cntl [regbld rbmoni::CNTL {func "NOOP"}] \ + -rreg rm.cntl -edata [regbld rbmoni::CNTL rcolw rcolr] # #------------------------------------------------------------------------- rlc log " A2: write cntl, read stat --------------------------" # test that susp/run follow functions set to cntl + # test that sus/res does not change option flags rlc exec \ - -wreg rm.cntl [regbld rbmoni::CNTL {func "STA"}] \ + -wreg rm.cntl [regbld rbmoni::CNTL wstop rcolr {func "STA"}] \ + -rreg rm.cntl -edata [regbld rbmoni::CNTL wstop rcolr] \ -rreg rm.stat -edata [regbld rbmoni::STAT run] \ -wreg rm.cntl [regbld rbmoni::CNTL {func "SUS"}] \ + -rreg rm.cntl -edata [regbld rbmoni::CNTL wstop rcolr] \ -rreg rm.stat -edata [regbld rbmoni::STAT susp run] \ -wreg rm.cntl [regbld rbmoni::CNTL {func "RES"}] \ + -rreg rm.cntl -edata [regbld rbmoni::CNTL wstop rcolr] \ -rreg rm.stat -edata [regbld rbmoni::STAT run] \ -wreg rm.cntl [regbld rbmoni::CNTL {func "STO"}] \ -rreg rm.stat -edata [regbld rbmoni::STAT] diff --git a/tools/tcl/rbmoni/util.tcl b/tools/tcl/rbmoni/util.tcl index ca42d179..69f34a7a 100644 --- a/tools/tcl/rbmoni/util.tcl +++ b/tools/tcl/rbmoni/util.tcl @@ -1,6 +1,6 @@ -# $Id: util.tcl 985 2018-01-03 08:59:40Z mueller $ +# $Id: util.tcl 1116 2019-03-03 08:24:07Z mueller $ # -# Copyright 2011-2017 by Walter F.J. Mueller +# Copyright 2011-2019 by Walter F.J. Mueller # # 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-01 1116 4.0.2 streamline raw_check # 2017-04-22 883 4.0.1 setup: now idempotent; add procs filter,rme,rmf # 2017-04-13 873 4.0 revised interface, add suspend and repeat collect # 2015-04-03 661 3.1 drop estatdef; invert mask in raw_edata @@ -295,12 +296,14 @@ namespace eval rbmoni { # raw_check: check raw data against expect values prepared by raw_edata ---- # proc raw_check {edat emsk} { + set ledat [llength $edat] + if {$ledat == 0} { return } rlc exec \ - -rreg rm.addr -edata [llength $edat] \ - -wreg rm.addr 0 \ - -rblk rm.data [llength $edat] -edata $edat $emsk \ - -rreg rm.addr -edata [llength $edat] + -rreg rm.addr -edata $ledat \ + -wreg rm.addr 0 \ + -rblk rm.data $ledat -edata $edat $emsk \ + -rreg rm.addr -edata $ledat return } # diff --git a/tools/tcl/rw11/defs.tcl b/tools/tcl/rw11/defs.tcl index ffc55052..f385956e 100644 --- a/tools/tcl/rw11/defs.tcl +++ b/tools/tcl/rw11/defs.tcl @@ -1,6 +1,6 @@ -# $Id: defs.tcl 1044 2018-09-15 11:12:07Z mueller $ +# $Id: defs.tcl 1116 2019-03-03 08:24:07Z mueller $ # -# Copyright 2014-2018 by Walter F.J. Mueller +# Copyright 2014-2019 by Walter F.J. Mueller # # 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-02 1116 1.0.7 define INIT bits # 2018-09-09 1044 1.0.6 update defs kw11p, literals for KW11P_CSR(rate) # 2017-02-17 851 1.0.5 defs for auxilliary devices (kw11l,kw11p,iist) # 2016-12-30 834 1.0.4 fix typo in regmap_add for SDR's @@ -32,6 +33,8 @@ namespace eval rw11 { # # setup cp interface register descriptions for w11a ----------------------- # + regdsc INIT {greset 0}; # for rbus init send against base addr + regdsc CP_CNTL {func 3 0} regdsc CP_STAT {suspext 9} {suspint 8} \ diff --git a/tools/tcl/rw11/tbench.tcl b/tools/tcl/rw11/tbench.tcl index b13497d6..206730c6 100644 --- a/tools/tcl/rw11/tbench.tcl +++ b/tools/tcl/rw11/tbench.tcl @@ -1,6 +1,6 @@ -# $Id: tbench.tcl 985 2018-01-03 08:59:40Z mueller $ +# $Id: tbench.tcl 1117 2019-03-03 12:49:26Z mueller $ # -# Copyright 2013-2015 by Walter F.J. Mueller +# Copyright 2013-2019 by Walter F.J. Mueller # # 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-03 1117 2.2.1 tbench_list: ignore whitespace and empty lines # 2015-05-17 683 2.2 support sub directories and return in tests # 2015-05-09 676 2.1 use 'rlc log -bare' instead of 'puts' # 2014-11-30 607 2.0 use new rlink v4 iface @@ -69,6 +70,8 @@ namespace eval rw11 { if {$islist} { set fh [open "$tbase/$fname"] while {[gets $fh line] >= 0} { + set line [string trim $line]; # trim white space + if {$line eq ""} {continue}; # skip empty lines if {[string match "#*" $line]} { if {[string match "##*" $line]} { rlc log -bare $line } } elseif {[string match "@*" $line]} { diff --git a/tools/tcl/rw11util/regmap.tcl b/tools/tcl/rw11util/regmap.tcl index af2ffe8c..751f9ef8 100644 --- a/tools/tcl/rw11util/regmap.tcl +++ b/tools/tcl/rw11util/regmap.tcl @@ -1,6 +1,6 @@ -# $Id: regmap.tcl 985 2018-01-03 08:59:40Z mueller $ +# $Id: regmap.tcl 1118 2019-03-05 19:26:39Z mueller $ # -# Copyright 2015-2017 by Walter F.J. Mueller +# Copyright 2015-2019 by Walter F.J. Mueller # # 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-03 1118 1.0.2 add ibd_ibtst # 2017-03-04 858 1.0.1 add ibd_deuna # 2015-12-28 720 1.0 Initial version # 2015-12-26 719 0.1 First draft @@ -82,9 +83,10 @@ namespace eval rw11util { proc regmap_load {} { variable regmap_loaded package require rw11 - package require ibd_dl11 package require ibd_deuna + package require ibd_dl11 package require ibd_ibmon + package require ibd_ibtst package require ibd_lp11 package require ibd_pc11 package require ibd_rhrp diff --git a/tools/tcl/tst_sram/util.tcl b/tools/tcl/tst_sram/util.tcl index 6153cb29..29d85fcd 100644 --- a/tools/tcl/tst_sram/util.tcl +++ b/tools/tcl/tst_sram/util.tcl @@ -1,6 +1,6 @@ -# $Id: util.tcl 985 2018-01-03 08:59:40Z mueller $ +# $Id: util.tcl 1116 2019-03-03 08:24:07Z mueller $ # -# Copyright 2011-2017 by Walter F.J. Mueller +# Copyright 2011-2019 by Walter F.J. Mueller # # 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-02 1116 1.3.1 define INIT # 2017-06-19 914 1.3 17bit support; use sstat(awidth); add isnarrow # 2017-04-22 883 1.2.1 setup: now idempotent # 2016-07-09 784 1.2 22bit support: mask sstat(wide); add iswide @@ -38,6 +39,7 @@ namespace eval tst_sram { # # setup register descriptions for tst_sram core design --------------------- # + regdsc INIT {mem 1} {seq 0}; # for rbus init against base addr regdsc MCMD {ld 14} {inc 13} {we 12} {be 11 4} {addrh 5 6} regdsc SSTAT {awidth 15 3} {wswap 9} {wloop 8} \ {loop 7} {xord 6} {xora 5} {veri 4} {fail 1} {run 0}