Short: WHDLoad game launcher for AROS Author: Yannick Erb Uploader: yannick erb free fr (Yannick Erb) Type: game/misc Version: 0.2 Architecture: i386-aros WHD MENU is a front end for WHDLoad game launching under AROS. It creates and manages a database for all installed WHDLoad games on your system. Once the database is created it allows to browse the games giving the information provided in the attached Readme file and ultimately (still to be finalised) provides a screenshoot of the game. The games can then be launched directly from the interface. WHD MENU launches e-uae (or j-uae) automatically with a minimal startup-sequence. Once the game is exited, e-uae is closed automatically and the user interface is accessible again to launch a new game! Pre-requisite: A working AROS installation. Better use the latest ICAROS distribution. => http://live.icarosdesktop.org/ You'll need a working E-UAE installation with System: and Work: emulated hard disks. I'm using AmigaSYS for e-uae wich is working pretty well on my system. => http://amigasys.extra.hu/euae.html Also you'll need a working WHDLoad installation inside the emulation. => Already provided with AmigaSys In order to quit automatically E-UAE the UAEExit tool should be accessible insoe the emulation => this is ok with AmigaSYS also Of course you'll need WHDLoad games installed. The easiest way is to download the pre-installed packs from KGWHD => http://kg.whdownload.com/kgwhd/ The application is using processicon to gather the TOOLTYPES information. This application is provided with Icaros distribution and can be downloaded here: The executable shall be in Work:Extras/Misc/aminet/C/ => http://archives.aros-exec.org/index.php?function=showfile&file=utility/workbench/processicon.i386-aros.zip Installation: 1. Extract the drawer and it's content to selected location (preferably Extras:Amibridge) 2. Modify your E-UAE startup sequence adding the following lines after "setpatch" ; Check for WHD_MENU startup and launch if present IF EXISTS System:s/WHD_MENU-startup execute System:s/WHD_MENU-startup UAEexit EndIF 3. For safety reason (in order to have a clean system in case E-UAE crashes during WHD_MENU usage Add the following lines to your AROS User-Startup: ; Clean up WHD_MENU mess after a crash IF EXISTS EXTRAS:Amibridge/System/S/WHD_MENU-startup delete EXTRAS:Amibridge/System/S/WHD_MENU-startup EndIF Usage: A first launch, you should provide some information to configure WHD_MENU, this can be modified later using the "CONFIGURATION" button: 1. The name and location of the database 2. The root path for the installed games (WHD_MENU will look for games in this folder and all its sub-folders) 3. The way of handling screenshots : Using icon image : if icon image can be read using datatypes, the icon will be displayed in WHD_MENU Using screenshots pictures : two images can be put in each game folder (TitleScreen.png and InGameScreen.png), the interface will cycle between the 2 images A screenshot pack can be downloaded separately. 4. The name and location of the E_UAE executable, usually "EXTRAS:Amibridge/emulator/e-uae" 5. The name and location of the E-UAE config file, best is to use the provided one (WHD_MENU-uaerc.config in WHD_MENU folder) This config file can be modified in order to suit your needs. 6. The path to the E-UAE System: folder, usually "Extras:Amibridge/System) 7. The path to the E-UAE Work: folder, usually "Extras:Amibridge/Work) 8. The WHD_MENU-startup to be used, best is to use provided one (WHD_MENU-startup in WHD_MENU folder) You can also modify the WHD_MENU-startup file to suit your needs) Once this is done, click the "Generate" button. The database will be generated based on your inputs. This can take a while depending on how many games you have installed. Also, it can happen that the application crashes for two main reasons: 1. The stack isn't big enough, increase it, 2. The application is using processicon to gather information in the .info files with some icons, the application crashes (e.g. 4DSportsDriving&MasterTracks from KGWHD packs) Best is to delete or replace the .info file and to start the process again. You're now finally ready to save the configuration and launch your favorite games! The database can be regenerated at any time, if you've installed new games or removed some. Known issues / possible improvements: processicon: If the game .info file is corrupted, processicon is crashing and the database generation is blocked. The only way I've found to go around is to delete or replace the faulty .info file. Remains in V0.2 Screenshot display: Today the application is trying to display the icon picture (from .info file) for each game. Mainly the provided icons are OS3.5 icons or newicons. AROS doesn't have a datatype yet for those files and no image will be displayed. They are 3 ways this can be solved: 1. write a datatype for newicons and OS3.5 icons 2. convert all icons to png icons 3. use a separate screenshot (hence the screenshot folder path in the configuration) Solution 1&2 do not require any modification to WHD_MENU it will work directly. Solution 3 will require some slight modification in WHD_MENU. Solution 3 has been implemented in V0.2 Stack usage: Especially during database generation, the application requires quite a huge stack. Modification of the stack for amilua applications launched from an icon is not done he proper way due to limitations of the icon.library (no stack field for project icons). If the application crashes while generating the database, start again from CLI with a increased stack. Remains in V0.2 ZULU/ZUNE bugs: You will notice that the main window flashes when you change the selected game. This is done in order to speed up the README field update process. The first intention was to use a floattext field, however when the text is bigger than the field, no text is diplayed at all (ZULU or ZUNE bug?) Therefore I'm using a simple List/Listview object to display the text. This is working good, however for updates of the fields the MUIA_List_Quiet option is only working when adding entries, not when removing entries. My final implementation is therefore closing the window while updating the fields hence the flashing! Many improvements have been made in this area for V0.2. The bug in floattext field is still here (or at least was last time I've tried) I'm now using mui.MUIM_List_Clear wich prevent flashing and is much faster than erasing the entries one by one. Stability / checks: The application is missing many checks is several areas. Therefore some strange things might happen if you do not follow the intended flow of actions. This will be solved with time... Some checks have been added in V0.2 but the application can still crash from time to time without obvious reasons. In order to protect your database you should create a backup copy of it that you can restore in case... Have fun! Yannick Uploaded using: archives.aros-exec.org