Programs for Unravelling Cubes
The Unravel program has been developed for solving cubes from size 2x2x2 (abbreviated as size 2) upwards. Background information on the development is provided on the Unravelling Cubes of Size 2x2x2 and Above page. An early (Windows platform only) version of Unravel accommodates standard (unmarked centres) cubes in the 2 to 16 size range. The Java version accommodates standard cubes in the size range 2 to a maximum settable limit (that can never exceed the size 99 program limit). The Java version has an option for marked centres (supercubes) for cubes in the 3 to 32 typically) size range when a numerical marking graphic is used, and can be extended up to size 99 when a corner graphic marking is used. Marked centres (particularly for cubes of size greater than 3) add complexity to the cube solving process and could be of special interest to those who need something more challenging than the standard cubes with unmarked centres. As at February 2017 the author is unaware of any other developer providing the means of implementing and solving cubes with marked centres that cover a significant cube size range.
The latest Java version has the designation "Unravel Version J-2.5: Date of last update 29-Jan-2017" (as indicated in Menu item "Help – About" when the program is run}. This latest version included some corrections to the Options dialog of the previous version.
The Unravel program can be run directly from this website either as an Applet (if your browser permits) or as a Web Start application. With the ever-increasing emphasis on security you will no doubt have to be trusting types to get over the hurdles presented to you by your Operating System, your browser, the Java runtime environment, and your firewall. Further options are available for downloading and running the Unravel program off-line (website connection not required). To be able to run any of the Java program options, you must have the Java Runtime Environment (jre) installed. Oracle Corporation (which acquired Sun Microsystems Inc in 2010) previously provided optional downloading of jre6 or jre7 but since Dec 2012 only jre7 is provided as a standard download. The Unravel program is now only backwards compatible to jre7.
The jre is available in 32-bit and 64-bit versions. A special native dll (dynamically loaded library) file for the Unravel program is available to Windows users for improved timer resolution. Both 32-bit and 64-bit versions of the dll are provided with the appropriate one automatically selected at run-time. The 32-bit version bundled with the Unravel program was compiled with an early version of C++ that required only the KERNEL32.dll dependent. However, the 64-bit version has an additional MSVCR120.dll dependent. Unless users running a 64.bit jre have access to MSVCR120.dll, the high resolution timer will fail to load. That dll needs to be located in "c:\Program Files\Java\jre7\bin\" or "c:\System32\" (not c:\SysWOW64\" which is for 32-bit !). As of Jan 2014 the earlier MSVCR100.dll was being dispatched with the jre. Users can obtain the 64-bit version of MSVCR120.dll from the web and place it in either of the above-mentioned locations. Unavailability of the high resolution timer is not a program-stopper. If the high resolution timer cannot be loaded for any reason the standard timer will be used (as would always be the case for users running the program on a non-Windows platform).
The options available for running the Unravel program are described below.
Java Applet Mode
Running the Unravel program in applet mode is a two-step process. The first step in the applet program execution is to bring up a window with an Unravel button. The second step, under the users' control, is for them to click that button if they wish to run the Unravel program in applet mode. This arrangement ensures that the Unravel program is not run in applet mode each time the web page is opened. Security issues with Java applets result in many browsers not permitting the applet to run.
In Applet mode the program runs in the "sandbox" environment with some operational limitations such as no automatic writing to or reading from the local disk (except for the jre). By copying text from/to text windows presented by the program and writing/reading it external to the program, users can overcome this limitation, although with accompanying inconvenience. However, access to the local disk is essential only when cube state needs to be saved and retrieved at a later time. For cubes of small size such access would not be required. For users running the program for the first time, the Applet mode is recommended to avoid unnecessary program download if further use is not wanted. To load the Applet click the button below. To run the program after the Applet has been loaded, click the "Unravel" button in the Applet's graphic display.
Java Web Start Mode
For users who want to avoid the limitations imposed in Java applet mode implementation and/or those who wish to download the Unravel program to their local disk, the Web Start mode provides a means of achieving this. The program will be downloaded to a cache directory on the local disk and run if security settings permit. The Licence Conditions can be accessed via a browser from the Licence.htm file always downloaded with the program. This file is not accessible via the Unravel program but similar content can always be accessed from the "About" item in the Help menu or the equivalent item in the toolbar when the program is run. To launch the Unravel program from Web Start, just click anywhere on the following image. The Java Runtime Environment needs to have been installed on the user's computer for Web Start to work.
When the program is first run in this mode the Unravel program will need to create folders for storing its data. For Windows users, the default parent directory (Program Files) that was suitable for the XP Operating System became unsuitable for later versions (a fatal exception would result). The default parent directory has been changed to overcome this problem. For Web Start operation, it is recommended that users accept the default directory path presented as the program will automatically look in that location whenever the program is re-run.
Java Archive (JAR) Direct Mode
For users who experience difficulties with downloading or running with Web Start, or who are troubled by the long start-up time it incurs, an alternative download is available for running the program direct from its executable Java Archive (JAR). Basic program zip file "UnravelJ.zip" (1594 kb) may be downloaded for this purpose. If you are a Windows user and want an installed version, save this file (without unzipping it) to any directory of your choice. If you want to run the program uninstalled you can unzip it straight away (select Open or equivalent on your browser) or unzip the saved zip file later.
Uninstalled (all users)
The UnravelJ.zip file may be unzipped anywhere. An instruction on how to run the Unravel
program uninstalled is provided in file Uninstalled Instruction.htm, which can be opened on your browser
when UnravelJ.zip is unzipped. For conformity with the program working directory used for Web Start, the
extracted program base directory UrvbaseJ with all its sub-elements, could be placed in:
The Unravel program can be run in various ways. Two ways are outlined below:
Licence details are provided by opening the licence link in Uninstalled Instruction.htm or by directly opening file Licence.htm located in folder UrvbaseJ\licence.
Installed (Windows users only)
An installed version of the above is available to Windows users by downloading and unzipping the "InstallExtnUnravelJ.zip" file (39 kb) anywhere. An instruction on how to install and run the Unravel program is provided in file Installed Instruction.htm, which can be opened on your browser when the InstallExtnUnravelJ.zip file is unzipped. The installation requires the UnravelJ.zip file to be placed in the "UnravelJ Install" folder created when InstallExtnUnravelJ.zip is unzipped. The unzipping and installation makes use of ZipInstaller v1.21 by Nir Sofer. The default installation produces "UnravelJ Direct" shortcuts on the desktop and in the Start Menu. Licence details are provided by opening the licence link in Uninstalled Instruction.htm or by directly opening file Licence.htm located in folder UrvbaseJ\licence.
Comparison of options for running program via Java
The Java version of the Unravel program may be run in three basic ways (Applet, Web Start and Jar Direct) as expanded upon above. These are compared in the following table.
External Assessments of Java Version of Unravel Program
Earlier Unravel Program (C++ Development) for Windows Users Only
An earlier version of "Unravel" that was developed using C++ is available for those who have a Windows operating system. The main software differences to the above Java systems are that 16x16x16 is the maximum size cube accommodated, there is no facility for creating macros on-line and there is no support for marked centres. The macros are pure text files that can be edited or created off-line. The main advantages of this system over the Java systems are reduced start-up time, neater graphics, and smaller program size. However, the 16x16x16 size limit for this version may be unacceptable for some users.
To install the Unravel application, download the "InstallUnravelC.exe" unzip-plus-installation file (157 kb) to a directory of your choice and run it. This program was generated using ZipInstaller v1.21 by Nir Sofer. If the default settings are used, the files will be installed at directory c:\ProgramData\KFFraser Software\Cpp Unravel\UrvbaseC\ and a shortcut to UnravelC.exe, which is a 32-bit program, will appear on the Desktop with name UnravelC.
On-line help for running the program requires WinHlp32.exe to be available. This is a standard program for Windows XP but is not included in the standard installation for later versions of Windows. It is still available for download. Go to the Microsoft support site if you don't have it (you will be notified if it is not available when you run the Unravel program). Both 32-bit and 64-bit versions of WinHlp32.exe are available and users need to select the correct one which will be stored in c:\Windows\System32\. The UnravelC.hlp help file is separate from the UnravelC.exe file.
In case any difficulty arises with the installation, the basic file set "UnravelC.zip" (120 kb) is also available for download. The "Unravel" files may be unzipped to the default "c:\ProgramData\KFFraser Software\Cpp Unravel\UrvbaseC\" directory (which you may need to create) or any other directory. The "UnravelC.exe" file can be run uninstalled and users can place a shortcut on their Desktop if they wish.
File "Unravel\info\Readme.htm" provides details on the "Unravel Freeware Licence Agreement" and some information on "Unravel Program Operation". This file should be read before the program is first run.
Unravel Program Install and Uninstall Note
Windows users have three installation options (two originating from Java source and one from a C++ source). While it may be unlikely that users would install all three, it is to be emphasized that all three can be installed, run and uninstalled without any conflict, provided the recommended default storage locations are adopted.
Uninstallation of the Unravel program can be achieved via the Windows Control Panel in every case for Windows users. In addition, the Web Start option can be uninstalled via the Cache Viewer and the other options can be uninstalled via the Start Menu.