There is a dearth of decent demos on the BBC and Electron, despite the ease with which they can now be programmed. The Halloween 3 Demo, included this issue, is an example of very simple programming used to replicate an extremely scary effect, in a homage to the film of the same name. Ideas for BBC/Elk demos really are all around us and, whereas once upon a time, they would have probably taken a lot of planning, the PC-based tools and utilities available now dispense with all of this. Indeed, this particular demo, which is virtually assured to join the list of the "great demos for the BBC/Electron" took less than three hours to program.
Firstly, a bit of background for those who have not seen the film. Unless you've had the misfortune to never have encountered a horror movie fan, you cannot but have heard of the long-running slasher films featuring serial killer Michael Myers. The original Halloween film featured Jamie Lee Curtis as the heroine with the loose plotline of "Myers out to kill everyone who stands in his way to get to her". I confess I have forgotten the reason why, or indeed why he came back to try again in Halloween 2 and Halloween 4 and 5 and H20 and, perhaps by the time you're reading this, even more sequels! It really makes no odds because the film Halloween 3 does not feature Mr. Myers at all. It is the story of a toy manufacturer who plans to kill all of America's children in Halloween by flooding the nation's shops with "chipped" Halloween masks. The masks themselves are harmless but, inside of the 'Silver Shamrock' logo affixed to them, is a computer chip which is triggered by a flashing light at regular, and ever decreasing intervals. When the flashing reaches its crescendo, the mask explodes, taking the head of its child victim with it. Lovely.
I do not intend to give away the end of the film here. I will say that it is one of my favourites and, as horror films from the early Eighties go, it has aged well, particularly if one compares the premise with crowd-pulling PR machines such as the publicity for shows like The X Factor and Britain's Got Talent. Certainly it's very easy to imagine millions of the nation's children gathering around their TV sets to watch a mysterious Halloween broadcast, and also being hoodwinked into buying the special masks that 'include' them in the phenomeneon.
The focus in the demo is the broadcast itself which, after persuading all America's trick-or-treaters to "watch the magic pumpkin, watch... watch..." displays an orange pumpkin and flashes the countdown sequence which explodes the mask. The demo is slightly different to the broadcast in that the demo 'builds up' the picture of the pumpkin slowly and purposely, rather than simply displaying it. If you do watch the original film, you will no doubt notice that this build up is identical to that in the opening credits, right down to the direction of lines being erased to the order in which the pumpkin's eyes, mouth and nose actually appear.
The 'horrorthon' comes at the very end, and is achieved by simple colour-switching using VDU 19. This has been the subject of zillions of earlier articles so I won't bother going into the basics here. However the eagle-eyed amongst you will notice that the blast of white light is "speckled" with horizontal lines to try and re-create the effect of the old analogue televisions.
The demo was produced by grabbing a frame of the pumpkin, resizing to 160 x 256 to suit a Mode 5 screen and then outlining the areas of the eyes, nose, mouth and pumpkin outlines. All this was done on a PC using Ifranview and MSPaint. Once the simplified two colour (red and black) image of the pumpkin was created, each odd-numbered horizontal line was removed by overwriting it with a green line. This resulted in the final image of the pumpkin, which could be converted to a Mode 5 screen, using Image2BBC.
It would, of course, be very simple to add the VDU 19 'horrorthon' to this resultant image and have the demo as a two-file program. However, this would not have allowed for the build-up of the pumpkin on screen and, whilst I said above that this was not strictly necessary, the build-up has a creepiness (at least in the film) all of its own. In addition, the pumpkin is a very simple image, made even more simple by the removal of alternate lines to produce the "speckled" effect.
I therefore wrote my own customised program which displayed the pumpkin image on the screen and allowed me to move a cursor to any area on the image and add completely separate commands to another program. That is, I could move the cursor to the point furthest on the left and press M to add the command MOVE x,y to the eventual new BASIC program that would re-create the screen. Then, by moving the cursor to the end of the line and pressing D, the command DRAW x,y would be appended.
Although it was then quite a laborious task to move the cursor to the correct location and press M and D as appropriate, it only took around half an hour to complete this. To test that the re-created screen appeared correctly, I had added a procedure called with the combination CTRL-P which *SPOOLed the entire MOVE and DRAW combinations to a separate file. This file could then be *EXECed and run as an individual program. Delay could also then be added if necessary.
You can see, by listing the demo itself, that the pumpkin shape, the mouth and the eyes and nose are drawn in distinct procedures; an unintentional side effect of using this method.
I toyed with the idea of adding the London Bridge Is Falling Down music to introduce the demo but decided it might distract from the ambiance. Also, in the denouement of the original film the transmission is interrupted, which also could be easily achieved in the demo. However, ultimately I like the demo just the way it is, because it could have been lifted in its entirety from the evil toymaker's laboratory.
The final black and white image which appears just before the demo ends is an addition I made because it looks predominantly evil in negative colours.