H.E.R.O.


H.E.R.O. Intro screen 1 H.E.R.O. Intro screen 2
H.E.R.O. Intro screens 1 & 2

H.E.R.O. Intro screen 3

H.E.R.O. Intro screen 3 (high scores)

H.E.R.O. level 1, screen 1 H.E.R.O. level 1, screen 2
H.E.R.O. Level 1, screens 1 & 2

H.E.R.O. level 1, screen 2 (gameplay)

H.E.R.O. Level 1, screen 2 (gameplay)

H.E.R.O. level 2, screen 1 H.E.R.O. level 2, screen 2
H.E.R.O. Level 2, screens 1 & 2

H.E.R.O. level 2, screen 3 H.E.R.O. level 2, screen 4
H.E.R.O. Level 2, screens 3 & 4

H.E.R.O. began as a demo for a newly discovered Extended BASIC trick, where one can hijack some of the graphics commands to work on either Semigraphics-12 or Semigraphics-24 modes. Initially discovered by L. Curtis Boyle and Nick Marentes, this trick allowed things like PMODE, SCREEN, LINE (,BF), GET, PUT and PCOPY to all work with these modes, which up until now required assembly language to access. These can mix real text and graphics on the same screen (on a VDG based Coco or Dragon) as well as 9 colors (including black). There is a trick to get it to work on the Coco 3 as well, although minus the text characters. This trick was revealed on The Coco Nation Show's CocoTech episode 006, with a followup a few months later (episode 006a) that had some other tricks and added PCLS to the list of commands that could support these two modes properly. Some small animation demos were shown using both modes (effectively 64x96 resolution with 9 colors for Semigraphics-12, and 64x192 resolution with 9 colors for Semigraphics-12, and Extended BASIC programmers who want to have much more color programs and games are encouraged to watch these episodes.

Nick decided to a fuller demo, which eventually feature-creeped all the way to a full blown game based on the Atari 2600/VCS game of the same acronym, originally written by John Van Ryzin and published by Activision. (Nick did slightly change the acronym from "Helicopter Emergency Rescue Operation" to "Hoverjet Emergency Rescue Operation"). 20 level maps from the original game (being at least 2 screens each, including both vertical and horizontal movement between screens) were ported over, and most of the play elements and enemies (spiders, bats, snakes, floating platforms, etc.) are all included. The one big mission statement was that it was to run in pure Extended BASIC; no machine language subroutines at all. There are some POKE's to "fool" BASIC into working with semi-graphics, but that is it. As a result, the game runs much slower than the original Activision version, but since the game also features exploring and figuring out the best routes to take, it still provides a challenge to the player even with the much reduced speed. The player is equipped with 6 dynamite sticks that can be used to blow up certain walls, as well as a jetpack & laser (both of which can drain the players energy). The object is to rescue miners trapped underground by a volcano (and the player will encounter deadly lava in later levels). There are also corridors that have light switches; if the player triggers one of these, the lights in the current cavern will shut off, leaving the player mostly in the dark, adding to the challenge. In later levels with much bigger caves of many caverns, power management becomes an issue as well, and the player will need to figure out the best way to navigate through the caverns to save on power. If the player runs out of dynamite (which are replenished each level), they can shoot through a destructable wall, but it takes quite a few shots, draining energy, and thus should be used as a last resort. The game also keeps track of the top 4 scores, including which cavern/level and screen number within the level the player got to. It should be mentioned that the game is completely keyboard controlled; one doesn't even need a joystick to play.

It should be mentioned that Nick did add a small ML routine in version 1.1 for those with a 6309 CPU upgrade. This is because BASIC will crash if one enables native mode when doing disk I/O (needed to load levels) or playing sound. The game will play on stock Coco 1/2's just fine though, and used the ROM speedup POKE to get some needed extra speed (1.78 MHz while running ROM code, 0.895 MHz running in RAM). If it detects it is running on a Coco 3, it will go full double speed (1.78 MHz), and it will even kick in at 2.86 MHz if one is lucky enough to have a GIME-X upgrade installed. Of course, with a variety of emulators one can adjust the speed to as fast as they would like.

Because the game is meant to be tutorial example of using Semigraphics from BASIC, the source code is included, with 2 versions. HERO.BAS is the one meant to be run to play, and uses tricks like line numbering by ones, multiple statements per line, No REM's, etc. to give the game a little more speed. HERO-SRC.BAS is a longer version with REM's etc. to explain what each part of the program is doing. BASIC programmers are invited to use any routines or even improve them if they wish. And because it is a tutorial, the game is completely free, and can be download via the link below.

Title: H.E.R.O.

Author: Nick Marentes

Publisher: Nick Marentes

Released: September 23, 2024

Requires: Color Computer 1,2,3 with 32K RAM, disk (will be speed boosted with a Coco 3 and/or 6309 and/or GIME-X).

Download H.E.R.O. from Nick's webpage.

Watch the original CocoTECH episode 006 on how to use Semigraphics-12 and 24 from Extended BASIC.
Watch the follow-up CocoTECH episode 006a on newer tricks, and using PCLS, in Semigraphics-12 and 24 from Extended BASIC.

Return to main Coco Game List page