Pages about non-obfuscated programming

Page thumbnail

A 9-bit pitch technique

This article describes a new approach to representing pitch in C64 playroutines. The intended audience is people with a general understanding of C64 coding and SID playroutine design, although readers outside this somewhat narrow demographic may still find the article interesting. Read more.

Posted Tuesday 31-Mar-2015 00:44, 3 comments.

Page thumbnail

A case against syntax highlighting

Do you rely on syntax highlighting when developing software? If so, you may be shooting yourself in the foot. In this post, I will argue that syntax highlighting, while aesthetically seductive, moves focus from content to form, and discourages those who look at the code from trying to understand it. Read more.

Posted Sunday 26-Aug-2007 13:44, 149 comments.

Page thumbnail

Faking Fissile Material

Hoo-ray! It turns out I'm the winner of the 2015 Underhanded C Contest! Check out my contribution below, and see if you can spot the sleight-of-hand. Read more.

Posted Wednesday 3-Feb-2016 22:56, 8 comments.

Page thumbnail

GCR decoding on the fly

Posted Sunday 31-Mar-2013 16:40, 20 comments.

Page thumbnail

Getting numeric input (TI-83 assembly programming)

This is done in about the same way as getting string input. Start by putting the prompt at 821ch: Read more.

Posted in ancient times, 0 comments.

Page thumbnail

Getting string input (TI-83 assembly programming)

First of all, we put a prompt at 821ch. Max 16 chars. Read more.

Posted in ancient times, 4 comments.

Page thumbnail

Kernighan's lever

Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it? Read more.

Posted Tuesday 11-Dec-2012 22:33, 14 comments.

Page thumbnail

Leaky redaction

Yay! Third place in the 2008 Underhanded C Contest. Read more.

Posted Wednesday 14-Oct-2009 21:34, 3 comments.

Page thumbnail

Massively Interleaved Sprite Crunch

This article describes the inner workings of Massively Interleaved Sprite Crunch (MISC), a new C64 demo effect introduced in my demo Lunatico. Read more.

Posted Monday 19-Dec-2016 22:22, 7 comments.

Page thumbnail

Obsessbook

This is my contribution to the 6th Underhanded C Contest. The results were announced yesterday, and I was pleased to find that my solution was among the few mentioned explicitly on the result page. Before you check out the official results, you might want to study my code below, and see if you can spot the covert behaviour. Read more.

Posted Wednesday 1-Oct-2014 13:11, 1 comment.

Page thumbnail

Plasma

Plasma is a small (637 lines of source code) tool for compiling and concatenating propeller assembly language (PASM) and binary data. It extends PASM with some new features, most notably ARM-like constant pools. Read more.

Posted Monday 11-May-2009 18:47, 3 comments.

Page thumbnail

Poems for bugs

This is talk about C64 coding that I held at Revision 2013. Read more.

Posted Wednesday 3-Apr-2013 01:27, 4 comments.

Page thumbnail

Rasp64

Rasp64 is a Raspberry Pi attached to the user port of a C64, primarily for the purpose of cross-development. Read more.

Posted Tuesday 5-Feb-2013 22:31, 7 comments.

Page thumbnail

Raster paper

Posted Saturday 30-Mar-2013 19:23, 4 comments.

Page thumbnail

Reliable synchronisation of cog PLLs

Each cog in the propeller microcontroller has a video generator, which is clocked from a user configurable PLL. Read more.

Posted Tuesday 2-Nov-2010 18:38, 6 comments.

Page thumbnail

Spindle v1

Posted Tuesday 7-May-2013 22:57, 3 comments.

Page thumbnail

Spindle v2

Spindle is an integrated linking, loading and crunching solution for C64 trackmos. By hiding the details of the storage model, it allows the demo coder to focus on effects, transitions and flow. Read more.

Posted Tuesday 30-Jun-2015 23:48, 3 comments.

Page thumbnail

The TTY demystified

The TTY subsystem is central to the design of Linux, and UNIX in general. Unfortunately, its importance is often overlooked, and it is difficult to find good introductory articles about it. I believe that a basic understanding of TTYs in Linux is essential for the developer and the advanced user. Read more.

Posted Friday 25-Jul-2008 19:46, 197 comments.

Page thumbnail

TI-83

The TI-83 was a graphical calculator from Texas Instruments. It had a black and white display, some buttons and a Z80 processor, and it allowed you to write programs in assembly language. Read more.

Posted in ancient times, 2 comments.

Page thumbnail

Turbulence source code

Posted Monday 11-May-2009 18:47, 0 comments.

Page thumbnail

UMLseq

UMLseq generates UML sequence diagrams from simple text files. The output is in Encapsulated PostScript (.eps) format, and the input format is documented in the archive. Read more.

Posted in ancient times, 1 comment.

Page thumbnail

VIC Timing Chart

Posted Saturday 30-Mar-2013 19:23, 2 comments.