Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revisionLast revisionBoth sides next revision | ||
blog:x68_launcher_1 [2020/08/22 12:31] – [Design Principles] john | blog:x68_launcher_1 [2021/02/24 14:50] – [X68kLauncher] john | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== X68000 Game Launcher - Article 1: Design | + | ====== |
So, you've got a fancy new (old) [[https:// | So, you've got a fancy new (old) [[https:// | ||
Line 29: | Line 29: | ||
* The big one. This is what will set the application apart from any of the existing launchers, file browsers or similar tools. Let's have something that looks nice and gives us extra information on a game or filter down from possibly hundreds of installed games to those we're interested in; just Strategy games, for example. | * The big one. This is what will set the application apart from any of the existing launchers, file browsers or similar tools. Let's have something that looks nice and gives us extra information on a game or filter down from possibly hundreds of installed games to those we're interested in; just Strategy games, for example. | ||
- | * Launch any selected game | + | * **Launch any selected game** |
- | * // | + | * The launcher is only a browser if it can't launch a game, so it absolutely must be able to do this! |
- | * // | + | |
- | * // | + | There are also some other goals that whilst not essential, would certainly improve the experience: |
+ | |||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ===== Logical Operation ===== | ||
+ | |||
+ | * Run application | ||
+ | * Scan through list of known game locations (e.g. A:\Games, C: | ||
+ | * Generate in-memory list of all game sub-folders (e.g. A: | ||
+ | * Note if their sub-folder contains any additional metadata | ||
+ | * Note if their sub-folder contains a known start.bat launch file | ||
+ | * Sort list of all games by sub-folder or title from their metadata so we have a 0-9, A-Z, a-z list | ||
+ | * Build user interface from graphics primitives and on-disk bitmap files | ||
+ | * Populate a scrollable selection list | ||
+ | |||
+ | ====== X68kLauncher ====== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | My // | ||
+ | |||
+ | //What is it, and what does it do?// | ||
+ | |||
+ | // | ||
+ | |||
+ | It runs on the Sharp X68000 hardware itself, either emulated or real physical system; it is __not__ a Window/ | ||
+ | |||
+ | * It creates a browseable list of all the game directories on your drive(s) | ||
+ | * It can load and display additional metadata per game (i.e developer, genre, release date etc) | ||
+ | * It can load and display screenshots or artwork per game (i.e box art, screenshots, | ||
+ | * It can export an audit file of all the found games | ||
+ | * It can launch any game for which a start file is either found (e.g. start.bat), or which has been defined in metadata (e.g. run.com, go.exe, etc) | ||
+ | |||
+ | A demo of a (early) version of the application can be found on my Youtube channel: | ||
+ | |||
+ | {{youtube> | ||
+ | |||
+ | You can find versions of the X68kLauncher application ready to download on this page, as well as packaged up versions of games and their metadata ready to go. | ||
+ | |||
+ | As a reminder, you'll need the following: | ||
+ | |||
+ | * A Sharp X68000 (or emulator, such as **xm6g**) | ||
+ | * A hard drive | ||
+ | * Minimum of 2MB of memory | ||
+ | |||
+ | All the files necessary to run the application are included in the application zip file. | ||
+ | |||
+ | ===== Application Binaries ===== | ||
+ | |||
+ | Pre-compiled versions of the X68kLauncher application are listed here. | ||
+ | |||
+ | ^ Date ^ Notes ^ Download Links ^ | ||
+ | | | | | | ||
+ | |||
+ | ===== Application Source Code ===== | ||
+ | |||
+ | Source code for the X68kLauncher application can always be found at Github: | ||
+ | |||
+ | * https:// | ||
+ | |||
+ | ===== Game Metadata ===== | ||
+ | |||
+ | These packages include a pre-written __launch.dat__ metadata file, screenshots, | ||
+ | |||
+ | The packages should unzip directly to a directory such as __A: | ||
+ | |||
+ | ^ Info ^ Name ^ Developer | ||
+ | | | |