Contents
The Juker

Version 1.4

Copyright (c) 1993 Muhammad M. Saggaf. All Rights Reserved.

Another Fine Product of The Free Windows Software Foundation

Startup Summary

Introduction

Installation

Action Summary

Mouse

Keyboard

Buttons

System Menu

Check Boxes

Status Bar

Administravia

Registration

The FWSF

Other Free Software

Version Information

Release Notes

Revision History


Installation

Unpack the distribution archive anywhere you like, then copy or move ctl3.dll to Windows system directory (e.g. \windows\system) if it is not already there.


Introduction

The Juker is a versatile MIDI jukebox. Songs can be queued to play at a sequential or random order. Songs queued in one session can be saved to play automatically at the next session. The Juker saves its settings and window location on exit to use them for the next session. It even saves the currently playing song, so can pick up exactly where you left off when you start again.

Song progress is shown by a moving sound bar. Undesired songs can be removed from the queue and optionally deleted from disk. While a song is playing,  it can be stopped or paused and then resumed.

The Juker is meant to be unobtrusive, it cab run all the time as an icon. Song play can be paused and resumed simply by clicking the right mouse button on the icon. The name of the current song is shown is shown in the icon's caption, so it's always visible.

When another session of the Juker is invoked while the first is still running, it merely restores and raises the first one, no new session is started.


Mouse

Dragging

Dragging a song (MIDI) file to the Juker's window or icon adds that song to the queue.

Left Button

Clicking the left mouse button on any song in the queue starts playing that song from its beginning.

Right Button

Clicking the right mouse button on the Juker's  icon pauses the song currently playing or resumes playing it if already paused. The system menu is updated accordingly.


Keyboard

Tab

Switches between window groups and group members.

Arrow Keys

Switches between group members. For example, when in the queue list box group, switches between songs; when in the Play button group, switches between the three member buttons (Play/Pause, Stop, and Stick/Unstick).


Buttons

Play/Pause

Plays the current song from the beginning if stopped, resumes playing the current song if paused, or pauses the song if playing (as appropriate). This buttons changes its title according to its current function.

Stop

Stops the song play. In contrast to Pause, a song that is stopped cannot be resumed, it starts playing from the beginning if Play is depressed.

Stick/Unstick

Sticks to the current song: continuously plays the currently playing song until Unstick is depressed. This button is useful if during playing, a particular song appeals to and you want to listen just to it for a while. This buttons changes its title according to its current function.

Circulate

Plays the next song, or the next randomly-selected song if Random Order is checked.

Remove

Removes the current song from the queue, Plays the next song. If no songs are left in the queue, playing is stopped.

Clear

Removes all songs from the queue. Stops song play.

Delete

Deletes the song file from disk. Prompts the user for confirmation if Confirm Delete is enabled.

Help

Displays the help index.

About

Pops up some information about the program.

Exit

Terminates the program.


System Menu

Pause

Pauses or resumes playing the current song. A check mark indicates the current status. Equivalent to the Play/Pause button.

Stick

Sticks or unsticks to the current song. A check mark indicates the current status. Equivalent to the Stick/Unstick button.

Circulate

Equivalent to the Circulate button.

Remove

Removes the current song from the queue. Equivalent to clicking the Remove button.

Delete

Deletes the song file from disk. Equivalent to clicking the Delete button.


Check Boxes

The status of every check box is saved on exit and used in the next session, so there is no need to adjust it on every program invocation.

Continuous Loop

Continuous play. Loops to the first song when the last one in the queue finishes playing.

Random Order

Plays songs in random rather than sequential order. This also effectively yields continuous play.

Save Queue on Exit

Saves the current song queue on exit to play the same songs in the next session.

Confirm Delete

Prompts for confirmation for deleting disk file when Delete is invoked.


Status Bar

An informative status bar is displayed at the bottom of the window. It shows the following, respectively:

File name of the current song.

Order of the song in the queue.

Total number of songs in the queue.

Current time position in the song, which duplicates the information provided by the thumbnail.

Length of the current song in minutes.


Registration

This software is free. It needs no registration. Letting me know that you use it and appreciate it would be a nice touch though. Suggestions to improve the program are also welcome. I can be contacted as follows:

Internet:

alsaggaf@athena.mit.edu

BBS:

Channel-1. If you download this program from Channel-1 and like it, I'd appreciate it if you leave me a note there.

Snail mail:

Muhammad M. Saggaf, 262 Sidney ST. #3, Cambridge, MA 02139

or:

PO. Box 9863, Dhahran 31311, Saudi Arabia.


Free Windows Software Foundation

I recently switched from using Unix at home to using Windows and was appalled that everybody wants to make money of his/her programs -- however trivial it is. This is not good. If one pays for even the littlest of utilities, he would be tempted to charge money for the programs he writes, to recoup his losses, whilst the spread of free software encourages everybody to donate their own.

The FWSF is intended to promote free software. Any author of a free Windows program is entitled to join.


Other Software From the Author
Other Free Software

If you use Unix as well, you may want to try the following programs I wrote:

Babaya

X Windows session manager

Mumail

MIME-compliant mail reader for X Windows.

Seyon

Full-featured communications program for X Windows.

Xrz3D

 X Windows interface for Zmodem.

Other Free Software for MS-Windows

All3D

By Andreas Furrer: Adds 3D look to most applications.

Bang

By Rembrandt et .al: Have fun as you fire a machine gun at your desktop.

Dropper

By Paul Butcher: A NeXT-like docking program launcher.

Fast File Find

By D. Munro: Searches for files.

PFE

By Alan Philips: A programmer's' editor. Good Notepad replacement.

Ftaskmanager

By Andreas Furrer: A replacement for Windows Task Manager.

WinEKG

by Gary Williamson: CPU usage monitor, ala xload for Unix.


Release Notes

The program now uses a private initialization file (Juker.ini). Although the Juker will automatically clean win.ini (which was used by previous versions) of all Juker's artifacts, information left there by previous versions will not be honored by the this release.

What this means is that the first time you run the new release, it will not remember the old setup, e.g. the window location, the state of the check boxes, or the song selection. Remake those selections and things will return to normal when you run the program the next time.

Song included in this release

Boquita de Cereza, a famous song from Bolivia.


Revision History

Version 1.4

The program now uses a private initialization file (Juker.ini). Program information left in win.ini by a previous version will automatically be cleaned by the new version. Win.ini is no longer used by the Juker. Using a private initialization file is faster, reduces the clutter in win.ini, and is in accordance with Windows guidelines.

Fixed the keyboard interface, which was broken in the previous version. Also, all buttons are now accessible by the tab key. Much more intuitive this way.

Some appearance changes (frames around the windows).

Now saves and restores the stick state.

Added upgrade information dialog box, to alert the user to important release notes.

Fixed a bug in pause/resume that would cause the next song not to play if the current one has been paused then resumed.

The Juker's window no longer sizes, since it's not supposed to.

Added an informative status bar at the bottom of the window.

Added Circulate, both as a button and in the system menu.

Version 1.2

Window and icon captions are now in capitals. Easier to read when iconified.

The program now starts at the song it was playing on exit in the last session.

Clearing the queue or removing the last item now stops song play.

Added stick/unstick as a button and in the system menu.

Unified the play and pause buttons.

Full song name are now aligned as a table to make it easier to read the song name.

Cleaned up the keyboard interface (tabs and arrow keys) to make it easier to use the program with just the keyboard.

Now consumes virtually no CPU time.

Version 1.1

Second invocation of the program restores (if iconic) and raises first one. Does not start a new instance.

More object-like (check boxes, ..etc. are now implemented as objects).

Added help and activated the help button.

If Random Order is checked, the program plays a random first item when starting (if some songs are present in the queue).

Closing the program from the system menu now saves the profile.

Added Delete button (remove disk file) and Confirm Delete check box.

Added Remove and Delete to system menu.

New 3D look using ctl3d.dll.

Clicking the right mouse button on the icon now toggles pause/play.

Song names are shown differently in the queue so that the base name of the file is always visible, even if the full song path name is too long.

The program now remembers its position even if it closed while iconified.

Smaller window and fonts

Rearranged the placement of the buttons.

Now uses time as the sequence format.

Songs names are now displayed in lower case.

The sound thumbnail is now unresponsive to mouse events.

Version 1.0b

Initial release.