From e94d66e4d7edfba7fa20778c07bd080fdabadfdc Mon Sep 17 00:00:00 2001
From: Eric Kooistra <kooistra@astron.nl>
Date: Fri, 20 Mar 2020 11:27:50 +0100
Subject: [PATCH] Added help on Linux screen tool. Added help on Quartus Qsys
 IP files in GIT.

---
 .../doc/prestudy/desp_howtools_erko.txt       | 163 +++++++++++++++++-
 1 file changed, 162 insertions(+), 1 deletion(-)

diff --git a/applications/lofar2/doc/prestudy/desp_howtools_erko.txt b/applications/lofar2/doc/prestudy/desp_howtools_erko.txt
index 57967f561e..b23f9fef19 100755
--- a/applications/lofar2/doc/prestudy/desp_howtools_erko.txt
+++ b/applications/lofar2/doc/prestudy/desp_howtools_erko.txt
@@ -6,6 +6,8 @@
 * Latex
 * Markdown
 * Vi
+* Screen to run a terminal session without ssh connection
+* Quartus Qsys IP files in GIT
 
 
 *******************************************************************************
@@ -363,4 +365,163 @@ Table:
 vi
 "Replaced Windows LFCR by Linux LF to avoid ^R at end of line in vi. Removed trailing spaces."
 - in gvim replace \r --> nothing
-- in uex save new file as Linux, save as, menu edit/preferences/line end
\ No newline at end of file
+- in uex save new file as Linux, save as, menu edit/preferences/line end
+
+
+*******************************************************************************
+* Screen to run a terminal session without ssh connection
+*******************************************************************************
+
+https://linuxize.com/post/how-to-use-linux-screen/
+
+screen --version
+
+Basic Linux Screen Usage 
+
+On the command prompt, type screen.
+Run the desired program.
+Use the key sequence Ctrl-a + Ctrl-d to detach from the screen session.
+Reattach to the screen session by typing screen -r.
+
+
+To start a screen session, simply type screen in your console:
+
+screen
+screen -S session_name
+
+This will open a screen session, create a new window, and start a shell in 
+that window. Now that you have opened a screen session, you can get a list of
+commands by typing:
+
+Ctrl+a ?
+
+When you start a new screen session, it creates a single window with a shell
+in it. You can have multiple windows inside a Screen session.
+To create a new window with shell type Ctrl+a c, the first available number
+from the range 0...9 will be assigned to it. Below are some most common
+commands for managing Linux Screen Windows:
+
+Ctrl+a c Create a new window (with shell)
+Ctrl+a " List all window
+Ctrl+a 0 Switch to window 0 (by number )
+Ctrl+a A Rename the current window
+Ctrl+a S Split current region horizontally into two regions
+Ctrl+a | Split current region vertically into two regions
+Ctrl+a tab Switch the input focus to the next region
+Ctrl+a Ctrl+a Toggle between the current and previous region
+Ctrl+a Q Close all regions but the current one
+Ctrl+a X Close the current region
+
+You can detach from the screen session at any time by typing:
+
+Ctrl+a d
+
+The program running in the screen session will continue to run after you detach
+from the session. To resume your screen session use the following command:
+
+screen -r
+
+In case you have multiple screen sessions running on your machine, you will 
+need to append the screen session ID after the r switch.
+To find the session ID list the current running screen sessions with:
+
+screen -ls
+
+There are screens on:
+    10835.pts-0.linuxize-desktop   (Detached)
+    10366.pts-0.linuxize-desktop   (Detached)
+2 Sockets in /run/screens/S-linuxize.
+
+If you want to restore screen 10835.pts-0, then type the following command:
+
+screen -r 10835
+
+When screen is started, it reads its configuration parameters from
+/etc/screenrc and ~/.screenrc if the file is present. We can modify the default
+Screen settings according to our preferences using the .screenrc file.
+Here is a sample ~/.screenrc configuration with customized status line and few
+ additional options:
+
+~/.screenrc
+# Turn off the welcome message
+startup_message off
+
+# Disable visual bell
+vbell off
+
+# Set scrollback buffer to 10000
+defscrollback 10000
+
+# Customize the status line
+hardstatus alwayslastline
+hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W}%c %{g}]'
+Copy
+
+
+*******************************************************************************
+* Quartus Qsys IP files in GIT
+*******************************************************************************
+
+1) Designs without QSYS: unb2b_arp_ping
+Met meld blijkt dat de ip dir van unb2b_arp_ping en unb2b_minimal gelijk zijn
+in de STAT-266 branch. Dat komt omdat je ze gecopieerd hebt en omdat 
+unb2b_arp_ping geen QSYS heeft zijn ze dus ongewijzigd.
+
+Aangezien unb2b_arp_ping geen QSYS heeft, en ook niet zou krijgen, is het 
+beter om de unb2b_arp_ping/quartus/ip dir van unb2_arp_ping te deleten.
+
+2) Designs with QSYS
+Elk design op basis van unb2_minimal heeft zijn eigen QSYS ip files:
+
+> ls $RADIOHDL_WORK/boards/uniboard2b/designs/unb2b_minimal/quartus/ip/qsys_unb2b_minimal
+
+Als een design meer MM ports heeft dan heeft het ook meer ip files, bijv.
+qsys_unb2b_heater_reg_heater.ip voor de unb2b_heater.
+
+Het is kennelijk voor QSYS nodig om naast de .qsys file ook de ip/ files in de
+repository te bewaren. Het is dus ook nodig om ze per design te bewaren, want
+elk design heeft zijn eigen naam en extra MM slaves tov unb2b_minimal.
+
+Echter het blijkt dat een nieuw design ook dezelfde ip/ files als unb2_minimal
+mag gebruiken, dus zonder naamswijziging.
+
+ll $RADIOHDL_WORK/boards/uniboard2b/designs/unb2b_jesd/quartus/
+  ip/
+  qsys_unb2b_jesd.qsys
+    
+ll $RADIOHDL_WORK/boards/uniboard2b/designs/unb2b_jesd/quartus/ip/qsys_unb2b_minimal
+total 2492
+-rw-r--r-- 1 kooistra users 234095 Sep 23 13:01 altjesd_ss_RX_corepll.ip
+-rw-r--r-- 1 kooistra users  16145 Sep 23 13:01 altjesd_ss_RX_frame_reset.ip
+-rw-r--r-- 1 kooistra users  16139 Sep 23 13:01 altjesd_ss_RX_link_reset.ip
+-rw-r--r-- 1 kooistra users 104258 Sep 23 13:01 altjesd_ss_RX_reset_seq.ip
+-rw-r--r-- 1 kooistra users  42930 Sep 23 13:01 altjesd_ss_RX_xcvr_reset_control.ip
+-rw-r--r-- 1 kooistra users  21228 Sep 23 13:01 device_clk.ip
+-rw-r--r-- 1 kooistra users  21226 Sep 23 13:01 frame_clk.ip
+-rw-r--r-- 1 kooistra users 159233 Sep 23 13:01 jesd.ip
+-rw-r--r-- 1 kooistra users  21347 Sep 23 13:01 link_clk.ip
+-rw-r--r-- 1 kooistra users  62203 Sep 23 13:01 qsys_unb2b_minimal_avs_common_mm_0.ip
+-rw-r--r-- 1 kooistra users  62217 Sep 23 13:01 qsys_unb2b_minimal_avs_common_mm_1.ip
+-rw-r--r-- 1 kooistra users 162287 Sep 23 13:01 qsys_unb2b_minimal_avs_eth_0.ip
+-rw-r--r-- 1 kooistra users  21256 Sep 23 13:01 qsys_unb2b_minimal_clk_0.ip
+-rw-r--r-- 1 kooistra users 189801 Sep 23 13:01 qsys_unb2b_minimal_cpu_0.ip
+-rw-r--r-- 1 kooistra users 211623 Sep 23 13:01 qsys_unb2b_minimal_jesd204.ip
+-rw-r--r-- 1 kooistra users  57037 Sep 23 13:01 qsys_unb2b_minimal_jtag_uart_0.ip
+-rw-r--r-- 1 kooistra users  66156 Sep 23 13:01 qsys_unb2b_minimal_onchip_memory2_0.ip
+-rw-r--r-- 1 kooistra users  61818 Sep 23 13:01 qsys_unb2b_minimal_pio_pps.ip
+-rw-r--r-- 1 kooistra users  62201 Sep 23 13:01 qsys_unb2b_minimal_pio_system_info.ip
+-rw-r--r-- 1 kooistra users  60152 Sep 23 13:01 qsys_unb2b_minimal_pio_wdi.ip
+-rw-r--r-- 1 kooistra users  61896 Sep 23 13:01 qsys_unb2b_minimal_reg_dpmm_ctrl.ip
+-rw-r--r-- 1 kooistra users  61896 Sep 23 13:01 qsys_unb2b_minimal_reg_dpmm_data.ip
+-rw-r--r-- 1 kooistra users  62108 Sep 23 13:01 qsys_unb2b_minimal_reg_epcs.ip
+-rw-r--r-- 1 kooistra users  62238 Sep 23 13:01 qsys_unb2b_minimal_reg_fpga_temp_sens.ip
+-rw-r--r-- 1 kooistra users  62277 Sep 23 13:01 qsys_unb2b_minimal_reg_fpga_voltage_sens.ip
+-rw-r--r-- 1 kooistra users  61896 Sep 23 13:01 qsys_unb2b_minimal_reg_mmdp_ctrl.ip
+-rw-r--r-- 1 kooistra users  61896 Sep 23 13:01 qsys_unb2b_minimal_reg_mmdp_data.ip
+-rw-r--r-- 1 kooistra users  62108 Sep 23 13:01 qsys_unb2b_minimal_reg_remu.ip
+-rw-r--r-- 1 kooistra users  62176 Sep 23 13:01 qsys_unb2b_minimal_reg_unb_pmbus.ip
+-rw-r--r-- 1 kooistra users  62163 Sep 23 13:01 qsys_unb2b_minimal_reg_unb_sens.ip
+-rw-r--r-- 1 kooistra users  61818 Sep 23 13:01 qsys_unb2b_minimal_reg_wdi.ip
+-rw-r--r-- 1 kooistra users  62209 Sep 23 13:01 qsys_unb2b_minimal_rom_system_info.ip
+-rw-r--r-- 1 kooistra users  63384 Sep 23 13:01 qsys_unb2b_minimal_timer_0.ip
+
-- 
GitLab