Twitch Asylum
RegisterSearchFAQMemberlistUsergroupsLog in
Reply to topic Page 1 of 1
JSVecX
Author Message
Reply with quote
Post JSVecX 
This topic will be updated to reflect the current state of JSVecX, a JavaScript port of the VecX emulator. The emulator was ported from the original C version as developed by Valavan Manohararajah to JavaScript and the HTML5 canvas element (no flash or other plugins are required).

The port is pretty CPU intensive, so you will need a modern computer with Chrome, Firefox (4.0), Opera, or a recent version of Safari.

The emulator can be found at the following location:

http://www.twitchasylum.com/jsvecx/

You can provide feedback, report bugs, suggest enhancements, etc. by responding to this thread. However, if you don't want to sign up for the forum, you can also send an email to jsvecx@twitchasylum.com

About

The first question people ask when I describe this port is, "Why?", which is actually a pretty good question. For me, porting emulators is really more than the final product. It provides a unique ability to examine the hardware of a classic system at a level that I would never get when just playing the games. For some time I have been interested in the Vectrex system. I always wanted one growing up, but it was always well out of my price range. So, I have periodically looked to see if there were any emulators that I could port to the Wii. I think hands down, the best Vectrex emulator out there is ParaJVE but it is currently closed source. VecX, while a good emulator has its quirks, so I never really considered porting it to the Wii. However, recently I noted the various emulators being ported to JavaScript/HTML5 and VecX seemed like a perfect candidate for porting to such a platform.

It is also worth noting that there is nothing illegal about posting the commercial Vectrex roms, they were made public domain in the 90's.

Change Log

05/22/10

1.) Added support for Google Chrome Frame. This will prompt IE users to install this plugin which allows JSVecX to run within Internet Explorer.

05/19/10

1.) Thanks to an awesome tip from Parabellum, author of the great Vectrex emulator ParaJVE, it appears that the Mine Storm bug is now resolved. You can check out his detailed blog entry regarding the bug here (07/07/2006 entry).

2.) Another fix thanks to Parabellum's notes, Bedlam is now working, read his post here (14/07/2006 entry).

3.) Added Polar Rescue, now works thanks to fixes listed above.

05/18/10

1.) Updated to use "fast boot rom", reduces the Vectrex intro screen time.

2.) Several optimizations.

05/09/10

1.) Released initial version.

2.) Examining emulator bugs (see Known issues, below)

Known Issues

1.) No Sound ~ HTML5 does not currently support dynamic sound generation. I know some other emulators are leveraging Flash for this, but I really want to keep this port pure JavaScript/HTML5. I have been thinking about potentially using a sample system similar to MAME.

2.) Overlays are misaligned ~ (core bug) The vector rendering code of VecX doesn't appear to be 100% accurate. As a result, some of the overlays are a bit misaligned. In addition, text is also sometimes unreadable. I will be looking at the vector rendering code to see if this can be resolved.

3.) Arrow Keys on Opera ~ The arrow keys don't work with Opera on certain platforms (Mac, Linux, etc.). As such, I added the ability to use a different set of keys (P - L - ; - ' ). I will look into this a bit more and try to figure out why Opera handles the arrow keys differently than other browsers.

4.) Cartridge selection on Opera ~ Once a game is selected, Opera continues to send keyboard events to the cartridge pull-down. To stop this, you must click somewhere else on the page. Not sure why this is happening, will look into it more.

Game-specific Issues

1.) Mine Storm I/II ~ (fixed, 05/19/10, see change log) (core bug) There is a bug in the VecX code that causes Mine Storm to stutter at what seem to be random points of the game. When this occurs a vector will be displayed from the center toward the lower left portion of the screen. The game will alternate between the normal screen and this several times before continuing normal gameplay. I think this is a bug in the 6809 code as it happens in all VecX ports. I am currently investigating why it is occurring.

2.) Bedlam ~ (fixed, 05/19/10, see change log) (core bug) Locks up when trying to start another game (after the first game is completed).

Other JavaScript/HTML5 emulators

JSSpeccy ~ Matt West's Spectrum port of FUSE.
JSNES ~ Ben Firshman's port of vNES.
jsc64 ~ Tim de Koning's port of FC64.
JSGB ~ Pedro Ladaria's GameBoy emulator, with debugger!
8080 Emulator ~ Chris Double's 8080 emulator (Space Invaders, Lunar Rescue, Balloon Bomber)



Last edited by raz0red on Tue Apr 05, 2011 6:18 am; edited 30 times in total
View user's profile Send private message Visit poster's website
Reply with quote
Post  
Another update, fix for Mine Storm and Bedlam bugs, Polar Rescue now working, thanks to Parabellum!

View user's profile Send private message Visit poster's website
Reply with quote
Post  
It would be nice to add virtual buttons so that one can play on an iPhone.

View user's profile Send private message
Display posts from previous:
Reply to topic Page 1 of 1
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum