VecFever documentation

< All Topics
Print

Berzerk

GCE, 1982

One of the very first Vectrex static binary translations to try out was Berzerk since I knew it would profit from it a lot: the flickering robots of the original code are just too annoying. This was straightforward initially since I had developed 6809 tools for a more complex 6809 translation project – the Atari Star Wars arcade games – and here the work was mostly to develop the first wrapper functionality for the Vectrex ‘exec’ calls to plug them into the vf library. Turned out very easy to do, always nice for a change, and the performance and stability to be gained equally very nice.

Also localization of texts – since all strings are printed out via ‘exec’ routines – was easy to do by just substituting the strings.

For more info. on the idea behind these Vectrex emulators:

Localization

//NAME="BERZERK"
//
//   note: all x positions except for 'GOT YOU HUMANOID' are automatically handled by the emulation

GERMAN[] = {
    { 0, 0, "Bestes Spiel" },
    { 0, 0, "Spieler" },
    { 0, 0, 0 },
    { 264, 0, "HAB' DICH" },
    { 237, 0, "HUMANOIDE" },
    { 0, 0, "                           © 1982 GCE/MB. Berzerk scheint eine besondere Stellung für viele Vectrexianer zu haben: neben dem Original gibt es eine debuggte Variante, welches den Bonusfehler behebt, das verbesserte \"Verzerk\" von niemand anderem als Alex Herbert und nun auch Malban's \"Berzerk Ultimate\", also die besten Programmierer, die die Vectrex bisher sah, haben daran gearbeitet. Da ich gegenüber Malban erwähnte, dass ich an einer neuen Laufzeitumgebung für moderne Applikationen arbeite, fragte er ziemlich sofort, wie wohl Berzerk darauf aussehen könnte. Weswegen ich es als ersten, richtigen Test hernahm: das Spiel läuft komplett emuliert auf der VecFever, wobei das BIOS nicht mitemuliert wird, sondern funktional ersetzt. Dadurch erhält man eine Abstraktionsebene und kann die Spiele erweitern, z.B. für Sprachanpassungen, Optimierungen oder andere Eigenschaften, wie die Orientierung oder sie überhaupt auf allem einfach ausgeben zu lassen, was Vektoren mag.. Vectrex Berzerk hat im übrigen ein \"Easter Egg\" - die Initialen des Programmierers erscheinen, wenn man die Knöpfe 1+3+4 gleichzeitig drückt, wenn man stirbt."} 
};

FRENCH[] = {
    { 0, 0, "Meilleur Score" },
    { 0, 0, "Joueur" },
    { 0, 0, 0 },
    { 224, 0, "JE VOUS AI EU" },
    { 192, 0, "HUMANOIDE" },
    { 0, 0, "                           © 1982 GCE/MB. Berzerk bénéficie d'un statut particulier pour de nombreux passionnés de Vectrex: il existe une version déboguée qui corrige le bogue du bonus, le \"Verzerk\" amélioré de l'illustre Alex Herbert et désormais le \"Berzerk Ultimate\" de Malban, dont le but est d'offrir la meilleure version possible sur le Vectrex. Les programmeurs les plus renommés que le Vectrex ait connus ont donc travaillé sur le jeu Berzerk. Comme j'ai expliqué à Malban que je travaillais sur un nouvel environnement d'exécution pour les applications modernes, il m'a immédiatement demandé comment Berzerk fonctionnerait dans ce cadre. C'est pourquoi je l'ai testé prioritairement: le jeu est entièrement émulé sur la VecFever. Bien que pour sa part le BIOS du Vectrex ne le soit pas, il est reproduit quant à ses fonctionnalités afin d'obtenir une performance et une flexibilité maximales. Cela permet de s'affranchir du matériel d'origine et donc d'apporter, outre des optimisations, de nouvelles fonctionnalités: en particulier la régionalisation des chaînes de caractères, la prise en charge de l'orientation du jeu, et de façon générale, la possibilité d'exécuter le tout dans un environnement adapté aux vecteurs. Berzerk, qui plus est, contient un Oeuf de Pâques informatique (\"Easter Egg\"): les initiales du programmeur apparaissent en appuyant simultanément sur 1+3+4 lorsqu'on meurt"}
};

ENGLISH[] = {
    { 0, 0, "High Score" },
    { 0, 0, "Player" },
    { 0, 0, "Bonus" },
    { 264, 0, "GOT YOU" },
    { 237, 0, "HUMANOID" },
    { 0, 0, "                           © 1982 GCE/MB. Berzerk seems to be special for several Vectrex enthusiasts: there is a debugged version fixing the bonus bug, the enhanced \"Verzerk\" of none other than Alex Herbert and Berzerk Ultimate, Malbans push to get the very best Berzerk possible onto the Vectrex. So the very best programmers the Vectrex has seen yet worked on a Vectrex Berzerk version. Since I mentioned to Malban that I was working on a new run-time environment for modern applications he immediately asked about how Berzerk would perform. So it became a priority as the very first proper test case: this game is entirely emulated on the VecFever, although the Vectrex bios is not emulated but functionally reproduced for maximum performance and flexibility. This allows an abstraction from the original vector hardware and therefore besides optimizations also new features - like localization of the text strings, orientation support and in general the ability to run them now on about anything vector-like. Vectrex Berzerk btw. has an Easter Egg - the initials of the programmer appear when pressing 1+3+4 simultaneously when you die."}
};
Table of Contents