Vectrex Emulation?


i still have my vectrex and 17 games , scramble , starship , armour attack minestorm
the best , wizard of wor dosent work no more :(....higest level on minefield is 76 ....any handheld or other gameing machine i ever bought i kept , even the mags, i need the emu - everytime i switch the vex on im afraid of blowing the tube....lol
 
Progress on Vec2X has been kinda slow lately... mainly due to Real Life™ interfering. I did manage to get a couple of features in though. First of all there's a whole plethora of screen size options. You can play it normally with the screen horizontally orientated, in either normal aspect ratio or stretched (fullscreen). But with the Vectrex screen being all vertical, there's now also the option to play with the GP2X rotated by 90 degrees, as seen in these screenshots:

Vectrex intro screen
MineStorm
(Again, crappy digicam)

With a vertical screen orientation also comes the desire to use different input configurations. That's also more or less implemented now, with two preset configs and one custom (or at least will be customizable in the future). Preset 1 is for normal play, preset 2 is for vertical screen orientation.

Also added now is color overlay support. Just grab an overlay image from one of many Vectrex sites and use it as a background for your game. Overlays are properly bilinearly downsampled to the desired resolution and aspect ratio, so they look extra nice. A few examples here (shots are taken from the Windows version):

Pole Position (horizontal, normal)
MineStorm (horizontal, fullscreen)
Web Wars (vertical, normal)

Still to do are an emulation speed-up, menus for configuration and selection of cartridges and overlays (all settings are done through command line parameters now), sound support (if possible) and save states (also if possible). Spoyser is currently looking at the emulation code to see if it can reasonably be made faster, so hopefully he can accomplish what I can't.
 
Also added now is color overlay support. Just grab an overlay image from one of many Vectrex sites and use it as a background for your game.

Now see... this is making me drool. It looks great and the overlays are the perfect touch! :) How's the stability and speed in the early stages?

Just so I can start looking for good images for them... what format should the overlays be in? PNG? BMP? etc...

Thanks a ton for your hard work Devil!
 
Last edited by a moderator:
Progress on Vec2X has been kinda slow lately... mainly due to Real Life™ interfering. I did manage to get a couple of features in though. First of all there's a whole plethora of screen size options. You can play it normally with the screen horizontally orientated, in either normal aspect ratio or stretched (fullscreen). But with the Vectrex screen being all vertical, there's now also the option to play with the GP2X rotated by 90 degrees, as seen in these screenshots:

You know that you can use the volume buttons while in vertical mode. See how MAME does it, it works well.

Hopefully you can get sound working, that is pretty important as well.

Good luck.
 
Last edited by a moderator:
Now see... this is making me drool. It looks great and the overlays are the perfect touch! :) How's the stability and speed in the early stages?

Just so I can start looking for good images for them... what format should the overlays be in? PNG? BMP? etc...

Thanks a ton for your hard work Devil!
Stability seems to be okay, there are probably still a couple of bugs left, but most games run fine. Speed is, well, that's still one of the biggest hurdles. Right now one emulation cycle takes about 70 ms, which should be at most 20 ms for real Vectrex speed. Overclocking the CPU (a feature that has also already been added to Vec2X) to 250 mhz brings this down to about 50 ms. Rendering takes about 5 ms in total (could probably be reduced if necessary, especially with hardware SDL), so it's mostly the emulation code that takes time. It's playable, but obviously slow.

Overlays can be in any format the SDL_image library can handle, which is pretty much any image format you can think of. www.vectrex.nl has a whole load of overlay images, mostly in GIF format. Those are the ones I've used so far.

You know that you can use the volume buttons while in vertical mode. See how MAME does it, it works well.

Hopefully you can get sound working, that is pretty important as well.

Good luck.
Yes, that has already been implemented, see my remark about input configurations. Perhaps I should've been clearer, but preset 2 (for vertical orientation) uses the volume buttons and the triggers for the Vectrex's face buttons.

As for the sound, the original emulator seems to do work on the sound registers, so it's probably just a matter of reading out the proper memory regions. One problem is, I've never seen a real Vectrex in my life, so I have no idea what it should sound like :)
 
Last edited by a moderator:
Overlays can be in any format the SDL_image library can handle, which is pretty much any image format you can think of. www.vectrex.nl has a whole load of overlay images, mostly in GIF format. Those are the ones I've used so far.

I can't believe the changes he's made to that site. It's been a long time since I visited there. :) One quick question though - if any image will work have you tried the PNG files in this archive on his site? Would reduce the directory size if they're just as good for displaying. Just a thought. :)

I can't wait to see this! :)
 
I can't believe the changes he's made to that site. It's been a long time since I visited there. :) One quick question though - if any image will work have you tried the PNG files in this archive on his site? Would reduce the directory size if they're just as good for displaying. Just a thought. :)

I can't wait to see this! :)
Tried 'em, they work just fine. Those overlays are a bit pixellated though, and not as pretty as the GIF versions. But if it's compactness that you're after, then they will work just as well.
 
Last edited by a moderator:
I can't believe the changes he's made to that site. It's been a long time since I visited there.

Jesus - you're not kidding! Joust on the Vectrex! Awesome. That fighting game looks cool too...


Now I really must get a new sound chip...
 
Now see... this is making me drool. It looks great and the overlays are the perfect touch! :) How's the stability and speed in the early stages?

Just so I can start looking for good images for them... what format should the overlays be in? PNG? BMP? etc...

Thanks a ton for your hard work Devil!
Stability seems to be okay, there are probably still a couple of bugs left, but most games run fine. Speed is, well, that's still one of the biggest hurdles. Right now one emulation cycle takes about 70 ms, which should be at most 20 ms for real Vectrex speed. Overclocking the CPU (a feature that has also already been added to Vec2X) to 250 mhz brings this down to about 50 ms. Rendering takes about 5 ms in total (could probably be reduced if necessary, especially with hardware SDL), so it's mostly the emulation code that takes time. It's playable, but obviously slow.

Overlays can be in any format the SDL_image library can handle, which is pretty much any image format you can think of. www.vectrex.nl has a whole load of overlay images, mostly in GIF format. Those are the ones I've used so far.

You know that you can use the volume buttons while in vertical mode. See how MAME does it, it works well.

Hopefully you can get sound working, that is pretty important as well.

Good luck.
Yes, that has already been implemented, see my remark about input configurations. Perhaps I should've been clearer, but preset 2 (for vertical orientation) uses the volume buttons and the triggers for the Vectrex's face buttons.

As for the sound, the original emulator seems to do work on the sound registers, so it's probably just a matter of reading out the proper memory regions. One problem is, I've never seen a real Vectrex in my life, so I have no idea what it should sound like :)
all the sounds you want here http://www.vectrex.nl/ very basic but in 1983 it was the dogs spheres
 
Last edited by a moderator:
Sorry to pry, but it's been almost a month since the prototype picture was released, has this attempt been given up, or are you just suffering from Real Life Syndrome™?
 
I'll have to see if I still have the source code to GEX somewhere. I wrote that from schematics of a real vectrex I found on the 'net (The Vectrex is basically a jumble of analogue electronics and some simple ICs), so it didn't have any crappy bloated windows code in it and run at full speed on the gp32 (at default overclock of 133mhz). Unfortunately, it wasn't perfect and would draw a stray line every now and again due to several short cuts I used (or should I say "assumptions"). The CPU core (well, all of it to be honest) was written in C as well :eek:

Some people think the Vectrex was childs play to emulate though for some reason simply because it used simple vector line drawing. They normally don't notice the analogue electronics used to control the gun on the b/w crt, and so you need to get your pixel clock in sync with your cpu clock, or just get garbage on the screen (and then of course optimise the end result so it doesn't require several hundred mhz to emulate). Then of course you have the MUX for the game pads and sound output (simple D2A).

So, don't waste too much time trying to implement an ASM CPU core - you can get much better results by rewriting the video renderer.
 
Squidge posted on Dec 9 2006 at 12:32 PM said:
I'll have to see if I still have the source code to GEX somewhere. I wrote that from schematics of a real vectrex I found on the 'net (The Vectrex is basically a jumble of analogue electronics and some simple ICs), so it didn't have any crappy bloated windows code in it and run at full speed on the gp32 (at default overclock of 133mhz). Unfortunately, it wasn't perfect and would draw a stray line every now and again due to several short cuts I used (or should I say "assumptions"). The CPU core (well, all of it to be honest) was written in C as well :eek:

Some people think the Vectrex was childs play to emulate though for some reason simply because it used simple vector line drawing. They normally don't notice the analogue electronics used to control the gun on the b/w crt, and so you need to get your pixel clock in sync with your cpu clock, or just get garbage on the screen (and then of course optimise the end result so it doesn't require several hundred mhz to emulate). Then of course you have the MUX for the game pads and sound output (simple D2A).

So, don't waste too much time trying to implement an ASM CPU core - you can get much better results by rewriting the video renderer.

He's aliveeeeee <3
 
Last edited by a moderator:
i would like to file a missing person report...last seen nov 21, name he may have a vextrec emulator with him...any sightings please inform us here as soon as possible...we miss him






spelling again...
 
Back
Top