AminetAminet
Search:
85814 packages online
• About
• Recent
• Browse
• Search
• Upload
• Setup
• Services

util/time/PolarClock.lha

Mirror:Random
Showing: i386-amithlon icongeneric icon
No screenshot available
Short:Animated polar clock and screen blanker
Author:René Thomsen
Uploader:René Thomsen <renethomsen dk gmail com>
Type:util/time
Version:0.12.6
Architecture:m68k-amigaos >= 3.1.0
Date:2026-11-11
Requires:AGA or RTG, 68020+, screen with 32+ colours
Distribution:Aminet
Download:util/time/PolarClock.lha - View contents
Readme:util/time/PolarClock.readme
Downloads:22

PolarClock 0.12.6
=================

Developed by René Thomsen. Released 9 November 2026.

PolarClock is a polar clock for AGA Amigas. Six concentric rings fill up
clockwise from 12 o'clock, from the outside in:

    seconds, minutes, hours (24h), day of week, day of month, month

Every ring moves smoothly: the seconds ring sweeps at 25 frames per second
and each ring includes the progress of the finer units below it. The rings
are anti-aliased, and the time (HH:MM) and date (DD.MM) are shown in the
centre in smooth graphical digits, in the colours of their rings.

PolarClock is also a commodity and a screen blanker: after a chosen idle
time it shows the clock fullscreen until you touch the mouse or keyboard.
If you already use Garshneblanker, the clock is also included as a
Garshneblanker module.


Features
--------

  - Smooth, anti-aliased rings (9 shades on 256-colour screens)
  - Five colour schemes: Classic, Fire, Water, Ice, Earth
  - Resizable window or fullscreen on its own 256-colour screen
  - Screen blanker after 1, 2, 5, 10 or 30 minutes of inactivity
  - Module for the Garshneblanker screen blanker
  - Commodity: controlled from Exchange, with hotkeys
  - Settings are remembered between runs
  - Only the parts that change are redrawn: low CPU use, no flicker
  - Circles stay round in HiRes, interlaced and RTG screen modes


Requirements
------------

  - An AGA Amiga (A1200, A4000, CD32) or an RTG graphics card
  - A 68020 or better (every AGA Amiga has one); no FPU needed
  - Kickstart/Workbench 3.1 or newer
  - A Workbench or public screen with at least 32 colours. 256 colours
    looks best: set it in Prefs/ScreenMode.

Fast RAM helps a lot when running fullscreen on a 640x512 256-colour
screen, because that display mode leaves little chip RAM bandwidth for
the CPU.


Installation
------------

Double-click Install-PolarClock in the PolarClock drawer. It needs the
Installer program in C:, which comes with Workbench 3.1 and newer.

  - Novice users get PolarClock in SYS:Tools/PolarClock, without further
    questions. If Garshneblanker is installed (its Blankers drawer in
    SYS:WBStartup, where its installer puts it, or SYS:Blankers), the
    Garshneblanker module goes there too.
  - Intermediate and expert users choose where PolarClock goes, whether
    it starts at boot (as a clock window, or hidden as a screen blanker
    after 5 minutes), and whether and where to install the Garshneblanker
    module.

An existing PolarClock icon is kept, so its tooltypes stay as you set
them.

To install by hand, copy the PolarClock drawer anywhere, for example to
SYS:Tools/. To start the clock or the screen blanker at boot, copy
PolarClock and PolarClock.info to SYS:WBStartup/. The icon already has
the DONOTWAIT tooltype. The Garshneblanker module is in the
Garshneblanker drawer: see "Garshneblanker module" below.

The manual is PolarClock.guide (AmigaGuide; double-click it to read it in
MultiView).


Usage
-----

Double-click the icon, or from the Shell:

    PolarClock [LEFT=n] [TOP=n] [WIDTH=n] [HEIGHT=n] [PUBSCREEN=name]
               [FPS=n] [NOTEXT] [SCHEME=name] [SHOWEMPTY] [FULLSCREEN]
               [BLANKER=minutes] [CX_POPUP=YES|NO] [CX_POPKEY=key]
               [BLANKKEY=key] [CX_PRIORITY=n] [NOVSYNC]
               [TEXTSTYLE=GEOMETRIC|DOTS] [TEXTCOLOR=RINGS|GREY]
               [CLOCK=12|24] [DATEORDER=DM|MD] [WEEKSTART=MON|SUN]

    Run >NIL: PolarClock      ; start in the background

From Workbench the same options are read as tooltypes. Tooltypes in
parentheses, such as (FPS=25), are disabled: remove the parentheses in
the icon's Information window to use them.

  WIDTH, HEIGHT   Inner window size. Without HEIGHT the window gets the
                  height that makes the clock round on your screen mode.
  PUBSCREEN       Open on this public screen instead of the Workbench.
  FPS             Frame rate, 1 to 50 (default 25). Lower it on slow
                  machines.
  SCHEME          Classic, Fire, Water, Ice or Earth.
  NOTEXT          Hide the time and date (also TEXT=NO as a tooltype).
  TEXTSTYLE       Digits: GEOMETRIC (smooth strokes) or DOTS (dot matrix).
  TEXTCOLOR       RINGS (each number in its ring's colour) or GREY.
  CLOCK           12 or 24-hour digits (default: from Locale prefs).
  DATEORDER       DM (day first) or MD (month first) (default: Locale).
  WEEKSTART       MON or SUN: where the weekday ring starts (default:
                  Locale).
  SHOWEMPTY       Show the empty part of each ring as a grey track.
  FULLSCREEN      Start fullscreen.
  BLANKER         Screen blanker idle time in minutes (0 = off).
  CX_POPUP=NO     Start hidden, e.g. to run only as a screen blanker.
  CX_POPKEY       Hotkey that shows the window (default: ctrl alt p).
  BLANKKEY        Hotkey that blanks the screen (default: ctrl alt b).
  CX_PRIORITY     Commodity priority (default 0).
  NOVSYNC         Don't wait for the vertical blank before updating the
                  screen. Saves a little latency; may show tearing.

Keys in the PolarClock window:

  T               Toggle the time and date
  F               Toggle fullscreen
  Esc             Leave fullscreen (in a window: quit)
  Q               Quit


Menus
-----

Project
  About...        Version and author
  Blank now       Start the screen blanker now (Right-Amiga B)
  Hide            Close the window, keep running (Right-Amiga H)
  Quit            Quit PolarClock (Right-Amiga Q)

Settings
  Color scheme        Classic, Fire, Water, Ice, Earth (Right-Amiga 1-5)
  Show time and date  Time and date in the centre (Right-Amiga T)
  Text style          Geometric or Dot matrix digits
  Text colour         Ring colours or Grey
  Hide empty rings    Draw only the filled part of each ring (Right-Amiga E)
  Fullscreen          Window or full screen (Right-Amiga F)
  Screen blanker      Off, or after 1, 2, 5, 10 or 30 minutes

PolarClock follows your Locale preferences: 12 or 24-hour time, the
order of day and month and the separator between them (. / or -), and
whether the week starts on Monday or Sunday. Without a country set in
Locale prefs, Workbench uses American formats (12-hour, month/day). The
CLOCK, DATEORDER and WEEKSTART options override the locale.

The window opens where it was last closed, with the same size; this is
saved in ENVARC:PolarClock.window. LEFT, TOP, WIDTH and HEIGHT override it.

Menu settings are saved in ENVARC:PolarClock.scheme, PolarClock.text,
PolarClock.textstyle, PolarClock.textcolor, PolarClock.empty and
PolarClock.blanker, and are used next time. A tooltype or Shell option
overrides the saved setting.


Default settings
----------------

  Colour scheme     Classic
  Time and date     shown, geometric digits in ring colours
  Empty rings       hidden
  Display           window (first time: top right of the screen, 1/4 of
                    its width, at least 200 pixels wide; after that where
                    it was last closed)
  Time and date     12/24 hours, date order and first weekday from the
                    Locale preferences
  Frame rate        25 frames per second
  Screen blanker    off
  Hotkeys           ctrl alt b (blank now), ctrl alt p (show window)


Screen blanker
--------------

Choose an idle time in Settings > Screen blanker, or use the BLANKER
tooltype. When there has been no key or mouse input for that long,
PolarClock shows the clock fullscreen and hides the mouse pointer. Any key
or mouse movement brings back what was there before.

While the blanker is on, the close gadget hides the window instead of
quitting, so the blanker keeps running. Use Project > Quit, Exchange, or
the Q key to quit. Starting PolarClock a second time shows the window of
the copy that is already running.

To use PolarClock only as a screen blanker, put it in WBStartup and
enable the tooltypes CX_POPUP=NO and, for example, BLANKER=5.


Garshneblanker module
---------------------

Garshneblanker (Aminet util/blank/GBlanker36.lha) is a screen blanker
with many blanker modules. The Garshneblanker drawer holds PolarClock as
one more module, so you can use the clock from Garshneblanker instead of,
or as well as, PolarClock's own screen blanker.

To install it, copy the three files PolarClock, PolarClock.ifc and
PolarClock.txt from the Garshneblanker drawer to Garshneblanker's
Blankers drawer (the one in its BLANKERDIR tooltype). Then open
Garshneblanker's window with its hotkey and choose PolarClock from the
list of blankers. Prefs sets the module's options and Info shows
PolarClock.txt. Prefs needs the BGUI version of Garshneblanker with
bgui.library (Aminet dev/gui/bgui.lha), or the MUI version with MUI.

The module has these settings: colour scheme, time and date shown or
hidden, text style, text colour, empty rings hidden or shown, and the
screen mode. They are saved by Garshneblanker in Blankers/PolarClock.prefs
and are separate from PolarClock's own settings. Without saved settings
the module uses PolarClock's defaults and the mode of the front screen.
12/24 hours, the date order and the first weekday follow your Locale
preferences.

Choose an AGA or RTG screen mode for the module: it draws on a 256-colour
screen of that mode, or at least 32 colours. With other modes, such as
ECS modes or HAM, Garshneblanker blanks the screen to black instead. Like
every Garshneblanker module, it also stops and blanks to black when other
programs need the processor.

The screen blanks at once. On a 68020 the rings then fill in from the
top and bottom edges over about 11 seconds on a 640x512 screen, while
PolarClock prepares its picture (see "How it works"). The same is true of
PolarClock's own screen blanker. With fast RAM, PolarClock keeps what it
prepared, so the next blank fills in sooner.

The module is a separate program from PolarClock itself and needs only
Garshneblanker. It doesn't use PolarClock's commodity, hotkeys or menus.


Colours
-------

PolarClock shares the screen's colours: it asks for the colours it needs
with ObtainBestPen and gives them back when it quits. On a 256-colour
screen it uses about 50 pens with empty rings hidden (about 100 with
SHOWEMPTY). On a 32 to 128-colour screen it uses fewer shades. If there
are not enough free colours, PolarClock tells you; closing other programs
that use many colours, or switching to 256 colours, helps.


How it works
------------

When the window opens or changes size, PolarClock calculates for every
pixel its angle and how much of it each ring covers, using integer maths
only. Each frame it then redraws only the pixels of the rings whose arc
ends moved, looks up the colours in pre-calculated colour ramps and
writes them straight into the bitplanes of an off-screen buffer. Frames
are timed with the E-clock, so the clock keeps its speed even when a
frame takes longer.

Slow work is spread over many frames, so the clock never stops: the
per-pixel calculation when the display opens (on a fast CPU it is done
at once; on a 68020 the rings fill in as it goes), the digits for the
next minute, which are prepared while the current minute is shown, and
erasing a ring that starts again at 12 o'clock: the old arc then
retracts towards 12 o'clock over a few frames, or a few seconds on a
68020 with a large screen. During such work PolarClock runs at one
priority lower, so other programs stay responsive.

In fullscreen PolarClock uses two screen buffers: each frame is copied
into the hidden one, which is shown at the next vertical blank, so the
display never shows a half-drawn frame. In a window, each screen update
starts at the vertical blank (turn this off with NOVSYNC).


Copyright and licence
---------------------

PolarClock is (c) 2026 René Thomsen. All rights reserved.

PolarClock is freeware:

  - You may use it free of charge, privately and commercially.
  - You may copy and distribute it, but only as the complete, unmodified
    archive. This includes Aminet and its CD/DVD collections, magazine
    cover disks and download sites.
  - You may not sell it on its own. Charging a small fee for the media or
    for a collection it is part of is fine.
  - You may not modify, disassemble or redistribute parts of it.

PolarClock is provided "as is", without warranty of any kind. You use it
at your own risk; the author is not liable for any damage or loss of data
resulting from its use.


History
-------

0.12.6 (10.11.2026)
  - First public release.


Author
------

René Thomsen


Contents of util/time/PolarClock.lha
 PERMSSN    UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP          NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
drwxr-xr-x     0/0           0       0 ****** -lhd- 0000 Nov 10 07:12 PolarClock/
drwxr-xr-x     0/0           0       0 ****** -lhd- 0000 Nov 10 07:12 PolarClock/Garshneblanker/
-rwxr-xr-x     0/0       24507   39720  61.7% -lh5- 7a17 Nov 10 07:06 PolarClock/Garshneblanker/PolarClock
-rw-r--r--     0/0         174     278  62.6% -lh5- 0b5e Nov 10 07:12 PolarClock/Garshneblanker/PolarClock.ifc
-rw-r--r--     0/0         290     440  65.9% -lh5- 8584 Nov 10 07:12 PolarClock/Garshneblanker/PolarClock.txt
-rw-r--r--     0/0         237     576  41.1% -lh5- 35e2 Nov 10 07:12 PolarClock/Garshneblanker.info
-rw-r--r--     0/0        1627    5410  30.1% -lh5- 6100 Nov 10 07:12 PolarClock/Install-PolarClock
-rw-r--r--     0/0         295     596  49.5% -lh5- 3c90 Nov 10 07:12 PolarClock/Install-PolarClock.info
-rwxr-xr-x     0/0       28032   47692  58.8% -lh5- 23c6 Nov 10 07:05 PolarClock/PolarClock
-rw-r--r--     0/0        5474   13848  39.5% -lh5- f54e Nov 10 07:12 PolarClock/PolarClock.guide
-rw-r--r--     0/0         140     286  49.0% -lh5- 65d7 Nov 10 07:12 PolarClock/PolarClock.guide.info
-rw-r--r--     0/0         443     860  51.5% -lh5- a2f8 Nov 10 07:12 PolarClock/PolarClock.info
-rw-r--r--     0/0        5242   12819  40.9% -lh5- 2bca Nov 10 07:12 PolarClock/PolarClock.readme
-rw-r--r--     0/0         140     286  49.0% -lh5- 65d7 Nov 10 07:12 PolarClock/PolarClock.readme.info
-rw-r--r--     0/0         237     576  41.1% -lh5- 35e2 Nov 10 07:12 PolarClock.info
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total        15 files   66838  123387  54.2%            Nov 11 00:49
Page generated in 0.02 seconds
Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>