Atari Gamer
  1. Home >
  2. Articles >
  3. Introducing Lynx SD Menu Loader version 2

The RetroHQ Lynx SD cartridge for the Atari Lynx lets you play homebrew games and backed up ROMs on your Lynx simply by copying them to an SD card, plugging it into the Lynx SD cartridge and then plugging that into your Lynx. It's a great idea and follows on from many similar EverDrive type units on other retro consoles. The only gripe with the Lynx SD has been its very functional, but simplistic menu loader.

Well that's no more. Atari Gamer has created a whole new menu loader system with many exciting features that will blow the original loader out of the water. This new loader will be the default shipped with all future preorders too! So lets check it out...



Improved Booting Experience

The "INSERT GAME" screen that appears on startup usually means a bad cartridge or connection. In the Lynx SD case it indicates the system is still booting. To remove any confusion, the time that this shows up has been significantly reduced. This is done by making use of a first-stage and second-stage loader. Essentially, when the Lynx SD boots, it loads a very small ROM (~2kb in size) that clears the screen and displays a "PLEASE WAIT" screen, it then proceeds to load the second stage loader.

The second stage loader is the real Lynx SD Loader Menu 2 as a ROM loaded from the SD card. When it is starting up, it will display a title screen and then the help screen.

The help screen can be dismissed by pressing either the A or B button. It can also be permanently disabled from the Preferences screen (press Option 1) .

While booting up, if the B button is held down, the previously loaded ROM will be launched instead of loading the ROM list or displaying the help screen. This can also be controlled via Preferences to always launch the last ROM unless the B button is held down during boot (more on this below).

Updated Navigation

Scrolling and moving around the ROM list is much faster. The up/down d-pad buttons will move to the previous/next ROM in the list. The left/right d-pad buttons will page through to the receding/advancing screen-full of ROMs. The scrollbar on the right hand side gives a handy indicator how far down the list you are.

The B button is used to navigate backwards i.e. if you want to go back up a directory or if you want to return from Preferences to the ROM list. If in doubt, just press the B button to go back. 🤓

Beside each entry in the ROM list is an indicator showing whether it's a directory or a ROM. Pressing the A button will either navigate to the directory or launch the ROM, respectively.



Game Previews

Game preview screenshot files are bundled now so you don't have to go searching for them. By default these are located in the "_PREVIEW" directory. These use the LSD file format specific to the Lynx. A preview file must have the same name as the ROM file, except with the LSD extension.

To see a preview, select a ROM and press the Pause button. If a preview is not found, an error message will be displayed, otherwise the preview screenshot will be shown.



Long ROM Names

You are no longer restricted to having the DOS 8.3 file names as the ROM name. By creating a file called romlist.txt in the same directory as the ROMs you can specify long names (up to 45 characters) for a ROM. This name is scrolled left/right when selected in the ROM list.

The ROM list file has the following format: [dos83rom.lnx]Long ROM name
One ROM file entry is expected per line. Note that the actual DOS names must be used so if your ROM name is longer than 8 characters with a 3 character extension, it will end up looking something like "baseba~1.lnx" to the Lynx.

Here's a sample romlist.txt file...

[apb.lnx]All Points Bulletin
[awegolf.lnx]Awesome Golf
[baseba~1.lnx]Baseball Heroes
[basketb.lnx]Basketbrawl
[batman.lnx]Batman Returns
[battlew.lnx]Battlewheels
[battlez.lnx]Battlezone 2000
[billted.lnx]Bill and Ted's Excellent Adventure

Any ROMs listed in the ROM list file that do not appear on the SD card will not be shown. Long ROM names can be switched off in the Preferences to speed up directory loading.



Preferences

There is a selection of Preferences that can be set that change how the Menu Loader behaves. These are:
  • Boot Help On - When set to yes will display the help screen every time after booting up. Set to no to skip the help screen on boot.
  • Auto Run Rom - When set to yes will automatically run the last launched ROM when the Lynx is turned on with the Lynx SD cartridge inserted. To skip launching last run ROM on startup, hold down the B button during boot.
  • Fast Scroll - When set to yes will enable fast scrolling through the ROM list, setting to no will slow down scrolling to bring it back in-line with the speed of the original Menu Loader.
  • Long Names - When set to yes will look for the romlist.txt file in the directory where ROMs reside and if found will use long ROM names from that file instead of file names when displaying a ROM list. When set to no, long ROM names are disabled.
  • Use _PREVIEW - When set to yes will look for preview LSD files in the "_PREVIEW" directory, when set to no will look for LSD files in the same directory as the ROMs.



Colour Themes

The default colour theme can be changed by replacing the menu/default.pal file on the SD card with one of the supplied PAL files. Simply rename one of the other PAL files to default.pal and the colour theme will be changed. There is a selection of supplied themes: alien, grey, inverse.

The PAL file is a 32 byte binary file that sets the Lynx palette using BGR colour values. See Another approach for setting palette for more information. You'll need a Hex Editor to create (or modify) these files.



Lynx EEPROM on SD Card Support

The LNX file header as described here provides for an EEPROM setting that indicates that data will be saved to the Lynx SD card. This flag (bit 6 in the 61st byte of the header) is respected by this version of the Menu Loader.



Download and Installation

Lynx SD Menu Loader 2 can be downloaded from here - aglnxmenu2.zip. The source code is available here.

To install, unzip the aglnxmenu2.zip file in the top/root level directory of the SD card. Check that both the menu.bin and menu2stg.bin files are present.



Credits and Special Mention

Lynx SD Menu Loader 2 was made possible with code from the following people...

A big thanks goes out to the following people for helping test this loader and providing additional code suggestions and fixes:



License

Copyright 2019 Igor Kromin - Atari Gamer

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Hope you found this useful...
...so please read on! All information on Atari Gamer is provided free of charge and we encourage you to share it as you wish. There is a small favour we ask in return however - engage in comments below, provide feedback, and if you see mistakes get in contact and let us know.

If you want to go a little further to show your appreciation, please check out how you can support Atari Gamer.
You can find Atari Gamer on...
Be sure to follow for the latest Atari Lynx news, updates, stories and photos!
[ Don't show again ][ Dismiss ]
Loading...