diff --git a/20211004/hello-gtk.c b/20211004/hello-gtk.c
new file mode 100644
index 0000000000000000000000000000000000000000..016867d41e42de57390a21653de467c061e5ded0
--- /dev/null
+++ b/20211004/hello-gtk.c
@@ -0,0 +1,23 @@
+#include <gtk/gtk.h>
+
+int main (int argc, char **argv)
+{
+  gtk_init (&argc, &argv);
+  GtkWidget *window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+  gtk_window_set_title (GTK_WINDOW (window), "Hello");
+  g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL);
+  GtkWidget *vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);
+  gtk_container_add (GTK_CONTAINER (window), vbox);
+  gtk_container_set_border_width (GTK_CONTAINER (vbox), 10);
+  GtkWidget *label = gtk_label_new ("Hello, world!");
+  gtk_container_add (GTK_CONTAINER (vbox), label);
+  GtkWidget *button = gtk_button_new_with_label ("Quit");
+  g_signal_connect (button, "clicked", G_CALLBACK (gtk_main_quit), NULL);
+  gtk_container_add (GTK_CONTAINER (vbox), button);
+  gtk_widget_show (button);
+  gtk_widget_show (label);
+  gtk_widget_show (vbox);
+  gtk_widget_show (window);
+  gtk_main ();
+  return 0;
+}
diff --git a/20211004/hello.c b/20211004/hello.c
new file mode 100644
index 0000000000000000000000000000000000000000..b19d80e9bd0bd7c5ed8f54b20c6a50d9166f03ac
--- /dev/null
+++ b/20211004/hello.c
@@ -0,0 +1,7 @@
+#include <stdio.h>
+
+int main (void)
+{
+  printf ("Hello, world!\n");
+  return 0;
+}
diff --git a/20211004/hp-uebung-20211004.pdf b/20211004/hp-uebung-20211004.pdf
index a2ae74e8b0ccd25a0ff9cecc699b5034368d9309..7c13baac22e6fc5802f3aeb4d3c7b1f4da618535 100644
Binary files a/20211004/hp-uebung-20211004.pdf and b/20211004/hp-uebung-20211004.pdf differ
diff --git a/20211004/hp-uebung-20211004.tex b/20211004/hp-uebung-20211004.tex
index f91a10c74a670dc76d6e5df4914af5ce89a5f65d..9f068bca9944a9ba510bb12e3923cdc722a0937a 100644
--- a/20211004/hp-uebung-20211004.tex
+++ b/20211004/hp-uebung-20211004.tex
@@ -1,5 +1,5 @@
-% hp-uebung-20201105.pdf - Exercises on Low-Level Programming / Applied Computer Sciences
-% Copyright (C) 2013, 2015, 2016, 2017, 2018, 2019, 2020  Peter Gerwinski
+% hp-uebung-20211004.pdf - Exercises on Low-Level Programming / Applied Computer Sciences
+% Copyright (C) 2013, 2015, 2016, 2017, 2018, 2019, 2020, 2021  Peter Gerwinski
 %
 % This document is free software: you can redistribute it and/or
 % modify it either under the terms of the Creative Commons
@@ -33,18 +33,18 @@
   \thispagestyle{empty}
 
   \section*{Hardwarenahe Programmierung\\
-            Übungsaufgaben -- 5.\ November 2020}
+            Übungsaufgaben -- 4.\ Oktober 2021}
 
   \exercise{Hello, world!}
 
-  Unter \url{https://gitlab.cvh-server.de/pgerwinski/hp/tree/2020ws/20201105}
+  Unter \url{https://gitlab.cvh-server.de/pgerwinski/hp/tree/2021ws/20211004}
   können Sie
-  \href{https://gitlab.cvh-server.de/pgerwinski/hp/raw/2020ws/20201105/hp-uebung-20201105.pdf}%
+  \href{https://gitlab.cvh-server.de/pgerwinski/hp/raw/2021ws/20211004/hp-uebung-20211004.pdf}%
        {diesen Übungszettel als PDF-Datei}
   herunterladen sowie die folgenden Beispielprogramme:
   \begin{enumerate}[\quad(a)]
-    \item \gitfile{hp}{2020ws/20201105}{hello.c}
-    \item \gitfile{hp}{2020ws/20201105}{hello-gtk.c}
+    \item \gitfile{hp}{2021ws/20211004}{hello.c}
+    \item \gitfile{hp}{2021ws/20211004}{hello-gtk.c}
   \end{enumerate}
   Bringen Sie diese Programme auf Ihrem eigenen Rechner
   und/oder auf einem Rechner der Hochschule