Console Menu V2.0 Written By Andrew Bond (c)1996-1997 Andrew Bond email : digidev@cix.compulink.co.uk HomePage - http://dspace.dial.pipex.com/town/terrace/aak55/ 31 May 1997 I've not had any time to work on menu for a few weeks now, and i'm not going to have any for a while so this is a current state release. Check the update log at the bottom of this document to find out whats new. What is it ? ------------ The original and still the best! Console Menu is a universal front end for all console and arcade emulators, it can even be used to launch normal PC games and software. You can use it to provide a front end for any one emulator, or create a tree of menus. From this one starting menu you can select ANY of your emulators or games. Example of menu tree. Emulators -- Console -- Coleco ---- index of all coleco games | GameBoy --- index of all gameboy roms | Vectrex --- launches emu, it has its own list | Atari 2600- index of all atari roms | -- Arcade --- Mame ------ Too many to list! Gauntlet -- Gauntlet I Gauntlet II Sega16 ---- Altered Beast Shinobi Time Scanner etc. 1942 PC Games --- Quake Doom Hexen Pkzip archives are also supported for console roms. Full descriptions can be added to any game title, it can even read the game description right out of some rom formats! Very fast user interface. Pressing a 'A-Z' key will take you to games starting with that letter, further presses will cycle around all games starting with said letter. Press F1 for help! I've only spent a few hours updating menu, and it has not been extensively tested yes, please let me know of any problems. I used to keep this list of supported emulators, but in reality it would be easier to mention which games do not work, of which I have not found any! Tried and tested emulators (old list, not updated) -------------------------------------------------- Menu works great with all the following emulators :- Colemdos - Coleco Vision Fmsxdos - MSX vcs - Atari 2600 a26 - Atari 2600 vectrex - Vectrex uae - Amiga vgb-dos - Gameboy massage - Master System / Game Gear genem - MegaDrive / Genesis megad - MegaDrive / Genesis pokey - Atari 800xl (use menu for feeding it cartridge images) Please mail me if you find any new emulators. Installation ------------ Copy menu.exe either into the same dir as your emulator, or anywhere described in your dos path. Console menu uses a simple ASCII text file (script) for configuration, these can be edited with any text editor. Msdos "edit" or Windows95 "notepad" are both fine. I have provided a few sample menu.cfg files, these are not called menu.cfg but an emulator name.cfg . These should be copied into the relevant emulator directory, and then renamed to menu.cfg. i.e. mame.cfg should be copied into your MAME dir, "copy mame.cfg \mame" for example. then renamed to menu.cfg. "ren mame.cfg menu.cfg" These files should give you a good start, the only thing you will probably have to change is the DIR line, this tells menu which directory your roms are stored in. I always use a "roms\" sub dir off the emulator dir. Until I have time to produce some good documentation please use these example scripts as guides. Anyone want to produce some nice, well presented docs ? configuration file ------------------ Menu is very flexible, it uses a text based configuration file called menu.cfg. This file tells menu everything, from where the files are stored to which emulator you are using. You can edit this yourself with any text editor, the msdos editor 'edit' will do just fine. Try 'edit menu.cfg' at the dos prompt. If you have used the example.cfg file as a base, all possible commands will be described, just read the comment against each and decide what you require. Placing a # at the start of a line, comments that line out i.e. menu will ignore it. Firstly I know colemdos now supports independent rom cfg files, i.e. if you load a game dkong.rom it will look for a file dkong.cfg containing the parameters for that rom. However I don't like that method of configuration for one big reason, it requires lots of tiny files. Most modern PC's have a cluster size of 16 or 32k in size. Taking a 32k cluster size for example, a 1 byte file actually takes 32k of disk space, not 1 byte as reported by dir. If you have 100 .cfg files, each of say 20 bytes, they will occupy a whopping 3.2mb, yes mega byte of disk space! It is for this reason that I have extended the config file for menu, now every setting you desire for all your games can be stored in one file, occupying at most, 32k of you disk, instead of 3.2mb Commands :- Please see example menu.cfg for an example of all commands. This is called example.cfg! ZIP Support ----------- You can now play games directly from a .zip file, greatly reducing required disk space and file count. This option is only available with console emulators NOT arcade emulators as of yet. To use this option you must specify a zip file, with the ZIP command, and a temporary directory with TMP. PKsoftware's PKUNZIP must also be accessible in you dos path. Make sure the zip file you use only contains MSDOS filenames, some ZIP files you find may contain long files from other OS's. To be sure, I would suggest creating any zip file yourself, with pkzip. BOY ROM names can't be read from ZIP files, as this would be just too slow. On the subject of zip files, I would recommend a program called ZipFolders for windows 95/NT. www.mijenix.com How much ? ---------- Its freeware, however if you like it please mail me a list of your game files! Seriously, please drop me an email so I can get some idea of how many people are using menu. Copyright --------- Menu is NOT Public Domain, it is a copyrighted software product and may not be disassembled, reverse engineered or otherwise modified in any way. Thanks ------ Nicola Salmoria, your MAME is brilliant, arcade support was added for MAME Neil Bradley for Atari Vector emulator, any news on star wars? (please) Michael Cuddy for Gyruss, I love Gyruss! Marcel de Kogel & Marat Fayzullin for a great emulator! Dave W for a great Emulation Page! The author of Nesticle, a great little emulator written off by a moron. And all other emulator authors. Updates ------- You will always find the latest version at the following site(s) :- http://dspace.dial.pipex.com/town/terrace/aak55/ (UK site) http://www.gamepen.com/gamewire/classic/classic.html (USA site) Technical --------- There is no fixed limit on the number of games that menu can display. However as the number of games rises, so does the memory consumption. There will be a point where menu will be using so much memory that there is not enough left for the emulator to run. This may be resolved in a later release by paging out menu when invoking the emulator. Note : If and when you have enough roms for this to be a problem, you can now split them up into sub-directories which will overcome this. Menu has been deliberately written as a 16bit program, using only base memory. This means that it's very small (unlike some cheap immitations!), and therefore should not upset any other programs memory usage. Remember kids, what ever happens, its a feature not a bug! digidev@cix.compulink.co.uk New in 2.1 ---------- o Big improvement in the way sub directories are handled. o Key to show command line used to execute changed to CTRL-R (run details) o Ability to edit menu.cfg using your favorite text editor directly from menu added (CTRL-E). o Added new script command EDIT, this is used to select your favorite text editor. o Added CTRL-H to show all help files relevant to currently selected program. o Added new script command VIEW, this is used to select your choice of file viewer. I would suggest using list, although MS-DOS edit is default o Reduced internal memory usage still further. o Fixed silly bug that caused window drop shadows to be drawn out of place. o Fixed problem caused by top level menu using 25 line mode, but a sub menu usin 50 lines. Its probably better to use the 50l command only in your top level menu anyway though. o Update, handy if your 'Aquiring' new roms in the background. Press F5 to rescan (update) o Made addition of extra parameters to selected items global. Use the ROM cmd to add parameters to selected MAME games for example. o Fixed bugette relating to extra parameters, thanks go to Petey Leinonen for spotting it. o Fixed silly bug related to CTRL-H option New in 2.0 ---------- o Support for arcade emulators. o Support for sub menus. o Used a slightly newer version of my simple window library, adds drop shadows! New in 1.9b ----------- o More of a little twiddle really, 15 mins spent, now you can delete files from a zip file, and the display does not reset when you delete or add a description anymore. Just got a PC version of our latest Playstation game to code now, after that, I'll revamp menu, honest guv! Yes you've guessed right, programming Playstation games is what occupies all of my time, Menu v2.0 will be cool, just wait until i've got the time. New in 1.9a ----------- o Files stored in a .zip archive are now filtered through the EXT commands. o Menu can now read Megadrive / Genesis game descriptions directly from roms. o Max description length has been increased from 32 to 48 characters, please let me know if this causes anyone any problems. New in 1.9 ----------- o Upto four file extensions may be specified with the ext command, as some emulators handle more than one file type. Emulator in case is massage, the master system / game gear emulator. You can now have two EXT lines so menu will list both .sms and .gg roms. ** YOU NOW MUST SPECIFY AT LEAST ONE EXT COMMAND ** o List generator, CTRL-L. Makes a text list of all your games. New in 1.8 ----------- o New feature CTRL-E shows command used to execute rom. New in 1.7a ----------- o Stupid memory allocation bug fixed. New in 1.7 ---------- o Vastly improved menu control, hit an a-z key and you will automatically be placed at the first entry starting with that letter, hit the same letter again and it will cycle though all entries starting with that letter. o Description editor now built in, no more fighting with a text editor! (CRTL-D) o Disabled text cursor when in menu. o Support for 50 line mode. o F1 now displays help screen. New in 1.6 ---------- o Files can be deleted from within menu, 'delete' key. o New command PAF, which places any parameters after the filename o for use with vcs.exe