Shipping developer tools since 1993

I build compiler tooling, code editors, visual designers, developer tools, native Win32 software and documentation engines.

PlanetSquires Software is an independent software studio shipping FreeBASIC and Win32 tooling: the tiko editor, an 11,672-entry API reference, and eighteen open-source owner-drawn controls. Three decades of native code — no frameworks, no build step, and it starts faster than the page you are reading.

  • GPLv3
  • 64-bit
  • Unicode
  • Per-monitor DPI
  • Windows 10+

02 — About

Software that other software gets built with.

I have been writing software since 1993 — DOS first, then Windows — and for most of that time the product has been somebody else's toolchain.

PlanetSquires Software is an independent studio in Canada working close to the metal: the Win32 API called directly, the FreeBASIC compiler, and a code editor built around them. There is no runtime to install, no package manager in the loop, and nothing between the source and the executable except a compiler and a linker.

That constraint is the product. tiko ships as a single package with the 32- and 64-bit FreeBASIC toolchains, José Roca's AfxNova library and the complete include set, preconfigured — you unpack it and compile. The Help Center is a static site with a 2.4 MB search index and no server behind it, which is why it also works offline from a local folder and inside tiko's own F1 pane.

The work splits into four things I care about: compiler tooling and language front ends, IDE and editor engineering, native Windows UI, and making all of it measurably fast. Everything worth reusing ends up on GitHub.

  • Compiler front ends
  • IDE engineering
  • Win32 & owner-drawn UI
  • Systems programming
  • Performance work
  • Open source

Previously shipped

  • WinFBE IDE

    The FreeBASIC IDE that came before tiko, and tiko's direct ancestor — a full editor, project system and compiler integration. Still on GitHub, now succeeded rather than abandoned.

  • FireFly Visual designer

    A visual GUI designer and code generator for PowerBASIC — draw the window, get real compilable source, no runtime and no black box in the middle.

  • JellyFish Editor

    A programmer's editor for PowerBASIC, built when the alternative was a plain text editor and a command line.

  • Cheetah Database system

    A dBASE III compatible database engine for Windows applications, from the era when shipping data-driven software meant writing the storage layer yourself.

  • 0 Years shippingsince 1993 · DOS → Windows
  • 0 Indexed API entriesacross three docsets
  • 0 Open-source controlsowner-drawn, standalone
  • 0 Shipped localizationsEN · FR · ES · DE · NO · ZH

03 — Featured projects

Four things worth your time.

An editor, a community, a reference, and the framework that underpins the lot.

Editor

tiko editor

A small, fast code editor for the FreeBASIC compiler — shipped as a complete package with both compiler toolchains, the AfxNova library and every include file, ready to build on first launch. Scintilla-backed, Unicode throughout, per-monitor DPI aware, with incremental module compilation, codetips, autocomplete and GDB debugging. It is the successor to WinFBE.

  • GPLv3
  • FreeBASIC
  • Windows 10+
  • v1.3.2
PaulSquires/tiko

Community

PlanetSquires Forums

Where the work actually gets discussed. Separate boards for PlanetSquires software, José Roca's libraries, and general Windows and FreeBASIC programming — bug reports, release notes, and the kind of long-form technical threads that never survive a chat app. Free to join, and the fastest route to a real answer.

  • Support
  • Release notes
  • Free to join
Visit the forums

Documentation

Help Center

11,672 functions, methods and properties behind one search box. Three docsets — José Roca's AfxNova, the FreeBASIC 1.20.0 manual, and the eighteen PlanetSquires controls — fused from documentation and source into a single symbol database. 28,000 static pages, byte-deterministic builds, and it runs from a local folder or inside tiko when you press F1.

  • 11,672 entries
  • 3 docsets
  • Works offline
planetsquires.com/docs

Framework

AfxNova

The Windows framework for FreeBASIC: class-based wrappers over the Win32 API, GDI+, Direct2D, DirectWrite, COM, ADO, WebView2 and more.

AfxNova is José Roca's work, and José is a legend. He is one of the most respected Win32 API programmers anywhere — decades of meticulously engineered, exhaustively documented libraries that an entire generation of BASIC developers learned the Windows API from. When his code says a COM interface behaves a certain way, you can stop reading the SDK.

My part is strictly downstream: I bundle AfxNova with tiko so it is configured out of the box, and I generate its 11,038-entry reference for the Help Center. The credit, the source and the issue tracker are all his.

  • MIT
  • by José Roca
  • 11,038 entries
github.com/JoseRoca/AfxNova

04 — Languages

Compiled languages. No layers in between.

Everything here compiles to a native executable that calls the operating system directly.

FreeBASIC

Compiled · 32 & 64-bit · GPL toolchain

A modern, self-hosting BASIC compiler that produces real native binaries with C-level performance and unrestricted pointer access. It is the language tiko is written in and the language tiko compiles — the whole toolchain ships in the box, so the distance between an idea and a running .exe is one keystroke.

frmMain.basFreeBASIC
#include once "AfxNova\CWindow.inc"
using AfxNova

' One window, no designer, no runtime.
dim as CWindow ptr pWindow = new CWindow
pWindow->Create(0, "PlanetSquires", @WndProc)
pWindow->SetClientSize(960, 600)
pWindow->Center

function WndProc(byval hwnd as HWND, byval uMsg as UINT, _
                 byval wParam as WPARAM, byval lParam as LPARAM) as LRESULT
   select case uMsg
      case WM_DESTROY
         PostQuitMessage(0) : exit function
   end select
   function = DefWindowProcW(hwnd, uMsg, wParam, lParam)
end function
  • Self-hosting compiler, native output, zero runtime dependency
  • Unicode-aware string types and direct pointer arithmetic
  • Both toolchains bundled and preconfigured inside tiko

Win32 API

C · Direct system calls · No abstraction layer

The platform itself. Every control in the PlanetSquires family is one real HWND with its own window procedure — no wrapper hierarchy, no message marshalling, no toolkit deciding how a control should behave. That is what makes them embeddable in anything that can call CreateWindowExW.

main.cC
/* Register the class, then pump the queue. That is the whole model. */
WNDCLASSEXW wc = { sizeof wc };
wc.style         = CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS;
wc.lpfnWndProc   = WndProc;
wc.hInstance     = hInst;
wc.hCursor       = LoadCursorW(NULL, IDC_ARROW);
wc.lpszClassName = L"PsMainWindow";
RegisterClassExW(&wc);

MSG msg;
while (GetMessageW(&msg, NULL, 0, 0) > 0) {
    TranslateMessage(&msg);
    DispatchMessageW(&msg);
}
  • One HWND per control — hosts can SetWindowPos it freely
  • Flicker-free double-buffered painting through a shared surface
  • Per-monitor DPI scaling handled at creation, not patched afterwards

C / C++

Systems work, DLL boundaries and anything that has to interoperate cleanly. The Win32 headers are C, so this is the language the platform is documented in — and the one I reach for when a component has to be callable from everywhere.

PowerBASIC

A decade and a half of shipped commercial products — FireFly, JellyFish and Cheetah were all built with it. A superb native compiler, and where much of the owner-drawn Win32 technique behind the current controls was first worked out.

05 — Open source

Eighteen controls, each its own repository.

Owner-drawn Win32 controls built for tiko and split out to stand alone. One HWND, no subclassing hierarchy, host-supplied colours and fonts, and a self-test you can run from an environment variable.

GPLv3

tiko editor, and the tooling built around it. Source available, modifications stay open.

PaulSquires/tiko

MIT — AfxNova

AfxNova is José Roca's framework — a deeply respected Win32 API programmer, and the reason a great deal of BASIC Windows code works at all. PlanetSquires bundles his library with tiko and generates its reference; it is not a PlanetSquires product.

github.com/JoseRoca/AfxNova

GFDL 1.3

The FreeBASIC manual. Republishing it requires carrying attribution, so the Help Center emits it on every page.

Licences & attribution

06 — Contact

Bring it to the forums.

There is no contact form here on purpose. Bug reports, feature requests and questions all belong somewhere public, where the answer helps the next person who searches for it.

Filing a good bug report? Include your Windows build, whether you are on the 32- or 64-bit toolchain, and the smallest source file that reproduces it. That trio resolves most issues on the first reply.