Programming - the withdrawal of sprites. continued and answers to questions
Do not let brains wither -
Sprite!
(C) Spencer Winset / Diamond group
I got the first letter, it is from the famous Moscow
free-coder GPV-SOFT (500:95 / 550.5, tel :944-04-48 George):
GPV> Hi, in your letter you said a lot, but no conditions.
All conditions, I would not have received any letter.
Especially, I would like to ZX-folk a little practice in
thinking, why not put a restriction on the flight of thought
(although you're right).
GPV> I understand - you need the output sprite XOR.
That result, you reflected upon my squiggles (again you right).
GPV> Why did not you tell how much memory you have,
GPV> what size the sprite, using a second screen, etc.
The answer I gave to the eleven lines above. And in fact: memory
little sprites: the width of 2 or 3 characters. Pos., height
about 16 lines second screen is available and free to all
registers, '-nye too. By the way, the memory can not DJNZ'it to
count the lines in the sprite, and paint everything (although
it is 15 times more bytes will take).
GPV> If the memory of many, the fastest way to output to XOR:
LD A, (HL)
XOR # NN 25 cycles of 1 byte
LD (HL), A
INC L
Here in this place until you have earned bottle of beer. And on
tact, mulberries get more 25, but not the namnogo, but to
my procedures, it is also true, namely, the transition to the
next line (from memory: simple addition of register pairs, and
on the screen: an international procedure DOWN HL).
GPV> For each sprite has its own procedure. These procedures
can be GPV> optimized for the peculiarities of these sprites.
GPV> It all depends on the specific conditions!
GPV> Sincerely, GPV-SOFT (500:95 / 550.5, tel :944-04-48 George)
Golden words! Many thanks for your letter and advice.
*
Now I will try to explain why, in fact, it's all
necessary, and to give more technical information to
stakeholders.
Eighteen months ago, our Diamond group consisting of 8
people decided to seriously engage in the production of toys
under the name "X". Because their ideas were absent, it was
decided to transfer game "WORMS" the platform ZX. We received a
blessing and KSA code support FUX'a (parabolic flight path
projectile). Less than three months, as a super-grafista
HUNTER'a drafted into the army. Further, the game went awry,
and we rushed to a light bread - demostroenie. In 1997 around
12 demos, the best exercises for training in the codes are not
found. During this time the accumulated many of their own
ideas, a copy of the game "WORMS" has turned into a solo
project. In early 1998, the project has been thawed. Many of
the procedures were oprimizirovanny almost doubled, and this is
not the limit. Grafist come from the army, 3 months after
FunTop98 (there will be his work), and while I (Spencer)
tighten procedures to the finish line. 05.26.1998 at Council
sisopov in Izmailovo park our organizer Re-Animator voted. Of
the 25 names proposed game project has been chosen: "FOUR
RASCALS" / Four bastards / because in each team of four
soldiers, the further the game is too early to give information
(which may jinx).
Technical info on sprites.
They overlap (for XOR) in memory for relief, which is also in
sprite form (all bytes are sequentially). Why
for XOR, rather than a mask? First, the clocks and memory in two
times smaller, and secondly, for the relief of black (as in
Tank War), masks, and will not be seen. And why not direct
downloading:
POP DE
LD (HL), E
32 / 2 = 16 cycles per byte INC L
(This is not the limit; LD (HL), D
and can be ...) INC L
But direct downloading 'upper' sprite PREVIOUS score if they
located in one spot relief, and relief is not a straight line
will be overwritten. Interestingly solved this problem VDV CORP
in their game ICE CLIMBER: big sprites are printed and rubbed
each other, but all the sprites in one interrupt are printed in
one (lyuboy!) sequence, and another break in the strict reverse
order. See for yourself in the above (y) aforementioned game by
selecting two players and the "stepped" by one another. And so
- shimmer a little bit.
And on XOR'u can use the procedure a second time, and sprite
away from the old position, and accidentally damaged the relief
is restored. But if someone has a more modern knowledge in this
area, so please - write, because the game I'm doing not for
himself but for our Speccy. Bye.
Spencer Winset / Diamond group
500:95 / 550.8 Evgene Goljakov
Other articles:
|
|
|
|
Programming - the withdrawal of sprites. continued and answers to questions
|
|
|
|
|
|
|