ParaJVE

Parabellum's Java Vectrex Emulator, version 0.4.0


DESCRIPTION
    ParaJVE is an emulator for the GCE Vectrex, a game console created in 1982 by General Consumer Electric. This program is written in Java 1.5, and most parts are working nicely, so the emulation is complete enough for you to enjoy most of the original games set, as well as some extra homebrew roms!

WHAT'S INCLUDED?
    The emulator packaging is self-sufficient : it contains all the files needed to run the whole set of original vectrex games (this includes roms and color overlays), and some additional homebrew games. Also included are the native libraries needed to use the JOGL api (JOGL is an OpenGL binding for java). Unlike other java archives, these libraries are specific to the execution platform ; that's why you'll have to choose carefully when picking the packaging for download.

REQUIREMENTS
  • An installed Java Runtime Environment, with a version greater or equal than 1.5 (it has been successfully tested with both 1.5 and 1.6 runtimes).

  • A Windows Operating System (tested on Windows XP only), or a Linux Operating System (tested on Ubuntu only), or a Mac OS X 10.4 or greater (untested, please contact me if you can help on that matter)

  • Although not strictly necessary, a processor running at 1MHz or more is strongly advised

DOWNLOADING & INSTALLATION
    Select and download the ZIP archive corresponding to your target system, and decompress it on your hard drive.

    To run the emulator, depending on the downloaded packaging, just click "ParaJVE.bat" (for windows), or run "ParaJVE" (for linux and Mac OS X).

SO HOW MUCH DOES THIS THING COST?
    ParaJVE is freeware for personal use.

    The only thing I'm asking for are comments about this program (bug reports, ideas, constructive criticism, ...). Even if you don't have anything special to say, just send me an email or post a comment over at ParaJVE's development blog to tell me whether you like the emulator or not! ;)

    Please note that it is not public domain software and may not be sold or used for commercial purposes without the express written permission of the author.

KNOWN ISSUES
    The following bugs have been identified :

    • The sound emulation is apparently broken on some Linux platforms. If you run ParaJVE on Linux, please contact me to report whether it's working or not for you. Thanks!

    • The timing method using nanoseconds resolution may not work well on the systems run by a multi-core CPU. This is a known java bug and there's no way to resolve it AFAIK. If you have this bug, just open the "Framerate" dialog through the menu, and switch to "Milliseconds" granularity.

    • The frames limiter code does not seem to work as expected. Often, the FPS counter displays 60FPS (for instance), whereas the game is clearly running much faster. This is not a top-priority bug as long as the emulator is not complete.

    • Also linked to the previous timing problem, the sound emulation is running too fast... I'll have to investigate later.

    • Every text displayed in the emulator seem to be shifted a bit to the right. It's apparently due to the fact that ParaJVE does not implement any RAMP delay code yet. Many thanks to Chris Salomon for the tip!

    • Clean Sweep cartridge : The graphics rendering of this game is a complete mess. Again, it's likely to be caused by the problem above. Will work on this later...

    Should you find any additional bugs, please let me know, and I will add them to this (ever growing) list.

VERSION HISTORY
    11/01/2007 - Version 0.4.0
    • Updated the embedded JOGL library, to make ParaJVE work with the latest 1.5 java runtime (update 10).
    • Included the game Star Sling 4K (Turbo Edition), by Vectorzoa.com
    • Changed the way the game ports are handled. Now you can plug/unplug different peripherals into both ports through a special menu.
    • Added peripheral emulation : PS/2 Keyboard Adapter.
    • Implemented direct DAC write to Sound Resistive Network. Now you can hear the CPU generated sounds (in "Spike", for instance).
    • Implemented VIA6522 SR Mode 101 (Shift Out Under T2 control).
    • Fixed a regression introduced in 0.3.2 where the command line argument -GAME=xxx was not handled correctly.

    08/11/2006 - Version 0.3.2
    • Implemented the analog mode built in Vectrex joysticks,
    • Parasite dots removal : tweaked the heuristics to remove even more dots,
    • Added a feature to automatically build any ROM from its assembler sources (using AS09 by Frank A. Kingswood), before loading them. When the sources or binary are modified, the ROM can be rebuilt/reloaded without having to restart ParaJVE. Feature not available under Linux yet.

    24/10/2006 - Version 0.3.1
    • Included more homebrew game roms,
    • Added a "display rotation" settings in the gfx menu (0°/90°/180°/270°),
    • Implemented fullscreen support, selectable at startup (it looks like it won't be available under Linux, unless you use a 1.6 JRE),
    • Fixed the annoying High-Frequency sound bug that could be heard in some games (Scramble, Pole Position and other homebrews).

    18/10/2006 - Version 0.3.0
    • Added sound emulation,
    • Added HTML documentation for included games,
    • Embedded some extra homebrew game roms.
    • Changed the game selector to display more information about the selected ROM,
    • Coded debugging tools (execution backtracing, sound monitoring, rom reloading, ...)
    • Also fixed several bugs (invalid memory accesses, keyboard focus, ...)

    10/09/2006 - Version 0.2.0
    • Added overlays, rewritten GUI, added persistent configuration. Now embeds the game roms for easier installation.

    18/07/2006 - Version 0.1.0
    • INITIAL PREVIEW RELEASE of ParaJVE

LICENSE & DISCLAIMER
    ParaJVE is Copyright ©2006,2007 by Franck Chevassu.

    Permission to use and copy this software for any non-commercial personal purpose, without fee, and without a written agreement is hereby granted, provided that this document appear in all copies, unmodified.

    You are allowed to provide a direct link (or host a mirror) of any of this software's packages, as long as the download access remains free, AND ONLY IF you also exhibit a clear reference to ParaJVE's Development Blog URL (http://vectrex-emu.blogspot.com) somewhere on your pages.

    Any commercial use or distribution of this software (on any media such as CD or DVD, or in software bundles, for instance) is explicitly forbidden without first getting the express written permission of the author (contact me).

    IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

    THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE AUTHOR HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.

USEFUL LINKS