diff --git a/README.md b/README.md
index f05deb79..275ca4fa 100644
--- a/README.md
+++ b/README.md
@@ -26,8 +26,8 @@ For more information look into:
and [Xilinx ISE](doc/README_buildsystem_ISE.md)
- guides to [run test benches](doc/w11a_tb_guide.md)
and to [boot operating systems](doc/w11a_os_guide.md)
-- known issues [general](doc/README_known_issues.md)
- and [w11a CPU](doc/w11a_known_issues.md)
+- known [issues](doc/README_known_issues.md)
+- known [differenes](doc/w11a_known_differences.md)
- the impatient readers can try their luck with the
[quick start guide](doc/INSTALL_quickstart.md)
diff --git a/doc/CHANGELOG.md b/doc/CHANGELOG.md
index 8b6f5176..eae1080c 100644
--- a/doc/CHANGELOG.md
+++ b/doc/CHANGELOG.md
@@ -2,6 +2,7 @@
### Table of contents
- Current [HEAD](#user-content-head)
+- Release [w11a_V0.78](#user-content-w11a_V0.78)
- Release [w11a_V0.77](#user-content-w11a_V0.77)
- Release [w11a_V0.76](#user-content-w11a_V0.76)
- Release [w11a_V0.753](#user-content-w11a_V0.753)
@@ -22,6 +23,9 @@ The HEAD version shows the current development. No guarantees that
software or firmware builds or that the documentation is consistent.
The full set of tests is only run for tagged releases.
+
+---
+## 2019-06-01: [w11a_V0.78](https://github.com/wfjm/w11/releases/tag/w11a_V0.78) - rev 1158(wfjm)
### Summary
- add m9312 boot prom emulation
- add dz11 8 line serial port multiplexer
diff --git a/doc/INSTALL_quickstart.md b/doc/INSTALL_quickstart.md
index 27bd455a..9f1d16da 100644
--- a/doc/INSTALL_quickstart.md
+++ b/doc/INSTALL_quickstart.md
@@ -128,7 +128,7 @@ The recipe was tested
# real 0m32.747s user 0m15.996s sys 0m0.736s
- for oskit `211bsd_rp`
- - in linux terminal
+ - in Linux terminal
cd $RETROBASE/tools/oskit/211bsd_rp
wget http://www.retro11.de/data/oc_w11/oskits/211bsd_rpset.tgz
diff --git a/doc/README_known_issues.md b/doc/README_known_issues.md
index 4ce21163..bcc89196 100644
--- a/doc/README_known_issues.md
+++ b/doc/README_known_issues.md
@@ -1,10 +1,5 @@
# Known issues
-The issues of the w11 CPU are listed in a separate document
-[w11a_known_issues.md](w11a_known_issues.md).
-
-This file descibes general issues.
-
The case id indicates the release when the issue was first recognized.
### V0.50-2 {[issue #28](https://github.com/wfjm/w11/issues/28)} -- RK11: write protect action too slow
diff --git a/doc/w11a_known_issues.md b/doc/w11a_known_differences.md
similarity index 100%
rename from doc/w11a_known_issues.md
rename to doc/w11a_known_differences.md
diff --git a/doc/w11a_os_guide.md b/doc/w11a_os_guide.md
index 834200e8..d3e010ae 100644
--- a/doc/w11a_os_guide.md
+++ b/doc/w11a_os_guide.md
@@ -22,7 +22,7 @@ communication between FPGA board and backend server can be via
allows up to 12M Baud
- on Nexys3 with a `FT232R`, allows up to 2M Baud
- for all FTDI USB-UART it is essential to set them to `low latency` mode.
- That was default for linux kernels 2.6.32 to 4.4.52. Since about March
+ That was default for Linux kernels 2.6.32 to 4.4.52. Since about March
2017 one gets kernels with 16 ms default latency again, thanks to
[kernel patch 9589541](https://patchwork.kernel.org/patch/9589541/).
**For newer systems it is essential to install a udev rule** which
diff --git a/tools/dox/w11_cpp.Doxyfile b/tools/dox/w11_cpp.Doxyfile
index 0a13ca18..50340e0e 100644
--- a/tools/dox/w11_cpp.Doxyfile
+++ b/tools/dox/w11_cpp.Doxyfile
@@ -5,7 +5,7 @@
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = "w11 - cpp"
-PROJECT_NUMBER = 0.77
+PROJECT_NUMBER = 0.78
PROJECT_BRIEF = "Backend server for Rlink and w11"
PROJECT_LOGO =
OUTPUT_DIRECTORY = $(RETRODOXY)/w11/cpp
diff --git a/tools/dox/w11_tcl.Doxyfile b/tools/dox/w11_tcl.Doxyfile
index 5397e814..cb83000c 100644
--- a/tools/dox/w11_tcl.Doxyfile
+++ b/tools/dox/w11_tcl.Doxyfile
@@ -5,7 +5,7 @@
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = "w11 - tcl"
-PROJECT_NUMBER = 0.77
+PROJECT_NUMBER = 0.78
PROJECT_BRIEF = "Backend server for Rlink and w11"
PROJECT_LOGO =
OUTPUT_DIRECTORY = $(RETRODOXY)/w11/tcl
diff --git a/tools/dox/w11_vhd_all.Doxyfile b/tools/dox/w11_vhd_all.Doxyfile
index 1c63ba49..b0119516 100644
--- a/tools/dox/w11_vhd_all.Doxyfile
+++ b/tools/dox/w11_vhd_all.Doxyfile
@@ -5,7 +5,7 @@
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = "w11 - vhd"
-PROJECT_NUMBER = 0.77
+PROJECT_NUMBER = 0.78
PROJECT_BRIEF = "W11 CPU core and support modules"
PROJECT_LOGO =
OUTPUT_DIRECTORY = $(RETRODOXY)/w11/vhd
diff --git a/tools/mcode/dl11/dl11echo.mac b/tools/mcode/dl11/dl11echo.mac
index 3865c877..9212137d 100644
--- a/tools/mcode/dl11/dl11echo.mac
+++ b/tools/mcode/dl11/dl11echo.mac
@@ -1,4 +1,4 @@
-; $Id: dl11echo.mac 1149 2019-05-12 21:00:29Z mueller $
+; $Id: dl11echo.mac 1155 2019-05-31 06:38:06Z mueller $
; Copyright 2019- by Walter F.J. Mueller
; License disclaimer see License.txt in $RETROBASE directory
;
@@ -212,7 +212,7 @@ hdloct: mov r0,r2 ; octal mode
; print octal digit ------------------------------
; in r0 current character
;
-woct: bic #177770,r0 ; mask
+woct: bic #^c7,r0 ; mask
add #'0,r0 ; bin->ascii
jmp wchar ; and print
;
diff --git a/tools/src/librw11/Rw11CntlDZ11.cpp b/tools/src/librw11/Rw11CntlDZ11.cpp
index cf2ff401..35a533b5 100644
--- a/tools/src/librw11/Rw11CntlDZ11.cpp
+++ b/tools/src/librw11/Rw11CntlDZ11.cpp
@@ -1,4 +1,4 @@
-// $Id: Rw11CntlDZ11.cpp 1150 2019-05-19 17:52:54Z mueller $
+// $Id: Rw11CntlDZ11.cpp 1156 2019-05-31 18:22:40Z mueller $
//
// Copyright 2019- by Walter F.J. Mueller
//
@@ -419,9 +419,9 @@ void Rw11CntlDZ11::TxProcess(const RlinkCommand& cmd, bool prim, uint16_t fuse)
for (size_t i=0; i < done; i++) {
uint16_t xwrd = xbuf[i];
- bool last = (xwrd & kFDAT_M_LAST) != 0;
- bool ferr = (xwrd & kFDAT_M_FERR) != 0;
- bool cal = (xwrd & kFDAT_M_CAL) != 0;
+ bool last = xwrd & kFDAT_M_LAST;
+ bool ferr = xwrd & kFDAT_M_FERR;
+ bool cal = xwrd & kFDAT_M_CAL;
uint16_t line = (xwrd>>kFDAT_V_LINE) & kFDAT_B_LINE;
uint8_t ochr = xwrd & kFDAT_M_BUF;
if (last) lastseen = true;
@@ -502,9 +502,9 @@ void Rw11CntlDZ11::TxProcess(const RlinkCommand& cmd, bool prim, uint16_t fuse)
if (fTraceLevel > 0) {
RlogMsg lmsg(LogFile());
lmsg << "-I " << Name() << ": tx "
- << " prim=" << prim
- << " size=" << RosPrintf(cmd.BlockSize(),"d",3)
- << " done=" << RosPrintf(done,"d",3)
+ << " pr,si,do=" << prim
+ << "," << RosPrintf(cmd.BlockSize(),"d",3)
+ << "," << RosPrintf(done,"d",3)
<< " last=" << lastseen
<< " tfuse=" << RosPrintf(tfuse,"d",3)
<< " que=" << fTxQueBusy;