************************************************************* * Machine code Emulator for The Atari LYNX Version 0.0.5a * * by Ben Haynor (bch132@psu.edu) 3/24/98 * * http://www.personal.psu.edu/users/b/c/bch132/lynx.html * ************************************************************* 1. Introduction 2. Updates to this version 3. Usage 4. Current Status 5. Future 6. Known Bugs and Limitations 7. History 8. Disclaimers -------------- 1. Introducion -------------- MetaLynx is a DOS-based emulator for the portable Atari Lynx system written entirely in 386 assembly language, utilizing Adam Seychell's DOS32 protected mode extender. It is freeware, but not to be distributed with any ROMs. ---------- 2. Updates ---------- 0.0.5a - * Support for packed 3-bit, 2-bit, and 1-bit background noncollideable sprites * Support for literal 4-bit, 2-bit, and 1-bit background noncollideable sprites * Timer fixes * Hardware 16-bit multiply * Numerous other slight changes that I forgot, since I haven't updated MetaLynx in such a long time - sorry! 0.0.4a - * Support for packed 4-bit sprites * Support for literal 4-bit sprites(commented out in this release) * Commercial cartridge loading * Fixed a couple of palette bugs * Full screen mode(however I cheated a little by not displaying the top and bottom lines of the Lynx's screen in order to fit it on the 320x200[mode 13h] screen) * More compatible with the best Lynx emulator so far, Handy by Keith Wilkins, by supporting his .lnx file type, as well as allowing the Lynx's boot ROM to be named lynxboot.img 0.0.3b (beta tester's only release) - * Support for literal 4-bit sprites 0.0.2a - * Fixed the palette * Support for several of the Lynx's 8 timers(the timer code may still have a couple of errors in it though) 0.0.1b - * Rewrote the entire emulator to use protected mode, which has resulted in a major speed improvement, as well as a better base to construct the rest of the emulator around. 0.0b - * Initial release, Kurt Olsen's Lode Runner is playable -------- 3. Usage -------- To run it simply type - metalynx.exe file.o The keys are defined as follows: Lynx Control ------------ Joypad - Arrow Keys Option 1 - 1 or Enter Option 2 - 2 or \ B Button - Ctrl A Button - Alt Pause - 3 MetaLynx Control Options ------------------------ Esc - Exit MetaLynx ----------------- 4. Current Status ----------------- So far MetaLynx emulates: 65SC02 CPU + its 64KB RAM Mikey registers related to display, palette, timers and cartridge loading Suzy registers related to sprites, math, and the joypad --------- 5. Future --------- Near future: Full featured GUI Sprite Engine Improvement and rewrite in C, possibly C++ Far future: Sound ----------------------------- 6. Known Bugs and Limitations ----------------------------- * When running in full screen DOS mode on exit in certain cases the keys don't respond for a few seconds or until you hit Alt-Enter * One reported instance of wierd display behavior on exit * Under Win95 when running an image from a different drive, the chronically annoying "This program may not run well unles in MS-DOS mode" message box pops up * Compatibility rate sucks sh*t through a thin straw - to be solved soon, hopefully ---------- 7. History ---------- Metalynx is my first attempt at programming the PC, so in the beginning it progressed slowly as I have had no formal training and am learning assembly language solely from books and the information that I have gathered through the internet. It has been made possible through the help of numerous people, most notably, but not exclusively: 42Bastian Schick - all around Lynx help Kurt Olsen's online Lynx reference Ian(Shootin' Gallery) - Cartridge loading help Riff and Y0shi's 6502 help, Jim Geffre - betatesting, 6502 Keith Wilkins - help with sprites, providing such a high standard for compatibility Carl Forhan - help with various hardware issues AngelsHolocaust - help with x86 and VGA programming Harry Dodgson - help with Lynx's timers VmprHntrD - finding information on the Lynx -------------- 8. Disclaimers -------------- MetaLynx Copyright 1997, 1998 Ben Haynor I accept no responsibility for the fitness of this software. Lynx is a registered trademark of Atari Corp. I am not affiliated with Atari, nor do I condone the piracy of Lynx ROMs. MetaLynx may not be sold or distributed with ROMs. Thanks, Ben Haynor bch132@psu.edu