Here only the examples converted from C/C++ to Assembly Language are displayed (better still: will be displayed).  For the full guide please visit:  Beej's Guide to Network Programming.

I don't have a better intro than the intro from his website....

About ten years ago, I wrote a small guide to Unix Interprocess Communication (IPC). It sat neglected for a long time since. But now, for your reading pleasure, I've ported it to the new document processing system so it's fresh and new! As long as you know some C or C++, this guide should springboard you into the realm of Unix IPC with hopefully as little hassle as humanly possible!

Let me hope I did the same, but in assembly language. It's quite simple if you know C , but there are some difficulties I want to make clear in the examples.

Beej's Guide to Interprocess Communication

This section is a collection of the examples from ZetCode.  The original source was written in C with GTK2.  Because GTK2 is replaced by GTK3 I've rewritten the examples, in assembly language of course, and added some examples.

Just like ZetCode, I've done this to show how someone can make programs for the graphical user interface.  When assembling the examples you should run the programs from within a terminal.  Especially the Signals and Events examples, because those programs write to the terminal to demonstrate that the event is actually working.  Leaves us the option to make a debug version of the program which output a state, an event, or a simple message where you are or which routine is actually running.  I leave it to your imagination.

To assemble and link the examples you need some (if not all in your application) libraries.  I give a list here of the libraries you should install, best the developer libraries.

Open a terminal and type sudo apt-cache search libgtk | grep dev and you should see a list like the one below.

libgtk-3-dev - development files for the GTK+ library
libgtk2.0-dev - development files for the GTK+ library
libgdk-pixbuf2.0-dev - GDK Pixbuf library (development files)

doing the same for pango: sudo apt-cache search libpango | grep dev gives us:

libpango1.0-dev - Development files for the Pango
libpangocairo-1.0-0 - Layout and rendering of internationalized text
libpangoft2-1.0-0 - Layout and rendering of internationalized text

In the examples from ZetCode there is only font selection dialogbox makes use of pango.  Therefor install libpango1.0-dev.

Eventually you can install next libraries too but for the examples it isn't really necessary.

libfreetype6-dev - FreeType 2 font engine, development files
librtmp-dev - toolkit for RTMP streams (development files)
librtaudio-dev - C++ library for realtime audio input/ouput (development files)
librtcom-telepathy-glib-dev - RTCom telepathy-glib extensions (development files)
librtfcomp-dev - Library to read compressed RTF files (development files)
librtfilter-dev - realtime digital filtering library (development files)
librtlsdr-dev - Software defined radio receiver for Realtek RTL2832U (development)
librtmidi-dev - C++ library for realtime MIDI input/ouput (development files)

For a quite full list of the library functions you can consult the include files.  I've added for glib-2.0libgdk-pixbuf-2.0libgobject-2.0 and libgtk-3.  Also is interesting if you don't want to re-invent to much and make use of the C library functions.

A last warning: if you should try to convert C programs to assembly language with GTK... there is more involved than just follow the C code but that you can see in the examples.

If you don't want to copy paste the examples then you can download them on Github as well.


GTK+2.0 :

GTK+3.0 :

Glib 2.x :