Emulating the Nintendo GameBoy

Two years ago I thought it would be fun to attempt to write a GameBoy emulator. After dropping the project and picking it back up a bunch of times, it has now finally gotten to the point where some well known games appear to be decently playable for at least their first level. Many other games don't start at all or are full of glitches, some even crash my emulator. Nevertheless, this is a milestone moment for me so it deserves a blogpost.

Thomas Rinsma on sdl, c, and emulation

Game of Life in Haskell

Here's another haskell experiment, it's my implementation of Conway's Game of Life. Implementing cellular automata like the Game of Life is a very fun way for me to get familiar with a programming language, and I hadn't done anything graphical in Haskell before so it taught me quite a bit. The most important thing being that it can be really hard to think in a functional way about something like this. My code is probably horribly inefficient so don't use it as an example of idiomatic haskell.

Thomas Rinsma on haskell and cellular-automata

Rendering recursive portals with OpenGL

For the last couple of months I've been working on and off on my C++/OpenGL game engine, mostly for the purpose of learning OpenGL. The feature I was the most excited about trying to implement in this engine was portal rendering. Actually understanding and implementing that correctly has taken me a little while but I feel like I know enough now to explain some of the concepts here.

Thomas Rinsma on opengl

Brainfuck interpreter in Haskell

Since brainfuck is a pretty cool language to write an interpreter for, and Haskell is especially nice to write interpreters in, I combined those two. I decided not to use anything advanced like Monads or Functors, or even complicated datastructures, since my understanding of them in Haskell is limited.

Thomas Rinsma on haskell and brainfuck

Sudoku solver in C

Here's a little C program I wrote a while ago. It solves Sudoku's.

Thomas Rinsma on c and sudoku

Top-down GTA-ish prototype

In the spirit of the last couple of posts, here's another old project of mine that's lacking a blog post.

Thomas Rinsma on sdl, opengl, and c

Ray caster in C

Here's another old project of mine to be documented now. It's a very simplistic ray caster written in C using SDL.

Thomas Rinsma on sdl and c

Tetris Friends AI

Some of you might know the Facebook game called "Tetris Friends". It's basically just a flash version of tetris, but with some added features like the ability to "hold" a block, and to see multiple pieces in advance.

Thomas Rinsma on tetris, ai, and c

Particle simulation/game

I came across some really cool particle games lately, all in the style of the original "Falling Sand" java applets, and I really wanted to make something like that.

Thomas Rinsma on sdl and physics

Tetris game and AI

I made a Tetris game because I felt like I wanted some practise in making simple games and also wanted some more experience with OpenGL and SDL. The game is made according to the Tetris standard (colors/wall-bounce/grid size/etc) but is customizable in all of those areas. I tried to make it cross-platform by using just SDL, OpenGL and SDL_ttf.

Thomas Rinsma on sdl, opengl, and ai

2D Physics Simulation

About a year ago, I made a simple 2D rigid body physics simulator in C using SDL and some other libraries. This turned out to be a bit too hard and I got stuck on the collision response part. Besides that the whole thing was not designed well and just messy and ugly.

Thomas Rinsma on 2d, physics, simulation, engine, sdl, and opengl


Don't let that title scare you :)

Thomas Rinsma on assembly

New computer

A few days ago I finally received my new PC + monitor. These are the specs:

Thomas Rinsma on computer