art

Double Pendulum

2025-12-15

A simulation of a chaotic pendulum. The system of equations and the plotting subroutine are generic enough that the mass of the pendulums and the lengths of the pendulum arms can be adjusted and everything will be scaled to fit within the screen dimensions. The pendulum is anchored at the center of the screen and simply plays out forever (until the user hits break). Requires that the RK-4 routine in rk4.bas be loaded into the library.

math

Relative Humidity Calculator

2026-01-02

Anyone who lives in a cold dry climate often looks at a weather forecast and wonders what the relative humidity means. If it is -40C and 90% humidity, is that humid? The program calculates what the relative humidity would be indoors based on the temperature and relative humidity outdoors. Equivalent to if the indoor air was entirely replaced by outside air, and then heated back up. Only accepts temperatures from -50C to 50C.

4th Order Runge-Kutta

2025-12-12

A 4th order Runga-Kutta integrator for solving ODEs. This intended to be loaded into the library and used that way (e.g. LOAD "rk4.bas" <enter> LIBRARY SAVE). The subroutine works in-place, filling an output array(n,m) with the answer for an n dimensional problem with m timesteps. The screenshot is from an example, solving the ode f(t,y) = -y with three different initial conditions.

Mortgage Calculator

2025-12-08

A simple mortgage calculator that calculates the monthly payment for a fixed-interest rate mortgage (compounded monthly). Allows changes to the payment schedule and calculates the change both in time to repayment and interest deferred by paying off the loan early.

Parametric Graphing Calculator

2025-12-03

A simple graphing calculator which plots parametric equations of the form x(t) and y(t). The plot area is automatically scaled to fit the plot while remaining centred at the origin. Hitting Ctrl-p saves a screenshot named "graph.bmp", if one exists it increments the filename.

toys

A Basic Snake

2025-12-07

A basic snake toy. The snake is represented by a series of boxes, each move as independent sprites, which can be driven around the screen using the PicoCalc arrow keys. Hitting 'q' quits. When the snake collides with the wall, or itself, it beeps and turns the head of the snake red. Using the arrow keys it can still be driven around, once it is no longer colliding with anything the red square will turn yellow again.

Simple Drawing Tool

2025-12-07

A basic drawing tool. The brush is a 10x10 pixel square that can be moved around the screen using the arrow keys, enter paints the screen. The colours are selected using the numbers 0-9. Hitting 's' saves the current image as 'draw.bmp' (if 'draw.bmp' already exists it will append a number, e.g. 'draw-1.bmp') and 'q' quits.

The Most Annoying Musical Instrument

2025-11-28

A simple tone generator where the tone can be selected using the up and down arrow keys on the PicoCalc. Hitting 'q' quits.

utils

The Any Key

2025-11-28

A simple utility to return the ASCII integer code corresponding to the key that was pressed. This is useful if you don't know what the code for, say, one of the arrow keys or something is.