Автор: Peter M. Harrap,Shaun Hollingworth
Год: 1987
Издатели: Your Sinclair
Языки:
Английский
Формат:
TAP лента
Требования:
ZX Spectrum 48K
Ссылки:
Страница на ZXArt
Страница на World Of Spectrum
Страница на Spectrum Computing
Скриншоты:
Год: 1987
Издатели: Your Sinclair
Языки:
Формат:
Требования:
Ссылки:
Скриншоты:
Star Tip 4
Block Store Screen Editor
by Shaun Hollingworth & Peter Harrap
from Your Sinclair #21/22 (Sep/Oct.1987)
[files STARTIP4.*]
Gremlin Graphics is really making a name for itself as an
arcade specialist with titles like Thing Bounces Back,
Future Knight and the Monty series topping the charts. It's
clear that the firm knows what the people want and is geared
to letting them have it (thwoom!) Dead good, complex, fast
arcade adventures with a sprinkling of senseless violence is
the name of the game, and this success is due in no small
way to Gremlin programmers Shaun Hollingworth and Peter
Harrap, as it's mainly their programming skills that have
created these megagames.
We were fascinated to discover that for each game they
write, they write a custom game editor/development system to
construct and link all the screens within the game, allowing
them to concentrate on the gameplay while bolting on screen
after screen of fast arcade action. Now you too can benefit
from this technique with a version of the Future Knight
Block Store game Screen Editor, which the lads have kindly
allowed us to print in this month's Program Pitstop.
Shaun and Peter have been with Gremlin for about three
years. Peter wrote all the Monty games, except Auf
Wiedersehen, which he co-wrote with Shaun. Between them
they've written Way Of The Tiger, Bounder, Future Knight,
and Trailblazer. They're presently working on this autumn's
smash from Gremlin, Death Wish III.
Shaun tells me that he has a copy of the Editor that was
used on the Monty games, and we'll be featuring it in a
future edition of the Pitstop. We only bring you the best!
Method
Using the Editor you can edit Blocks, Characters and Screens
and link them together in preparation for making your own
arcade adventure. The full scope of the program is far too
lengthy to mention in too much detail in these pages, so
we'll give you the basic commands and enough technical
colour to get you going, but from then on I'm afraid it's a
voyage of discovery.
Basic Program
Here's a little Basic loader, which loads the Editor Code
and fills the character set with some meaningful
information. Save it as SAVE "An editor" LINE 20.
Hex Dump 1
Here's the main program: load the Hex Loader program from
the Mega-text program. The start address of this chunk is
63488 and the length is 1999.
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
So you've been waiting with bated breath for the second half
of your Future Knight-style Editor program, from the makers
of the Monty games, huh? Okay, space is at a premium, so
let's get cracking...
continued
In case you missed last issue, we began by giving you the
Basic loader and Hex Dump 1 for the Editor program, with
which you can edit Blocks, Characters and Screens, and link
them to make the bare bones of an arcade adventure. Now
follows the remaining bits of code you need to get the
program working, and full instructions on how to use and
enjoy your Editor. (Gerrof! Ed)
There are three levels to the Editor, and at the top you
have the Main Screen Designer. To save anything from this
level you must break out into Basic. You can return to it by
RANDOMIZE USR 63488. On the screen you should have a white
rectangle with a crosshair cursor in it and a number under
it. This is the current screen number you're editing, which
when you first start is screen 91. The range of screens you
can have is 0-120. The entry screen can be set by POKEing
23681 with the screen number. The smaller white square is
the current block, which can be placed on the screen with
the cursor. These can number between 0-255.
To enter the next level of the Editor press 'C' and you'll
enter the Block Editor. You should have a smaller white
rectangle at the top of the screen marked 'chrno: 000',
containing the Select Char cursor and two small squares at
the bottom. The one on the left is the current block,
containing the Destination Block cursor, and the one marked
'copych' on the right is the copy character. The 'copych'
can be copied to the current block with CAPS+C, which is
helpful when creating a number of similar blocks, you can
just copy them over and alter them.
You have no chars in memory at this point, so to get to the
third and final level press 'E'. This puts you into the Char
Editor, and you're presented with 'chrno' at the bottom of
the screen and a grid and cursor. When you've finished
editing, press 'X' to return to the Block Editor.
The final short program which prints up the screens when you
want them is called "screen-PRINT". In order to use it you
need to decide where you're going to store your chars,
screens, blocks, colour map and background chars. To allow
the "screen-PRINT" program to display your screens you must
put these addresses into the following registers:
BC = address of chr map
DE = address of screen data
A = screen no. to print
IX = address of block data
HL = address of colour data
DE' = address of background chars
(NOTE: HL' register not used!)
Then the program knows what to print and where to get all
the data for it. All you have to do is call the print
routine with RANDOMIZE USR (address you located
screen-PRINT) and off it goes. Although you can't build a
game without writing a lot of other stuff like sprites,
collision and puzzles yourself, Editor certainly takes the
headache out of building the world your sprites will
inhabit! Have fun!
Saving Data
Block Shapes: The data for the block shapes is at address
49152 and is a maximum of 256*16 (4096) bytes long.
Screen Layouts: The data for the screen layouts is at
address 53248 and is a maximum of 120*32 (3840) bytes long.
Colour: The colour data is at address 57088 and is 256 bytes
long.
Charset: The graphics character set is at address 61440 and
is 2048 bytes long.
Options
MAIN SCREEN EDITOR
F move to next screen
B move to last screen
Q crosshair left
W crosshair right
P crosshair up
L crosshair down
U move current block up one
D move current block down one
S set current block at cursor
C enter Block Editor mode
BREAK return to Basic
BLOCK EDITOR
Q Char Select cursor left
W Char Select cursor right
P Char Select cursor up
L Char Select cursor down
CAPS SHIFT advance bottom cursor
S set char in current block at bottom cursor position
U advance current block no.
D retard current block no.
CAPS+C copy the copych block to current
CAPS+U advance copych block no.
CAPS+D retard copych block no.
F select ink colour
B select paper colour
A sets the colour of char at Char Select cursor
X returns to Main Screen Editor
E enters Char Editor
CHAR EDITOR
Q move cursor left
W move cursor right
P move cursor up
L move cursor down
ENTER to set pixel
SPACE to reset pixel
I to invert whole char
X to return to Block Editor
Hex Dump 2
Next we have some sample characters for you to try. Once
again you have to type them into the Hex Loader from
Mega-Text. The start address of this bit is 61440 and the
length is 2048. Save it as SAVE "sum chars" CODE 61440,2048.
Hex Dump 3
And finally, that naughty bit of code which prints up the
screens when you want them. As we mentioned earlier, this
chunk of code is relocatable to anywhere that's convenient
for you. For the sake of argument we've set the start
address to 30000 and the length to 172. Save as SAVE
"screen-Print" CODE 30000,172.
Block Store Screen Editor
by Shaun Hollingworth & Peter Harrap
from Your Sinclair #21/22 (Sep/Oct.1987)
[files STARTIP4.*]
Gremlin Graphics is really making a name for itself as an
arcade specialist with titles like Thing Bounces Back,
Future Knight and the Monty series topping the charts. It's
clear that the firm knows what the people want and is geared
to letting them have it (thwoom!) Dead good, complex, fast
arcade adventures with a sprinkling of senseless violence is
the name of the game, and this success is due in no small
way to Gremlin programmers Shaun Hollingworth and Peter
Harrap, as it's mainly their programming skills that have
created these megagames.
We were fascinated to discover that for each game they
write, they write a custom game editor/development system to
construct and link all the screens within the game, allowing
them to concentrate on the gameplay while bolting on screen
after screen of fast arcade action. Now you too can benefit
from this technique with a version of the Future Knight
Block Store game Screen Editor, which the lads have kindly
allowed us to print in this month's Program Pitstop.
Shaun and Peter have been with Gremlin for about three
years. Peter wrote all the Monty games, except Auf
Wiedersehen, which he co-wrote with Shaun. Between them
they've written Way Of The Tiger, Bounder, Future Knight,
and Trailblazer. They're presently working on this autumn's
smash from Gremlin, Death Wish III.
Shaun tells me that he has a copy of the Editor that was
used on the Monty games, and we'll be featuring it in a
future edition of the Pitstop. We only bring you the best!
Method
Using the Editor you can edit Blocks, Characters and Screens
and link them together in preparation for making your own
arcade adventure. The full scope of the program is far too
lengthy to mention in too much detail in these pages, so
we'll give you the basic commands and enough technical
colour to get you going, but from then on I'm afraid it's a
voyage of discovery.
Basic Program
Here's a little Basic loader, which loads the Editor Code
and fills the character set with some meaningful
information. Save it as SAVE "An editor" LINE 20.
Hex Dump 1
Here's the main program: load the Hex Loader program from
the Mega-text program. The start address of this chunk is
63488 and the length is 1999.
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
So you've been waiting with bated breath for the second half
of your Future Knight-style Editor program, from the makers
of the Monty games, huh? Okay, space is at a premium, so
let's get cracking...
continued
In case you missed last issue, we began by giving you the
Basic loader and Hex Dump 1 for the Editor program, with
which you can edit Blocks, Characters and Screens, and link
them to make the bare bones of an arcade adventure. Now
follows the remaining bits of code you need to get the
program working, and full instructions on how to use and
enjoy your Editor. (Gerrof! Ed)
There are three levels to the Editor, and at the top you
have the Main Screen Designer. To save anything from this
level you must break out into Basic. You can return to it by
RANDOMIZE USR 63488. On the screen you should have a white
rectangle with a crosshair cursor in it and a number under
it. This is the current screen number you're editing, which
when you first start is screen 91. The range of screens you
can have is 0-120. The entry screen can be set by POKEing
23681 with the screen number. The smaller white square is
the current block, which can be placed on the screen with
the cursor. These can number between 0-255.
To enter the next level of the Editor press 'C' and you'll
enter the Block Editor. You should have a smaller white
rectangle at the top of the screen marked 'chrno: 000',
containing the Select Char cursor and two small squares at
the bottom. The one on the left is the current block,
containing the Destination Block cursor, and the one marked
'copych' on the right is the copy character. The 'copych'
can be copied to the current block with CAPS+C, which is
helpful when creating a number of similar blocks, you can
just copy them over and alter them.
You have no chars in memory at this point, so to get to the
third and final level press 'E'. This puts you into the Char
Editor, and you're presented with 'chrno' at the bottom of
the screen and a grid and cursor. When you've finished
editing, press 'X' to return to the Block Editor.
The final short program which prints up the screens when you
want them is called "screen-PRINT". In order to use it you
need to decide where you're going to store your chars,
screens, blocks, colour map and background chars. To allow
the "screen-PRINT" program to display your screens you must
put these addresses into the following registers:
BC = address of chr map
DE = address of screen data
A = screen no. to print
IX = address of block data
HL = address of colour data
DE' = address of background chars
(NOTE: HL' register not used!)
Then the program knows what to print and where to get all
the data for it. All you have to do is call the print
routine with RANDOMIZE USR (address you located
screen-PRINT) and off it goes. Although you can't build a
game without writing a lot of other stuff like sprites,
collision and puzzles yourself, Editor certainly takes the
headache out of building the world your sprites will
inhabit! Have fun!
Saving Data
Block Shapes: The data for the block shapes is at address
49152 and is a maximum of 256*16 (4096) bytes long.
Screen Layouts: The data for the screen layouts is at
address 53248 and is a maximum of 120*32 (3840) bytes long.
Colour: The colour data is at address 57088 and is 256 bytes
long.
Charset: The graphics character set is at address 61440 and
is 2048 bytes long.
Options
MAIN SCREEN EDITOR
F move to next screen
B move to last screen
Q crosshair left
W crosshair right
P crosshair up
L crosshair down
U move current block up one
D move current block down one
S set current block at cursor
C enter Block Editor mode
BREAK return to Basic
BLOCK EDITOR
Q Char Select cursor left
W Char Select cursor right
P Char Select cursor up
L Char Select cursor down
CAPS SHIFT advance bottom cursor
S set char in current block at bottom cursor position
U advance current block no.
D retard current block no.
CAPS+C copy the copych block to current
CAPS+U advance copych block no.
CAPS+D retard copych block no.
F select ink colour
B select paper colour
A sets the colour of char at Char Select cursor
X returns to Main Screen Editor
E enters Char Editor
CHAR EDITOR
Q move cursor left
W move cursor right
P move cursor up
L move cursor down
ENTER to set pixel
SPACE to reset pixel
I to invert whole char
X to return to Block Editor
Hex Dump 2
Next we have some sample characters for you to try. Once
again you have to type them into the Hex Loader from
Mega-Text. The start address of this bit is 61440 and the
length is 2048. Save it as SAVE "sum chars" CODE 61440,2048.
Hex Dump 3
And finally, that naughty bit of code which prints up the
screens when you want them. As we mentioned earlier, this
chunk of code is relocatable to anywhere that's convenient
for you. For the sake of argument we've set the start
address to 30000 and the length to 172. Save as SAVE
"screen-Print" CODE 30000,172.