2016-02-27: added build 521 (AmigaOS 4) and 520 (MorphOS)
2010-12-18: added build 518 (all)
2010-06-04: added build 514 (MorphOS)
2009-09-06: builds 511 moved from pre-release to release in table
2009-05-12: builds 510 (faster OGR), superseded by 511 (PPC OGR core fix) on pre-release page
2009-02-24: builds 509 (OGR-27) on pre-release page
2008-11-26: builds 507 moved from pre-release to release
2008-11-12: changed MorphOS client links from 507b to 507c (not sure what changed, docs don't say).
This page is meant for the clients only, for icons, tweaks, scripts and other
miscellaneous stuff see the miscellanous section. For
information on how to install/use the clients, see the usage section.
About the client(s)
Below, current clients are directly linked from the D.Net FTP/web
server so you can get the very latest without having to wait for this page
to be updated. To get the whole picture, clients for other platforms than
Amiga and to make sure you have the latest version, check the
D.Net download page,
also the prerelease directory
which often contains stable release candidates which are there for the
formality of being approved.
Known/outstanding bugs (since xxx if version is noted - note that some of these are very old entries and could have been fixed a long time ago, I just may not know about it :)):
- 490/AmigaOS 4: does not yet support AltiVec due to lack of AltiVec support in ExecSG scheduler (apparently there is an altivec patch now but I'm not sure it has been made publically available yet for the developer prerelease)
- 463/RC5: In some cases (very large buffers with small packets), disk IO may slow down things
on fetch/flush operations, the recommended solution is to buffer less, but larger packets,
or if you really must, move buffers to RAM: and do update operations there, but this is
not recommended because of the possibility of losing everything on a reboot/crash.
Small packets really only make sense for very slow CPUs, larger ones will also relieve
- 461 - Cosmetic: if you use KingCON instead of the built in GUI, Myzar, the standard Amiga shell
or ViNCEd (OS 3.9 for example), you scroll the window and the first character
on a line of the client's output is a '[' it is swallowed (also in
logfile?). This is a confirmed KingCON bug and will probably not be
fixed in the clients (just use a recent client and the built-in GUI :)
- Cosmetic: during a fetch the live display of work unit amount may be larger or
smaller than the finished number due to the buffer limit of 2000
packets which may be reached before the intended amount of work
units. If this happens to you a lot, it's a clear sign that you are buffering
too many and too small packets :)
Improvements/fixed bugs (shortlist, see changes.txt in client archives for full list):
Build 521 (18-Feb-2016)
- (AmigaOS 4 PPC) no major changes, just some general housekeeping and rebuilding with gcc 5.2.0
Build 520 (05-Feb-2014)
- (all) fix regression in OGR-NG codebase
- (all) try to find partial packet started by matched core
- (MorphOS) battery/AC power det & CPU temp query
- (MorphOS) use standard MUI List instead of NList
Build 518 (17-Dec-2010)
- (all) OGR-NG bugfix for corner case unit invalidation (this is caught in the usual multipass work verification, stats will still count such units)
- (PPC) detect AMCC 460ex PowerPC CPU under AmigaOS 4
Build 514 (02-Oct-2009)
- (PPC) minor bugfixes, recognize more PowerPC CPUs. Not sure which since there is no detailed changelog available.
Build 511 (12-May-2009)
- (PPC) fix bug in OGR-27 core
Build 510 (28-Apr-2009)
- (x86) 3 new OGR-27 SSE2 ASM cores (25% faster on Core 2 CPUs)
Build 509 (17-Feb-2009)
- Support for OGR-27
- (x86) MMX/assembly OGR core with up to 40% speedup
Build 507b (29-Oct-2008)
- AmigaOS4/PPC client only: fixed crash on non-AltiVec/G4 machines (newer GCC used AltiVec code in general code generation).
Build 507 (27-Oct-2008)
- Support for OGR-26
- OGR-NG core: smarter, 'next generation' algorithm for increased search efficiency, slightly slower (depending on architecture 50%-67% of former absolute speed with current optimization), but supposedly up to 10 times less work needed for same result so OGR-26 should be finished on the same order of time as OGR-24 was.
Build 495 (16-May-2005)
- Clients updated all around due to some bugs found in x86 RC5-72 cores, AmigaOS/MorphOS clients (or OGR-P2) were not affected
- Added a stress-test for RC5-72 cores
- (x86) speed improvements for dg3 and go2 cores
Build 494b (31-Aug-2004)
- AmigaOS 4 PPC client now supports AltiVec, major speedboost - needs kernel version 51.12 for AltiVec support, will work with regular scalar core otherwise. This kernel is only available to developers/beta testers at the moment but is scheduled for the next update of the current prerelease version of the OS.
Build 494 (16-Aug-2004)
- Major OGR core base cleanup (GARSP-6.0) gives minor to major speedups across all platforms depending on CPU (including 68k). Examples: 6% faster in Amithlon 68k emulation, 11% faster on 68060, 22% on Athlon XP (Barton) + Win 98, 64% for 64-bit Opteron system.
- (PPC) Modified KOGE cores - should be faster in most cases. Example: 7% faster on 604e/233 compared to first KOGE core.
Build 493 (19-Jul-2004)
- New PPC assembly KOGE scalar (non-altivec) OGR-P2 core, 25% faster on G4 with AmigaOS/MorphOS 1.4, 36% faster on G3, 21% faster on 604 (CSPPC)
- New PPC assembly KOGE hybrid (altivec) OGR-P2 core, 68% faster than old core on G4 with MorphOS 1.5
- various other small fixes and improvements
Build 491 (26-May-2004)
- Faster OGR-P2 cores on PPC
- Allow crunchers to shutdown on exit when other user tasks are monopolizing cpu time
Build 490 (09-May-2004)
- support for OGR-24 and OGR-25 Phase 2 (OGR-P2) added
- (487/68k) fixed a race condition adding public port
- (487/AmigaOS) fixed a race quitting the cruncher thread
- (487/AmigaOS) fixed timer.device exit crash
Build 489 (23-Feb-2004) MorphOS specific PPC client
Build 488b (22-Jan-2004) MorphOS specific PPC client
- minor bugfix for upcoming MorphOS 1.4.2 update
Build 488 (19-Jan-2004) MorphOS specific PPC client
- fixed checkpoint file related bug where client didn't continue at the last saved position on unexpected termination (e.g. reset)
Build 483 (05-Apr-2003)
- supports AltiVec for major speed increase when used in conjunction with MorphOS 1.5 and a G4 CPU
- choice of built-in MUI client front-end or the generic Amiga GUI library (like other 68k/PPC clients)
- faster optimized RC5-72 cores all around by Malcolm Howell, should now reach RC5-64 speeds
Build 479 (16-Jan-2003)
- New contest: RC5-72, 68k and PPC (603e) optimized RC5-72 cores by Malcolm Howell
- PowerUp compiler linklib no longer trashes memory
- now also works under MorphOS!
- added G3/G4 CPU detection
- correctly round summary rate and OGR stats units
- new buffer format (incompatible with previous clients and proxies) - make sure you flush finished work with old client and delete buffer/checkpoint files before using new one!
- no longer supports RC5-64 obviously (for now due to differing rates this means temporarily using 473 or earlier for submitting benchmarks to the informational member list)
- due to the nature of the new project (RC5-64 used 4 registers, RC5-72 needs 5) the speed is expected to be lower than RC5-64 (and is, currently by 60 Kkeys/s for 603e@240 MHz), however there is already a new core in testing which eliminates this difference (only Amiga (coders) make(s) it possible :). Similarly for 68k the speed is almost equal (5 Kkeys/s lower on 060@50, no speedloss under Amithlon's 040 JIT emu), this is not expected to be improved further for 060, but possibly for 020/030 and 68000.
- -shutdown option supported
Build 473 (25-Jul-2002)
- Increased buff-in.* limit to 2000 packets
- Fixed random RC5 blocks being processed even if RC5 was disabled
- Fixed problems with font requester opening in GUI prefs window when clicking other gadgets
- Client can be shut down now by pressing escape key in GUI too
Build 472 (18-Apr-2002)
- Now comes with built in GUI, dnetcgui.library offers ClassAct/ReAction GUI for now
(system is made extensible for other GUI systems like MUI later). PPC and 68k clients
share the interface.
- Added -install and -uninstall command line arguments for creating a startup icon
in the WBStartUp drawer (no need to use this if you already have an
icon there, but make sure you have a stack of at least 66000 bytes).
This removes the need for an install script.
- Fixed a problem with TermiteTCP, client should now also be usable with this stack.
- Streamlined bsdsocket.library detection for efficiency in lurk mode,
see readme.amiga section 3.4 for notes on this.
- See CHANGES.txt for other general fixes/improvements.
Build 469 (08-May-2001)
- The bugfix in 468 introduced a (necessary) slight slowdown, with
this release better optimization and loop alignment for optimal cache
performance has negated this effect, all 68k OGR cores except 040
are now faster than before (but the 040 core is still faster than in
build 468), the 060 core is faster than ever (by about 8%). PPC
core also sped up about 3%. The OGR core for your particular CPU
should now also always be fastest of all cores.
- Fixed a nasty, but through some luck inert bug inherited from the LinuxPPC
client in the PPC RC5 core which assumed the wrong calling conventions
(PowerOpen instead of System V.4 which gcc uses).
- Now prints ANSI codes to clear line instead of spaces while benchmarking, so
resizing the window to a smaller width will not insert empty lines, in addition
to being more efficient.
Build 468 (19-Mar-2001):
- Fixed build 466 bug
which forced a withdraw of client builds 464-467.
- Hanging problem for some PowerUp users should now finally be fixed.
- -n -1 (exit on empty buffers) works again.
- Reverted default crunch-meter for OGR to 'absolute' type.
- Suffices weren't lowercase for remote buffer filenames.
- Added support for a second argument to -test/-bench, the number to
use. Example: 'dnetc -test rc5 8'
- Packets were saved and reloaded after buffer update.
- Current packet wasn't discarded on contest closure.
- Exited without crunching with "-n 1" option.
Build 464c (16-Dec-2000):
- When running client with 'Execute Command' from Workbench or doubleclicking on the icon
that appears after selecting 'show all' the output window could not be closed after
client exit. Any other valid means of running it (through Myzar
(can be in WBStartUp), shell-script, from shell, with IconX, user-startup
etc.) was fine. Note that the client itself should not be given an icon that
directly runs it since it is not a Workbench program.
- Fixed small twirling baton display bug.
- The Amiga console code was rewritten, since there was potential for
stack trashing (causing random crashes) on all 3 Amiga clients. However,
there was no chance of this happening when using Myzar (since the console
code is not used in that case). The new code is much more efficient too -
PPC users may have noticed that in -config mode, the menus rendered very
slowly in the previous release.
- Another change (reversal) was made to the PowerUp client, which may
have had something to do with the buffer-locking errors that people have
reported. As always, the author is looking for feedback from PowerUp users, to
know if the problems have been fixed or not. (see readme included for address)
- Buffer files will now shrink as packets are completed/flushed, as they do
on almost all other platforms.
- The fifo log file option is now working for AmigaOS.
- OGR benchmarking code has been improved to work better with slower CPUs.
As a side effect, benchmark rates will be slightly higher (more accurate)
than before - the OGR core is not actually any faster.
- Fixed OGR core selection (via -config) - is now saved in the .ini file.
- OS 3.9 now recognized.
Build 464b (10-Nov-2000):
- OGR: PPC cores have been sped up by 39% on 603e and up to 70% on 604e.
- PowerUp client will now exit with an error if stack is smaller than 200,000 bytes.
- Default progress display for OGR now shows number of nodes done instead of percentage,
but client can be configured to show either.
- Networking layer has been rewritten and is much more verbose.
- Client can be configured with multiple keyserver names.
- Some users reported crashes/lockups with 464 PowerUp client, this
should be fixed, but reports of the contrary are welcome.
- With KS2.0x, client crashed on exit. Build 464 uses Exec memory pools (since standard
libnix routines were found to be buggy), but since memory pools are not available before KS 3.0
a libnix replacement was used for older Kickstarts, and apparently this is also buggy.
- PowerUp: reverted to build 463 method instead of semaphore/mempool
combo due to a bug in PowerUp which caused crashes and buffer locking problems.
- Some smaller fixes and changes affecting all platforms, see documentation included in client archive.
Build 464 (15-Oct-2000):
- OGR cores are noticably faster on PPCs, and will also be quite
a bit faster on 68020+ since the 68k OGR code now uses the hardware
- Full lurk mode functionality has been added.
- -shutdown, -restart and -(un)pause support added
- "Pause if running" support now enabled
- network lookups/connects are verbose (screen only, not in logfile).
- RC5: random-prefix is no longer written to the .ini file (dunno if
this is an improvement, since offline clients running on random packets may
have a problem)
- If a dialup connection had been previously initiated by the client
AND the link drops while doing network I/O, the client will redial
- The crunch-o-meter displays a twirling baton (by default) if
not running with a GUI window (for example Myzar) and output is not redirected.
- Fixed networking for some cases where a proxy is involved.
- RC5: The build 463 clients (public release for all platforms!) always asked
for the largest available packet when fetching. They then truncated
this down to your preferred size, and discarded the rest. Obviously,
this was a pretty major bug. The upshot of the fix is that you will
probably notice that you will start getting larger (than your
preferred size) packets again. The only reason you were getting
your preferred size in the 463 build clients was because of the above bug.
- There seems to be a problem with the memory routines (i.e.
malloc/free) in the 68k libnix linklib. It was causing enforcer hits
on someone's machine, so it could affect some other users too
(perhaps related to certain hardware being present). The problem was
fixed by replacing malloc/free with custom routines which use Exec memory
pools instead (same for PPC versions).
- Fixed some superfluous disk IO when clients run with the -offline switch and
remote buffers disabled.
- The PowerUp client now needs ppc.library 46.30 or newer (instead of 46.28),
and exits with an error message if this requirement is not met (see the
miscellaneous section for a link to current download site).
- Bug with redirecting output to NIL: squashed.
- Unified 040/060 core since 68060 core turned out to be faster even on 68040s.
- 040/060 cores switched off for 030 and below to fix OGR test/benchmark crash.
- Introduced threading so clients continue working when doing buffer up/downloads.
This also fixes speed calculation and UTC times in logfiles
for both WarpOS and PowerUp versions.
Explanation: with this release
the cruncher task runs separately and more accurate (separate)
timing can be derived using the 68k. The problem was that
there is no way to read the CPU and bus clock values directly from
the card. Only the HID1 register is available. WarpOS uses the 68k timer to
measure the bus clock, then uses this together with the HID1 value to
generate the CPU clock value. This is mostly accurate, even with
overclocked cards, but it doesn't handle all cases.
The problem was more likely to manifest itself on overclocked CPUs.
Using 68k EClock or system time directly within core routines would
slow down the clients and pose new problems as a lot of things
depend on timing. Sam Jordan (author of WarpOS) said that the next
release of WarpUp will improve the CPU/bus clock evaluation, but was not sure
when this would be available. PowerUp was similarly affected, but
it contains a number of hardcoded values which it uses to identify
the speed of a card, using HID1. This means that most overclocked
combinations are not handled, which stuffs up the timers. Even some
non-overclocked combinations are not recognized. At the moment it
does not look like PowerUp will be fixed for this in the forseeable future.
- Worked around bug in the PowerUp environment which caused the priority
handling to fail (PPC task always ran with 0 instead of lower).
- Fixed broken networking in PowerUp client (this was due to a faulty implementation of strncpy() in
libnixppc for PowerUp).
Build 461 notes of historical interest: The new team's first clients,
updated and improved in a lot of areas. Main differences with old clients
(from 1998, i.e. build 420 and before): implement optimal timeslice value
in a dynamic fashion, no need to fiddle with ini file timeslice values
anymore (improved timing also means client will break after at most 5
seconds on any CPU), priorities have larger range (default is -120 to stay
outside of Executive catch range), faster cores (much faster than old 413
build and even slightly faster than the experimental 418-420 builds), CSC
and DES cores removed, OGR core was added, now supports 68000 too (whee,
whip those A500's :), support larger RC5-64 work unit sizes (up to
233 instead of previous 231), allow threshold setting
in amount of time to complete in addition to number of packets to do,
implement FIFO buffers, checkpoint file (if set) is written every 10
minutes or at every 10% of a work unit (whichever comes first), many small
bugs squashed, compiled with GCC, as opposed to SAS/C like in the older
clients. Introduced native WarpOS version, which also figured out 68k/PPC
task priorities on its own.
Myzar, an MUI frontend for all Amiga clients (obsolete!)
The Myzar homepage was located here.
If the Myzar homepage is not available, see also the miscellaneous section for alternative download.
Note that Myzar v2.0 is compatible only with the older clients (up to build
420), Myzar v2.1 for builds 460 and up, but does not support all (display) options in later
clients. As of client build 472 the client comes with its own built in GUI
(CA/Reaction), use of Myzar is deprecated.
Known bugs in v2.11:
- Jacek's graphical analysis is not yet enabled.
- build 464 and newer clients' OGR output changed and is not recognized fully yet, so
statistics do not fully update.
- Due to these changes also the titlebar will show idle instead of working although
the client is working, buffer sizes will show N/A instead of numbers and the progress
display will remain at 0%. This does not mean the client isn't working properly, just
that Myzar is not showing it for now. The latter one can, for now, be fixed by going back to
the old percentage display, run the client from a shell with -config argument and select
option 1, then 11 then 2.
- Some new options cannot be set through Myzar yet, in case you need these you can again
run client from shell with -config argument.
Known bugs in v2.1:
- Not really a bug, but not all functions of new clients are supported yet,
such as using a time period instead of a work unit threshold.
- Jacek's graphical logfile tool is not enabled yet, but will be in the
next release. Also no OGR graphical analysis yet, will be available when
logfile formats are known.
- Myzar used to set the priorities after the clients were started, now that the
clients correctly set this on their own this isn't necessary anymore, but
the code for this change was not removed for the 68k client, so if you have
set the priority to anything but 'lowest' Myzar will appear as frozen.
- OGR wil be fully supported with the next release, including added stats,
correct %pkttp display and buffer counts, plus some other related fixes.
Clients for other platforms
You are welcome to employ other machines than Amigas in the Amiga effort, but at least
one Amiga per person is greatly appreciated. To get to the other clients than those directly
linked from here, visit the
Distributed.Net download page.
Important: Buffer file formats have changed
between 2.6401, 2.6402 and 2.7xxx and newer (i.e. several times). Always flush
with the client version the work units were done with, then delete buffer/checkpoint files.
Once you have flushed old buffers, update to latest clients. Failing to do
so can result in crashes, blocks going into never neverland etc.