Amiga Foreverby Cloanto
 
HomeProducts
 
 
TITLE

Use of "Amiga Files" in Amiga Forever for Windows

 

TOPIC

This article describes the rationale behind the use of the "Amiga Files" folder, introduced in the Windows version of Amiga Forever 2005.

 

DISCUSSION

1997: Amiga Forever 1.0

When Amiga Forever 1.0 was released in 1997, the different available versions of Windows did generally not limit write access or execution privileges to files based on the directory in which a file was stored. This was consistent with the way the Amiga operating system itself handled file access privileges, and made it natural to install emulation executables for Windows, plus Windows and Amiga data files, and Amiga executable files, in the same "Amiga Forever" directory inside the "Program Files" system folder.

2005: Preparing for Windows Vista and Beyond

In 2005 not only has it become a more common and accepted safety practice on a variety of operating systems (e.g. GNU/Linux, macOS) not to perform "user mode" operations with administrative privileges, but the increasing diffusion of malicious applications ("virus" software) on Windows has made this change an imperative. What has long been a recommended but rarely used possibility on Windows NT 4.0, Windows 2000, Windows XP and Windows Server 2003, becomes a more strict setting in Windows Vista. Although we understand that this may require some technical skills on versions of Windows prior to Windows Vista, we do agree and recommend that everyday operations should not be performed under an account with administrative privileges, which allows malicious software to install and execute itself, or to modify system files.

In practice, these recommendations and changes mean that under a strict security scenario, either desired by the user or set by the system or by local network policies, the operating system (and/or antivirus applications) may prevent non-administrative users from having write access to the "Program Files" directory, and it may similarly restrict Windows binary execution privileges in directories such as "My Documents" and "Shared Documents" ("Documents", in Windows Vista). This brings with it the requirement of a separation of the emulation-related data files, which need to be written even by non-administrative users (e.g. to save an Amiga file, or simply to use the Amiga operating system itself).

Moving the Amiga and the emulation-related data files into the "Amiga Files" folder and leaving emulation-related Windows executable files inside "Program Files" enforces a clear and functional separation between data files, which require write access, and files that require Windows installation and execution privileges. It also satisfies the guidelines set for Microsoft's Designed for Windows Logo Program in 2005, while ensuring compatibility with Windows Vista, set for release in 2006.

The following articles explains how to locate the Amiga Forever installation files:

Technical Implementation: Amiga Forever

The Amiga Forever installer takes care of creating an "Amiga Files" physical directory, which is accessible by all users in the "Public\Documents" system folder ("Shared Documents" on older versions of Windows). For convenience, also because the icon of this public folder may not be present on the system (it can be disabled in different ways), a shortcut link to "Amiga Files" is also placed in the "Documents" system folder ("My Documents", in older versions of Windows).

Additionally, the installer:

  • Adds an Amiga-specific icon for the folder
  • Creates localized versions of the folder name for certain languages (for display purposes only, with no change to the physical directory name)
  • Sets the %AMIGAFOREVERDATA% environment variable to point to the folder (typically a path like "C:\Users\Public\Documents\Amiga Files", or "C:\Documents and Settings\All Users\Documents\Amiga Files" on older versions of Windows)

The "Amiga Files" folder contains directories such as "Shared", "Demos", "Games", "WinFellow" and "WinUAE". These latter emulation software directories contain only data (configuration, log, etc.) files, not the Windows executable files of the emulation software.

The above applies after hard disk installation, and on the CD or DVD directory structure on Amiga Forever 2008 and higher. On older versions of Amiga Forever CDs and DVDs both executable and data files are contained in the same "Emulation" directory on the medium, which in turn contains directories such as "Shared", "Demos", "Games", "WinFellow" and "WinUAE").

To open the Amiga Files folder from within Amiga Forever select Open/Amiga Files from the File menu.

Technical Implementation: WinFellow and WinUAE

Before its introduction, the use of "Amiga Files" was discussed and agreed with the developers of the WinFellow and WinUAE emulation applications for Windows.

WinUAE (version 1.0 and higher) and WinFellow (version 0.5.1 and higher) check for the existence of "Amiga Files", which, as installed by Amiga Forever (version 2005 and higher), already contains "WinFellow" and "WinUAE" subdirectories. Future versions of WinFellow and WinUAE may create these directories directly themselves.

If the respective directories exist or can be created, hard-disk installed versions of WinFellow and WinUAE do the following:

  • All log, configuration and other files that are normally written by the software are written to the respective ("WinFellow" or "WinUAE") directory in "Amiga Files", rather than to the software installation directory;
  • All relative paths (e.g. "floppy0=..\Shared\adf\amiga-os-130-workbench.adf") in the configuration files and in command line arguments are relative to the "WinFellow" or "WinUAE" software directory in "Amiga Files", rather than the software installation directory; this means that, since all emulation-specific and Amiga-general data files are moved in parallel, no change is required for relative paths used in previous versions of the software.

If launched from CD or DVD, the emulation software should ignore the Amiga Files directory on the hard disk, and maintain relative paths as references to the directory containing the emulation executables ("old" behavior).

Multi-User Access

"Amiga Files" is a public (shared) resource, meaning that:

  • All users can read all files (as in the Amiga operating system)
  • Only administrators and the user who installed or modified a file can modify that file

If, in a multi-user environment, it becomes desirable to grant several non-administrator users write access to all Amiga files, then the security of the "Amiga Files" directory should be changed accordingly.

Programmatic Access

The Windows CSIDL for the folder containing the "Amiga Files" directory is CSIDL_COMMON_DOCUMENTS. It is valid for Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008, Windows 8, Windows Server 2012, Windows 10 and newer systems, and for Microsoft Windows 95 and Windows 98 systems with Shfolder.dll installed.

Programmatic access to the folder is possible via SHGetFolderPath() (if Shfolder.dll is installed), or via SHGetSpecialFolderLocation(), which is available in Windows 95 and in newer versions of Windows.

It is in theory possible, although strongly discouraged, for a user to relocate the "Amiga Files" directory. In that case, the %AMIGAFOREVERDATA% environment variable would reflect this.

Additional Information

Related Links

 

Article Information
Article ID:15-112
Platform:All
Products:Amiga Forever
Additional Keywords:None
Last Update:2013-04-15
Your feedback is always appreciated. It is safe to link to this page.