Miscellaneous

Everything that doesn't fit anywhere else.


  Old - Some content is 10+ years old, not representing my current thoughts  

Index


Machine Learning

Gopher
Image Recognition

Some of my code is available on my GitHub Account


rsvp


Rsvp is a Realtime Sampling Visual Profiler for OS X. It uses the Mach Kernel APIs and various system utilities for gathering profiling data and displays them using OpenGL. Rsvp provides function / method level profiling for C/C++/ObjC programs, plus call trees and source level data. It also monitors memory allocations and disk I/O to give you a more complete picture. An additional displays shows information on your program's threads. All of the data capturing, analysis and display is happening in realtime, making rsvp especially suited for dynamic applications like games or GUI based ones in general. It's light on UI and many times you'll just want to glance at it while interacting with your application to better understand its behavior.

The project is open source and well-documented (download / GitHub).

Top to bottom and left to right: CPU usage of the target program and profiler status, memory allocation and I/O graphs, thread display, function level profile and call tree.
Profiling another program and also showing the source view instead of the call tree.

Vim Scripts


I've been using Vim as my main editor for programming and document editing for a number of years now. Over time I wrote a significant amount of tweaks and scripts to augment its functionality. Things like asynchronous command execution / make, switching between C/C++ source and header files, helpers for dealing with ctags, searching through all open buffers, updating the vimrc from my website, a smarter F1 help function, highlighting and opening of URLs, insertion of C/C++ include guards, toggling tabstop size, smarter buffer deletion, a custom and more informative status line etc.

Take a look at my vimrc, you might find something useful for your editing habits.

MacVim is probably my favourite version of the editor. Not that its looks or functions are substantially different from any other version...

NKS


This is a collection of small programs inspired by Stephen Wolfram's book A New Kind of Science (NKS). The applications are written in C# using WinForms 2.0. I'll add more as I progress with the book. I also did some work on Fractals.

Conway's Game of Life. This application runs the famous cellular automaton. The user can place various patterns of interest on the grid to experiment with specific setups. In the picture several of Gosper's Glider Guns have been placed. Available for download.
A program that can generate all 256 Elementary Cellular Automata. The picture is showing the famous Rule 30.

Shiny


Shiny is lightweight Win32 GUI toolkit and wrapper library.

Some UI and a few Doxygen generated class diagrams. The lower right dialog window shows a configuration dialog where the user can select machines on the local network. All the functionality is already build into Shiny.
A small example program written in Shiny. It opens a frame window with a menu and parses an XML file into a tree control. In Win32 this would have been a pain, but with Shiny it's less than 50 lines of actual code. Take a look at the code here if you want to see what a small Shiny application looks like.

Fractals


These little mathematical miracles were among the things which originally got me started with OpenGL. I needed a way to rapidly visualize the heightfields and point clouds which my algorithms generated.

Mandelbrot / Julia heightfields and some point clouds generated by a chaos game variant. Mine extends to three dimensions and uses rotations as well as arbitrary translations.
Some more pictures generated by the same algorithms. There's a virtually unlimited amount of different shapes and figures a well done chaos game implementation can produce.
Many years ago I wrote a paper about fractals which became the winning entry in the German pupil science competition Jugend Forscht.

Old VB Games


Some old games I wrote ages ago during the golden days of Visual Basic 3 - 6. This list here is by far not complete, but these are the more interesting ones. All rendering is Win32 GDI. The graphics are mostly shamelessly stolen from various commercial games and hobby projects (Including Tibia, Doom and GNU Chess).

Red vs Blue! It's your job to conquer planets and gather their resources before the enemy does so. One can build different kinds of ships. The game has a CPU vs CPU mode which is quite entertaining to watch.
My attempt to write an RPG game. It had items and an inventory system, a simple conversation interface, an automap and funky light and shadow effects. Some basic pathfinding for the player and NPCs. Never made it into something really playable.
An electronic chess board. It had no actual player AI, but it watched over the rules and had features like position load / save, undo move and a chess clock.
A worms clone! Not exactly very creative, but this one was quite fun to play. The players had a couple of weapons which they can use to blow up the terrain and each other.

CRT 240p Scale Shader


This is a RetroArch GLSL shader for scaling a wide range of emulated consoles, handhelds and arcade systems to look high-quality and authentic on a standard definition, horizontal, 4:3, CRT TV through a single 240p super resolution. I'm using the shader with a customized RetroPie installation on a Raspberry Pi 3B with a PI2SCART hat, but it should work fine with different 240p RGB output solutions or software setups.

See this project on GitHub for more details.

All looking proper and pixel perfect! If you've ever tried to get a number of RetroArch cores emulating dozens of consoles, handhelds and arcade systems to look correct on your CRT, you know challenging this can be.

 © 2002 - 2024 Tim C. Schröder Disclaimer