Let us now consider another
interesting procedure, borrowed from the program COMANDO
TRACER. She looks like a smooth
"Damping" the screen from the program
"ZYNAPS", but not meant for the entire screen, and for
given a rectangular window
screen. Listing procedures:
1420.
DB5B 210509 LD HL, # 0905
DB5E CD92DB CALL # DB92
DB61 CDA4DB CALL # DBA4
DB64 3E08 LD A, # 08
DB66 08 EX AF, AF '
DB67 E5 PUSH HL
DB68 0604 LD B, # 04
DB6A CDAEDB CALL # DBAE
DB6D 0E06 LD C, # 2006
DB6F 0616 LD B, # 16
DB71 7E LD A, (HL)
DB72 E607 AND # 07
DB74 CA78DB JP Z, # DB78
DB77 3D DEC A
DB78 77 LD (HL), A
DB79 2C INC L
DB7A 10F5 DJNZ # DB71
DB7C 7D LD A, L
DB7D C60A ADD A, # 0A
DB7F 6F LD L, A
DB80 D284DB JP NC, # DB84
DB83 24 INC H
DB84 0D DEC C
DB85 C26FDB JP NZ, # DB6F
DB88 E1 POP HL
DB89 08 EX AF, AF '
DB8A 3D DEC A
DB8B F266DB JP P, # DB66
DB8E C9 RET
----------------------------- DB92 C5 PUSH BC
DB93 7C LD A, H
DB94 47 LD B, A
DB95 E618 AND # 18
DB97 F640 OR # 40
DB99 67 LD H, A
DB9A 78 LD A, B
DB9B 0F RRCA
DB9C 0F RRCA
DB9D 0F RRCA
DB9E E6E0 AND # E0
DBA0 B5 OR L
DBA1 6F LD L, A
DBA2 C1 POP BC
DBA3 C9 RET
----------------------------- DBA4 7C LD A, H
DBA5 0F RRCA
DBA6 0F RRCA
DBA7 0F RRCA
DBA8 E603 AND # 03
DBAA C658 ADD A, # 58
DBAC 67 LD H, A
DBAD C9 RET
----------------------------- DBAE 76 HALT
DBAF 10FD DJNZ # DBAE
DBB1 C9 RET
2
The procedure performs in a given rectangular window smoother
off-white color INK
to black, thus will PAPER
black.
Before starting the procedure must be given the following
inputs. The team at DB5BH in register HL to be
given coordinates in the familiarity
upper left corner of purified
windows, namely, the H - line; in
L - column. The team at DB6DH in register C is given by
Window height in lines. The team at DB6FH in the register B
sets the width of the window in familiarity. In addition, a
team of at DB7DH as a numerical parameter should be set
number equal to 32 minus the width of the
windows in familiarity. That is, for
our example, the width of the window
22 familiarity (in case B was set to 16H), a numerical
parameter in the command at DB7DH should be 10 (0A).
The time constant of the procedure
Cleaning windows can be adjusted within wide limits by changing
the numerical parameter in the command at DB68H. Here is
entered in the register parameter delay loop (sub DBAEH).
To obtain the code block
"Attenuation window, you can use BASIC program:
1 READ ram: CLEAR ram: READ f
$: READ st: READ len: FOR a = st T
O st + len-1: READ b: POKE a, b: NE
XT a: SAVE f $ CODE st, len
1910 DATA 56154, "tr3", 56155,87
100 DATA
033,005,009,205,146,219,205,164,
219,062,008,008,229,006,004,205,
174,219,014,006,006,022,126,230,
007,202,120,219,061,119,044,016
110 DATA
245,125,198,010,111,210,132,219,
036,013,194,111,219,225,008,061,
242,102,219,201,000,000,000,197,
124,071,230,024,246,064,103,120
120 DATA
015,015,015,230,224,181,111,193,
201,124,015,015,015,230,003,198,
088,103,201,118,016,253,201
Below is a BASIC program that demonstrates "the attenuation
box. Here, in line 30 on screen can be downloaded every
picture-saver.
10 BORDER 0: PAPER 0: INK 7: C
LEAR 56154
20 LOAD "tr3" CODE
30 LOAD "tracer $" CODE 16384
1940 BEEP .1,26: BEEP .1,20: PAU
SE 0
50 RANDOMIZE USR 56155
This concludes the disassembly
program COMANDO TRACER.