Off-line Calculators

Here you will find D'Hondt calculators written for download and off-line use on desktop systems, although the versions presented here are as much historical interest as practical use. They are written for Windows, but it is possible — albeit with some issues — to run them under Linux. For a long time I planned to write a cross-platform implementation, since I rarely use Windows these days, but ended up creating a Javascript version instead. The exact genealogy of the software here I have forgotten, but writing programs to do D'Hondt seat calculations dates back to my earliest days doing programming. At some point I wrote a (now long-lost) MS-DOS version, and circa-1998 I ported the code to Windows. A few years later I did a major rewrite, and more years later I recompiled the code using a more recent compiler to get round problems reported with WindowsXP.

Version 2.4

D'Hondt for Windows screenshot

From memory this version dates back to 2010 when I fixed a subtle bug related to how WindowsXP handled EM_GETLINE callbacks compared to Windows9x & Windows2000, but otherwise have lost track of its development history. In terms of appearance it is unchanged since the 1990s, and in principle this version should run on any 32-bit version of Windows, although I have not tested it with the earlier versions since rebuilding the program with a relatively recent compiler.

Version 3.1

D'Hondt for Windows screenshot

This version was created in 2013 and is a complete rewrite using the .NET framework, which is partly because at the time I was not sure where the source code for earlier versions had got to, and partly in order to refresh my knowledge of Windows Forms. Functionally the major addition is input to take account of constituency seats gained in Additional Member Systems such as the Scottish Parliament.

Running under Linux

Although both versions of the program will run under Ubuntu (and I presume BSD and other Linux distributions) using either Wine or Mono, there are known issues. These are due to issues related to emulating Microsoft programs on Unix-like platforms:
fixme:font:freetype_SelectFont Untranslated charset 255
This happens with version 2.4, and the display is also messed up. This is because Wine does not include the built-in fixed-width (with line glyphs) that I used, and I have yet to find a workaround.
wine: Install Mono for Windows to run .NET 2.0 applications.
Version 3.x needs to be run using the mono command rather than the wine command.
The assembly mscorlib.dll was not found or could not be loaded.
Most likely you only have part of Mono installed. Under Ubuntu 12.04 this can be fixed by installing the mono-complete package.
The rows of results are miswrapped
This happens with version 3.0 because of text-box size differences between Windows and Wine's emulation of them. This is fixed in version 3.1 where they are sized dynamically.

Download links


This software is for use strictly at your own risk. It has not damaged any of my own systems, but in these days of transparent caching, I cannot guarantee that the likes of NSA/GCHQ have not modified the program while in transit.