Your Spectrum
Issue 15, June 1985 - Jet Set Willy
Home Contents KwikPik

See also:
Issue 13"April Showers"
Issue 15"Raindrops Keep Falling"

  10 INK 7: PAPER 1: BORDER 1: CLEAR 32767
  20 PRINT "JSW is loading"
  30 LOAD ""CODE
  99 REM POKEs after here
 899 INPUT "Press ENTER to start" LINE a$
 900 RANDOMIZE USR 33792
The Jet Set Willy loader program. Use this to get your POKEs in.
00h-7Fh These bytes contain the background descriptions of each room. Two bits are used for each character block on-screen, so you're restricted to four possible types of platform. Have a look at the DESIGN A PLATFORM box for a breakdown of values and what they do.
80h-9Fh The name of the room in ASCII
A0h-C3h Four sets of nine bytes describing the shape and colour of the platforms. The first byte of each block holds the attribute (colour) value, followed by eight bytes of UDG-like pixel information.
C4h-CCh Colour and shape info for the stairway set out in the same way as the platform info.
CDh-D5h Colour and shape info for the travelators again in the same format.
D6h-D9h This four bytes block holds details of the position and direction of the travelators (see TRAVELATORS AND STAIRCASES).
DAh-DDh A further four bytes for the position and length of the stairways (see TRAVELATORS AND STAIRCASES).
DEh One byte for the border colour.
DFh-E0h Two spare bytes.
E1h-E8h Eight bytes of pixel data to describe the shape of any possible objects.
E9h-ECh These four bytes let the program know which room number to send Willy to when he leaves the room he's in. The order is: left, right, above and below.
EDh-EFh Another two spare bytes.
F0h-FFh A series of eight two-byte pairs that describe the moving nasties in the room. Take a look at JET SET WILLY'S ADDRESS Book opposite for some ideas on how to get those Killer things on your screen.
OK, we'll come clean - we did know where the extra room in Jet Set Willy was. And it wasn't long before you all found it as well. Now Dave Nicholls shows you how you can start re-arranging the furniture in Miner Willy's mansion.
Right then, get out your paint pots and wallpaper paste buckets, 'cos it's time to Spring clean the JSW mansion. All the info you'll need to start re-decorating the rooms is listed below, and out of the goodness of our hearts we're going to give you the loader program which first appeared in Issue 6. (And where's your copy then? Ed.) It shouldn't take you long to decorate and add on extensions. Each room is held in just 256 bytes at location C000h and goes up in sequence at D000, E000 and so on.
   Got all that? Good - now put on your overalls and get decorating!
April Showers screen

For all of you not convinced that April Showers existed (How could you mistrust us? Ed), here's the proof.
00 This is normally blank and makes up the background for the room. Your shape description should hold zeroes - unless of course you have other ideas!
01 Sections of the screen with this bit pattern allow Willy to pass through from underneath or the side, but they'll hold Willy up if he lands on top.
10 This bit pattern won't let Willy through no matter which direction he attacks from - a bit of a dead end all round.
11 This is the bit pattern for the killer blocks - one touch and poor ol' Willy's a gonner.
Here's the bit information for the background of each room - the wallpaper and paint job.
1st byte: This tells you the direction of the travelators and stairways - 0s for left and 1s for right.
2nd and 3rd byte: Together these bytes make up a screen address for the bottom of a staircase, or the left-hand end of a travelator. The picture's built up off screen and then copied, so this assumes that the screen starts at 5E00 hex. The real address then has to have 11E00 [sic] added to it.
4th byte: This gives the length of the stairs or travelator.
This is the information you'll need to construct your own travelators and stairways. Going up!
All numbers are in hex:
8907 The game starts here after you've pressed Enter from the logo screen.
8922 This prepares the moving graphics data.
898B The subroutine here puts those wandering Willies at the bottom of your screen.
8D33 Here the basic room platform data is put on 'screen'.
93D1 Puts the objects on the screen.
9534 Handles the special case rooms. You know the ones - the master bedroom and the bathroom.
9456 This subroutine puts a 2 by 2 graphic on the screen.
91BE and 90C0 These two subroutines are the main ones for handling the moving graphics.
8420 A single byte containing the current room number.
Left: Here's the breakdown you'll need (and probably get if you try it. Ed) of the Jet Set room information area. Just change the numbers to suit your new design scheme. The easier place to start is the [ room - that's where Dave put April showers.
Home Contents KwikPik