Creating a NES Emulator

I read an interesting post about NES internals and its emulation and I immediately wanted to create my own emulator. There is already great documentation about NES, so I will be only writing about my process and giving some links to learn more.

Read on →

GCC Extensions

I have been using GCC quite much, but I haven’t really ever used its extensions (except some C99 features in C90). Recently, I stumbled upon the documentation of all the extensions, so I figured to list few of the special ones here.

Read on →

Using Twitter API With C

I wanted once to implement simple twitter integration with one C application. Even though everything can be found in https://dev.twitter.com, having no experience in the API (or OAuth, or OpenSSL), it can take some time to get used to. Here is a small guide of posting a tweet using C and OpenSSL.

Read on →

Adding Finnish Alphabets to US Keyboard Layout

I don’t like Finnish keyboard layout that much. Way too many characters require three keys to be pressed simultaneously. This is especially annoying when programming, since to get, e.g., different types of brackets, you have to change between Alt Gr and Shift quite heavily. Furthermore, Finnish layout has keys like ‘ยค’, which I have never used (and just recently learned that is used to denote an unspecified currency). Many common characters used in programming are dead keys, which makes them difficult to use. I haven’t ever used the dead key functionality in ‘`’, ‘~’ or ‘^’ and usually I try to use layout where that is disabled. In Linux, there is usually a variant of Finnish layout without dead keys, but not in Windows. To tackle these problems, I decided to try US layout.

Read on →

Sockets in C

It has been a while since I have done anything with sockets in C, so I figured I should refresh my memory. Beej already has a great guide to network programming, so I’ll try to make a very simple and small introduction. If you want to know more, you should refer to his guide.

Read on →

Understanding Boyer-Moore

Boyer-Moore string searching algorithm is very elementary string searching algorithm that is probably gone through as a first or second algorithm in every string algorithm course. Even though it is a basic algorithm, it doesn’t mean that it wouldn’t be used in any real-world application. For example, Boyer-Moore is used in GNU Grep for fixed string matching 1 and also in Silver Surfer (well, both use a different BM variant but still BM).

Read on →

Hello

This is the first post. I’ll be writing about programming and somehow related areas that I’m interested in and want to learn more. Basically I’ll document what I have done and learned, mostly for myself, but if someone manages to get here by googling, it’s even better. At least for the summer I should have some time to spend on this, but after that the amount of posts will decrease.

Read on →