Connecting to modern Instant Messaging services with an MSX

Published 04-08-2018 20:11:15


It has been a while since the last post. Yes I’m alive.

So, in this post I will introduce you to two marvelous concepts:

  • BitlBee
  • IRC on an MSX with an TCP/IP UNAPI compatible network card.

Let’s begin…


Why would you do that? I mean, there are more efficient ways to communicate with other people that require less effort, right?

Well, here are my two cents for the first point, BitlBee. BitlBee is a service that acts as a gateway for several instant messaging services, e.g. Facebook Messenger, Google Hangouts or Slack. Ok, but… a gateway to what? IRC, of course.

Having only one application for communication is a pleasure that we can still have in this multi-protocol warfare that is the modern world. In this way, you can have all your friends, work-mates and family in the same point. Moreover, using IRC has low footprint on the resources, so it’s a win-win.

Of course there are also downsides: you cannot use emojis, stickers or whatever. Also some protocol functions are not well covered, but it’s open source… so you can fix that ;).


If you’re setting up a BitlBee server you will need:

  • A computer with Linux. My personal choice for this task is a Raspberry Pi Zero.
  • A bit of knowledge on Linux (or proficiency on the art of cognitive copy&paste).
  • Some patience learning for about BitlBee

As for the MSX:

  • An MSX… duh! (My recommendation is to have an MSX that can handle 80 collumns)
  • An Ethernet UNAPI compatible network card if you’re using the same IRC client as I do (you could use other clients like SymbOS IRC client).
  • The IRC client itself


As mentioned before, BitlBee is a piece of software that enables us to redirect all our messages from different IM services to IRC. There are two ways to approach using BitlBee: using our own server or using an already existing one.

Using an already existing server

We can use a friend’s server or use BitlBee public servers. Notice that public servers can be regarded as an issue in security as we’re giving our passwords to them, but in most of the services you can stablish application passwords that can be revoked anytime.

I wanna have my own server

Ok, you went “the hard way”. Actually it is not that hard. There is a really quick introduction in this link. This guide provides a comprehensive stepwise tutorial on how to use this platform and how to install it. Most of the times it will probably end up as:

    sudo apt install bitlbee


    sudo pacman -S bitlbee

For Archlinux in particular there are some tips on the basics and adding protocols.

WARNING: by default BitlBee uses their own implementation of the protocols (which is actually very good!) but you may want to cover a protocol that they don’t support, like Telegram. In that case, if LibPurple covers it, you can use bitlbee compiled with LibPurple support.

    sudo apt install bitlbee-libpurple 


    pacaur -S bitlbee-libpurple


    yaourt -S bitlbee-libpurple 
    (Or whatever AUR package manager you use)

I have a server, now what?

OK, so now you have to follow the guide. Rewriting stuff that is already clear is not needed :).

In this service what you do is to register an user, like you would do in IRC, and from that point add the accounts. There are several options for each account in BitlBee, so I encourage you to go through their wiki.

I recommend you to test it with a PC client like pidgin, weechat or whatever IRC client you want.

WARNING: If you want to use telegram with a low-powered device it may fail to create the keys for secure messaging. What I did was to create them with my laptop and then copying all the configuration to the Raspberry Pi zero.

WARNING2: If you use a text-mode IRC like me on the MSX you may suffer with the disconnect and connect of other users, so you may want to set show_users option to “”, so the &bitlbee control channel doesn’t show you any user and, hence, doesn’t interrupt your chatting with garbage. Check this link for further information.

Account configured, let’s rock on that MSX

OK. So now you’re here in front of your MSX. If you already have your IRC client working, just connect with your client and you’re done.

Here we’re using Ptero’s which is an IRC client for the MSX which has nice features. If we have already loaded our TCP/IP UNAPI stuff, we can already run the client. Mind that this client requieres of some configuration. Along the .COM we can find a .INI file which looks like this:

port 6667
srvpass # server password if requiered
nick fubu
altnick fubu2
user MSXMan :MSX DOS # Additional info
font msxirc.fnt # It does incorporate a custom font.
ink_c 2     # Text color
paper_c 1   # Background color
aink_c 1
apaper_c 13
timestamp 1


Just modify it with your details (mostly the nick, server and so on…).

We’re ready. We execute MSXIRC.COM and we will see the following screen:

We have to press S and then F2 to connect.

OK, we’re online. We have just to identify ourselves (/msg nickserv identify password) and… that’s it!

Feel free to ask me questions. If they are interesting for this post, I will add them :).


References (The links on the post)