Above an image of probably the most ugly present (prize) I ever got. Once upon a time in a Vectrexschau (a twitch stream weekly about vectrex games) – we were asked to make a guess about the score Torben would reach in one game – and I guessed right.
I consider this present a revenge for my Blitz video. Perhaps in the future I will have an opportunity to make up for this.
Isn’t the upcoming christmas raffle the greatest opportunity to find a new home for this masterpiece of art?
Anyway – long time, no blog entry. I was sort of Vectrex tired for a while and than blog tired. I never finished Infinity – perhaps in the future I’m going back to it. I documented my latest ideas – but did not have the nerve yet to implement them.
It has been nearly six months since my last post, so naturally some things came up – the once I remember I’ll write down here, lest I also forget them.
The Retrokompott (German only) podcast had the idea to make a series about the Vectrex. With Torbens help we came together and talked about many things Vectrex (we, as in Torben, Olli and me as “experts” and Patrick as moderator). The complete session(s) were over 6 hours of unfiltered vectrex stuff. Talking about original games and hardware to homebrews and new hardware, from anecdotes and fundamental half knowledge to guesswork everything was present (not to forget the Spinner). The complete recording(s) were split into 6 parts and published between June and September 2022.
If you want to digest this – you are welcome to head ofter to the podcasts folder and search for podcasts #172 to #177.
In 2014 it was discovered, that Armor Attack has some “sweet” spots, where the player was save from attacks (see: proboard forum). After that discovery Armor Attack was not selected for competitions anymore and the Vector War (a yearly Vectrex-event) had one great game less to compede with.
I am in the middle (well every few months I write a line of code) of updating the original binary to circumvent that behaviour. I made a first beta version public (see also proboard forum) that adds a tiny little bit randomness to the movement and thus the attacking tanks are a little less predictable and do not always move predetermined in search of the player.
A second version where the players vehicle can not drive half way into the wall is lying around on my drive (this adds a higher probability that the chopper can reach you with its shots).
I also plan to add an introduction srceen and (persistent) highscores, but that has not been finished yet. For the intro I am thinking about someting 3d-ish. In the GIF to the right you can see a first test I did in “C”. Calculations are all “on the fly” and fast enough to display in 50Hz. This is only a test to see how the 3d model looks. For the intro I am thinking about some sort of scence where the tank shoots at the player or vice versa.
… is a game that has been in development at least since 2015. I had been in contact with Scott (programmer of the game) in 2018. But sadly development slowed down to a halt, when his Vectrex died. A few months ago, out of a whim I wrote to Scott and asked how he was doing (and inquiring about Cavern Rescue) – out of sheer coincidence, his Vectrex was repaired a few weeks before that and he was starting to work on Cavern Rescue again.
We have been in contact since than and I can show you a few current screen shots. The plan is still to finish the game – and it should not be to far of!
Retroarch / Libretro
The original VecX was written by Valavan Manohararajah. An open/free/portable vectrex emulator that has been used and resued for years. It comes in many flavors and is available for a lot of systems. It has been written quite some time ago and has not been touched by the original author for years (or decades).
For what it is – it is great – I based Vide emulation on this. For all its greatness it has always had one fault (well a few others as well) – and that is the SHIFT register emulation of the VIA. You can see this immediately when the emulator fires up, since the writing (raster graphics in general) is “crunched” – each letter in horizontal direction is only half the size of what it should be.
This special feature of vecx emulation has been known for years (decades). I have seen the first mention of this in Parabellums blog for his emulator ParaJVE that was (guessing…) 2005?
Despite it being know for years and years, not one of the people (exception: me!) has ever been bothered to correct it – or implement a correction in the ported emulation. This includes but is not limited to ports to: Mac, Playstation, Wii, OpenEmu, Libretro, Java Script…
Look at the images and tell me – can you see a difference?
5 lines of code, not difficult and documented already 15 years ago. But hey – I have a new core in my emulation and it works – I am a master programer! – and while we are at it, I will also add a copyright to the 5 lines I added (whether emulation is correct or doesn’t matter).
Sorry – but this gives me the creeps!
What I was actually going to do … I wanted to build a mini vectrex with emulation using a RASPI. I deemed it easiest to use one of the emulation packages that was already available and came across Retroarch / Libretro – and discovered, that they more or less unquestioned took the core for vectrex from openEmu (an emulator package that I also had been at war with 6 years ago). Somehow some code of mine actualy made it into that source – but looking at that old code of mine let me turn in shame and delete all of it. I could not help but to change the core to a state that I find at least usable. Learning from my openEmu experience I did not bother to do an actual pull request for the changes (I get it! Working on a project together with lots and lots of people, requires organization and certain restrictions – but some of the “demands” back with openEmu were outright rediculous – they were NOT interested in the betterment of emulation… they cleary had other priorities). I informed the discord channel of RetroArch about my changes – and they can grab them if they want to. My libretro core for Vectrex is available within my github repo: https://github.com/malbanGit/libretro-vecx
The core can run e.g.:
– Clean Sweep
– the “movies”
correctly – see:
(PS. I have not done a single thing towards the actual “mini Vectrex” …)
Peer strikes again!
These scientists… always trying to figure things out!
Look at the discussion again in the proboard forum. It results in a (… an evolving) model regarding the source of “wobble” once a vectrex frame is drawn in less than 50Hz.
I implemented the “sinus”-theory in Vide – and it looks really “natural”:
Configuration items for this have been added also:
This version of Vide is not released at the time of writing, but a single “jar” can be found when reading the proboard messages.