Coding - Maybe you remember the 2nd old issue of psychosis? There was such a feature in the engine as text animation. It looked good. want to know how it all worked?

Psychoz #08
may remember the 2nd old issue  
psychosis?  there was such a feature in the engine as  
text animation.  It looked good. want  
know how it all worked?                       
   
well, for starters, I translated the entire text of the article  
into one big sprite. because the print height was b  
pixels - b*e2=192 bytes per line. B  
I remember 5b of these lines on the page.  
The whole joke was that when the lines  
displayed on the screen - they were displayed through one  
a simple sign.   I'll try to explain.  
for example, the number of the top line in the text is 11. by  
idea is necessaryprint sprite 11 at the top, then  
below the 12th and so on. well, if you create a “map”  
text lines? those. top line 11 - take  
one byte from such a plate with an offset of 11*e  
page numbers where the line sprite is located, and two  
byte - address in this page.  Here you go  
the ability to make text anima by changing this  
the sign itself.                                   
   
 I also did the same with attributes. In the text, if  
the first byte in the line was a comma, then after it  
was the attribute code of this line.  If not  
stands - it means the line has the same color as  
previous.  An attribute table was compiledfor  
lines.  those.  1 byte*number of lines. well, what if  
the code after the decimal point was zero - I just saved  
offset in the attribute sprite and each int  
sent a random number there.  That's how they did it  
flashing lines.                                  
   
just don't forget that with this  
print both attributes and text  
every int.                            
   
also with a sprite layout you can use ints  
or otherwise change ready-made spits. For example, I  
made running lines in the text and indicators onI didn’t insert music, though. for reason  
laziness.  because of her, anime was only used  
only once ;)   
   
In this situation, you can also do  
multi-font.   Everything will be reflected only on  
decrunch speed at the very beginning.                 
   
all this is printed for those who don't know ;)  
in the fastest and easiest way:   
   
por hl   
ld (adr),hl   
por hl                                          
ld (adr*2),hl                                     
...                                               

Share your thoughts about the article