Projects & Papers · Code Snippets · Links · About Site views:



This is a collection of my more interesting software projects and scientific papers from my work at and besides university.


  Content

Tornado Codes

Tornado Codes are a new class of erasure-correcting codes based on randomly-connected irregular bipartite graphs with an almost optimal reception efficiency while being encodable and decodable in time linear to the block length, making them ideal for the encoding of large data and as an alternative to the classic ARQ concept as it is used on the Internet.

The presentation and the paper, which I have converted to HTML, were written as part of my single-person university project about Tornado Codes, which additionaly consisted of a Tornado Code implementation. I've put a lot of work into understanding Tornado Codes, and I've spent a lot of time reading tens of papers and writing this presentation, so I kindly ask you to tell me any errors or suggestions for improvement or if it helped you for a better understanding of this topic.

» Read the paper online in HTML... (in German!)

» Download the paper (in German!).
» Download the presentation (PowerPoint, in German!).


Terrender

Terrender is a software realtime voxel landscape engine with 5-6 DOF for displaying and moving through terrain data. It produces realistic-looking sceneries at high resolutions and truecolor with even the clouds moving and morphing - and that all at a realtime frame rate (30 fps)!!!

» Read more about Terrender...


Block Cipher Modes

By choosing a certain block encryption algorithm also its block length is set, the length of data the algorithm can encrypt in one turn. To encrypt data of variable length a strategy must be choosen so the encryption algorithm can be used several times without compromising security of the data. For this four different kind of block cipher modes were designed which are explained and compared in detail.

» Read about it (in German!)...


Operating System Programming

Occassionally I enjoy doing some work on new operating systems. The one that I have most worked on is NewOS, a modular kernel primarily written by former Be-employee Travis Geiselbrecht. It has got its appeal most notably from its clear design with high portability in mind and its cleanly written source code.

Though development on NewOS is now more or less on a hold I still continue hacking on it once in a while. Here is a list of the most important and visible changes:

  • a proof-of-concept graphical user interface (GUI) with some very refined algorithms
  • ...with two simple GUI programs (terminal and lines)
  • a completley new network memory managment algorithm (cbuf code) that is more than 800% faster than the original code
  • a VESA VBE 3.0 video card driver that even resolves the most frequent vendor specific VBE 3.0 flaws and plain errors
  • a NE2000 and compatible ISA and PCI network card driver
  • support for outgoing ICMP messages and the ping utility
  • the PCI module re-written
  • improved timer code
  • vastly improved POSIX support
  • port of the bash shell

» Read more about it or download an image for testing...

When Be Inc. closed their doors some people thought that letting the company's such great product die silently is nothing but a shame, and soon after the OpenBeOS (now Haiku) project was born which aimed at the recreation of that product - the BeOS: an operating system that, besides the many unique features it had compared to other operating systems at its time, especially surprised with its absolutely smooth behaviour, fast reaction to user actions and low latency due to its excellent scheduler. - I thought the same, and soon after I had subscribed as a kernel developer and helped them out for a while.


Image Segmentation

Page under construction...


Freeform Deformation

This is a computer graphics project me and two other collegues did for the course "Computergrafik II" in summer semester 2002. It presents a simple and fast way to deform a 3D object (either polygonally or parametrically defined) by a technique called "Freeform Deformation".

» Download the paper (in German!) or the source code (in C).


Communication in Multi-Agent-Systems

This is a project me and a friend of mine did for the course "Bioinformatik" (Natural Computation) at the University of Salzburg in summer semester 1999. It tries to propose the characteristics of agents and describes what multi-agent-systems are, how communication therein can work and finally how artificial neural networks (ANN) can be applied to agents so they "learn" autonomically how to communicate and act in multi-agent-systems.
As the practical part of the project we wrote a program wherein agents whose goal is to survive by "eating food" get commands for finding that by their "master". Unfortunately for them they have to find out the meaning of the commands by themselves.

» For the paper (in German) and the source code (in Objective C) look at the home page of this course.


Miscellaneous Tools

Rawrite+ 1.01 is a tool I wrote for writing images to floppy disks. It features long file name support, command line options, automatic (and working!) disk size detection and accepts Unix-style directory delimiters. Source code included!

gcc-2.95.3-elf.tgz (part 1) and gcc-2.95.3-elf.tgz (part 2) - Complete compilation of DJ Delorie's GCC port, set up as a cross-compiler from DOS/Windows to Linux (ELF binaries).

binutils-2.11.2-elf.tgz (part 1) and binutils-2.11.2-elf.tgz (part 2) - BinUtils compiled for ELF output. You will need this if you download the GCC cross-compiler above.