19th of September – Vide 2.0 (announcement)

I decided – or I think I somehow “was decided” 🙂 – that the next version of Vide will not be 1.21 but rather a version 2.0.

As the last post already mentioned, internally Vide went through quite a lot of changes.

  • Vide has become quite a lot faster
  • Vide’s graphic output is better than it ever was
  • emulation of even really strange stuff was added (like the out of bounds “glimmer” of vectors drawn out of scope)
  • the openGL change in general was “huge”
  • the small thing of having Vide being able to be started from “anywhere”
  • there are new smallish tools, like “Overlay switcher”, with that you can change the overlays of the currently running binary “on the fly” very easily

But the final straw that led to the decision to jump to 2.0 was the incoming support of an additional programming language.

From version 2.0 onwards Vide will support the language “C” to program vectrex.

I know there are and were discussions about a high level languages. And I believe I know all the arguments pro and contra. Ultimatly every user must make the decision himself what he likes best – I only provide an easy opportunity to get started.

For the “C” undertaking I have been in close contact with Prof. Dr. rer. nat. Peer Johannsen, who for his classes “Retro-Programming” and “Advanced C Programming” at Pforzheim University, Germany configured the setup I am distributing with the next Vide version (the class sites are listed in my link section). I am realy greatful for him allowing me to be part of his own vectrex journey and that I have the opportunity to bring “C” a little bit closer to the whole vectrex community using his work.

The configuration of the compiler and associated utilities can probably be further enhanced, Peer and I will work further on the setup with the goal to make it produce more efficient code. But for now the main part is – it is USABLE and STABLE. Performance will come in time – I am sure of that.

My goal is, that “C” which is supported by Vide will be compatible with future (possibly more enhanced) versions of our “C” setup. So that idealy when a more performant version is available you only have to hit the “build” button, and everything is nice and shiny!

I will not go into detail here what Peer and I have been up to, I have written a first basic documentation. If Peer finds some spare moments he too might write some more (you know – kids, job and the like 🙂 …).

The online documentation of Vide has already been updated with the current files… You can read some more there.

Nonetheless some cornerstones:

  • C support will (for now) be “project” bound, such a project must be build in Vide
  • if free of syntax errors a press on “build” will compile all relevant sources, assemble, link and build an executable binary and start vecxi
  • C support will “out of the box” be available for Windows, Mac OS and Linux

What is already done and working?

All of the above!


  • Vedi has “C” syntax highlighting
  • Vedi can jump to error locations
  • Vedi scans the C sources and “knows” macros, functions and variables and can access them like it does in assembler sources (well not quite as well – this can be further enhanced)
  • one can build/use “libraries” or routines, done in assembler and link them to the C-project (still some more beautifying to do though)

Still on the todo list:

  • debugging / breakpoint support on a “C” level
  • watches on “C” level
  • make all (most?) of the tools of Vide “C”-compatible

As you can see – much has been done. The major obstacles are taken care of – what is left, is a whole lot of WORK.

That’s why the next version is not available yet – and probably will not be available for quite some time. But I hope it will have been worth the wait.

If someone is interested in a beta test – drop me a note…



Tagged on: , ,

4 thoughts on “19th of September – Vide 2.0 (announcement)

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.