|  
 
Этюды - процедура очистки экрана оригинальным способом. 
  
 |   
ЭТЮДЫ 
Первая производит очистку экрана оригинальным способом, как бы расщепляя его, задвигая при этом вверх и вниз. Сам экран располагается с адреса BUFF и переносится самой программой. После появления картинки на экране нужно нажать SPACE для продолжения. Для изменения скорости расползания необходимо  
;Fz=1 -> found at HL 
EX LD CPIR 
RET NZ ;Fz=0 -> not found 
PUSH HL PUSH DE  
SEEKER 
(LB.SK1 + 1), A 
AF.AF' A.(DE) 
LD 
28 
29 
30 
31 
32 
33 
34 
35 
36 
NZ.SD1 
DE 
L_UP 
DE.HL 
DE 
L_UP 
SD 
HL, 16384 C,16  
JR 
POP 
CALL 
EX 
POP 
CALL 
DJNZ 
LD 
LD  
изменить шаг, т.е. число линии, на которое раздвигается экран за один проход Все строки, которые нужно изменить, выделены в листинге. Длину я старался сделать как можно меньше, но получилась 171 байт. 
(С) Program 'Crawl' by E.Kulikaev '96.  
| 
 1  | 
 ORG  | 
 40000  |  
| 
 2  | 
 ENT  | 
 $  |  
| 
 3 BUFF  | 
 EQU  | 
 30000  |  
| 
 4  | 
 LD  | 
 HL.BUFF  |  
| 
 5  | 
 LD  | 
 DE, 16384  |  
| 
 6  | 
 LD  | 
 BC.6144  |  
| 
 7  | 
 LDIR  | 
 |  
| 
 8PAU  | 
 LD  | 
 A,#7F  |  
| 
 9  | 
 IN  | 
 A,(#FE)  |  
| 
 10  | 
 RRA  | 
 |  
| 
 11  | 
 JR  | 
 C,PAU  |  
| 
 12SCR1  | 
 LD  | 
 В ,24/2  |  
  
Сколько раз происходит скролинг Рассчитываемое по формуле 24/(шаг/8) число, должно быть целым.  
Кол-во очищаемых сверху 
| 
 линий.  |  
| 
 37 SD3  | 
 PUSH  | 
 HL  |  
| 
 38  | 
 LD  | 
 B,32  |  
| 
 39 SD2  | 
 LD  | 
 A,(HL)  |  
| 
 40  | 
 AND  | 
 %10101010  |  
| 
 41  | 
 LD  | 
 (HL),A  |  
| 
 42  | 
 INC  | 
 HL  |  
| 
 43  | 
 DJNZ  | 
 SD2  |  
| 
 44  | 
 POP  | 
 DE  |  
| 
 45  | 
 CALL  | 
 L DE  |  
| 
 46  | 
 EX  | 
 DE.HL  |  
| 
 47  | 
 DEC  | 
 С  |  
| 
 48  | 
 JR  | 
 NZ.SD3  |  
| 
 49  | 
 LD  | 
 HL, 16384+6  |  
 
ВС 
HL,22527-95 
, Адрес 16-ой снизу линии экрана. 
DE,22527-31 В,192-16 
;Кол-во скроллируемых вниз линий. 
| 
 17 SD  | 
 PUSH  | 
 DE  |  
| 
 18  | 
 PUSH  | 
 HL  |  
| 
 19  | 
 LD  | 
 C,32  |  
| 
 20 SD1  | 
 LD  | 
 A,(DE)  |  
| 
 21  | 
 XOR  | 
 (HL)  |  
| 
 22  | 
 AND  | 
 % 10101010  |  
| 
 23  | 
 XOR  | 
 (HL)  |  
| 
 24  | 
 LD  | 
 (DE),A  |  
| 
 25  | 
 INC  | 
 DE  |  
| 
 26  | 
 INC  | 
 HL  |  
| 
 27  | 
 DEC  | 
 С  |  
 
Адрес 16-ой линии экрана сверху. 
| 
 50  | 
 LD  | 
 DE, 16384  |  
| 
 51  | 
 LD  | 
 B.192-16  |  
| 
 ; Кол-во скроллируемых вверх  |  
| 
 линий экрана.  | 
 |  
| 
 52 SU  | 
 PUSH  | 
 DE  |  
| 
 53  | 
 PUSH  | 
 HL  |  
| 
 54  | 
 LD  | 
 C,32  |  
| 
 55 SU1  | 
 LD  | 
 A,(DE)  |  
| 
 56  | 
 XOR  | 
 (HL)  |  
| 
 57  | 
 AND  | 
 %01010101  |  
| 
 58  | 
 XOR  | 
 (HL)  |  
| 
 59  | 
 LD  | 
 (DE),A  |  
| 
 60  | 
 INC  | 
 DE  |  
| 
 61  | 
 INC  | 
 HL  |  
| 
 62  | 
 DEC  | 
 С  |  
| 
 63  | 
 JR  | 
 NZ.SU 1  |  
 
ZX W/t»% 
64 POP DE 
65 CALL L_DE 
66 EX DE.HL 
67 POP DE 
68 CALL L_DE 
69 DJNZ SU 
70 LD HL.22527-95 
; Адрес 16-ой линии экрана снизу. 
71 LD С,17 
;Кол-во очищаемых внизу линий. 
| 
 72 SU3  | 
 PUSH  | 
 HL  |  
| 
 73  | 
 LD  | 
 B,32  |  
| 
 74 SU2  | 
 LD  | 
 A,(HL)  |  
| 
 75  | 
 AND  | 
 %01010101  |  
| 
 76  | 
 LD  | 
 (HL),A  |  
| 
 77  | 
 INC  | 
 HL  |  
| 
 78  | 
 DJNZ  | 
 SU2  |  
| 
 79  | 
 POP  | 
 DE  |  
| 
 80  | 
 CALL  | 
 L DE  |  
| 
 81  | 
 EX  | 
 DE.HL  |  
| 
 82  | 
 DEC  | 
 С  |  
| 
 83  | 
 JR  | 
 NZ.SU3  |  
| 
 84  | 
 POP  | 
 ВС  |  
| 
 85  | 
 DJNZ  | 
 LSCR  |  
| 
 86  | 
 RET  | 
 |  
| 
 87 L DE  | 
 INC  | 
 D  |  
| 
 88  | 
 LD  | 
 A.D  |  
| 
 89  | 
 AND  | 
 7  |  
| 
 90  | 
 RET  | 
 NZ  |  
| 
 91  | 
 LD  | 
 A.E  |  
| 
 92  | 
 ADD  | 
 A.32  |  
| 
 93  | 
 LD  | 
 E.A  |  
| 
 94  | 
 RET  | 
 С  |  
| 
 95  | 
 LD  | 
 A.D  |  
| 
 96  | 
 SUB  | 
 8  |  
| 
 97  | 
 LD  | 
 D.A  |  
| 
 98  | 
 RET  | 
 |  
| 
 99 L UP  | 
 DEC  | 
 D  |  
| 
 100  | 
 LD  | 
 A.D  |  
| 
 101  | 
 AND  | 
 7  |  
| 
 102  | 
 CP  | 
 7  |  
| 
 103  | 
 RET  | 
 NZ  |  
| 
 104  | 
 LD  | 
 A.E  |  
 
ЭТЮДЫ 
105 SUB 32 
106 LD Е,А 
107 RET С 
108 LD A,D 
109 ADD A,8 
110 LD D,A 
111 RET 
 
СОДЕРЖАНИЕ: 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 Форум-Игры - в разделе рассмотрены: Dun Darach, Murray Mause (Supercop), Wild West Seymour, Sim City, Hero Quest, Dizzy-Y, Apollo, Cliffhanger, Laser Squad, Movie, Elite, Where Time Stood Still, Sceptre, Carrier Command, Math Day.
 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
- 
 
 
 
  
 |