ZX Forum #04
19 ноября 1997

screen effects - a complex multi-effects from the game Bubbler.

<b>screen effects</b> - a complex multi-effects from the game Bubbler.
            BUBBLER


   In this program, plaque
brand name of the game and attributes of the manufacturer at 
first slowly descends from above, prorisovyvayas on a black 
background screen. Then this tablichkasprayt starts swirling 
around a horizontal axis, The color of it changes from white

to yellow (when you turn upside down). The rotation occurs 
before pressing any key, after which the plate-sprite "freezes" 
in the state in which it caught the keystroke,

stopped turning, and gently
"Flies" up and disappear from the screen.

   The proposed procedure reproduces the complex multi-effects, 
so it is quite heavy. Here is its listing: 1420.

E283 F5 PUSH AF
E284 FDE5 PUSH IY
E286 DDE5 PUSH IX
E288 D9 EXX
E289 E5 PUSH HL
E28A D5 PUSH DE
E28B C5 PUSH BC
E28C D9 EXX
E28D E5 PUSH HL
E28E D5 PUSH DE
E28F C5 PUSH BC
E290 ED73A9E2 LD (# E2A9), SP
E294 CD66E3 CALL # E366
E297 ED7BA9E2 LD SP, (# E2A9)
E29B C1 POP BC
E29C D1 POP DE
E29D E1 POP HL
E29E D9 EXX
E29F C1 POP BC
E2A0 D1 POP DE
E2A1 E1 POP HL
E2A2 D9 EXX
E2A3 DDE1 POP IX
E2A5 FDE1 POP IY
E2A7 F1 POP AF
E2A8 C9 RET
----------------------------- E2A9 00 00
E2AB 17 8E 00 80
----------------------------- E2AF ED5BABE2 LD DE, (# E2AB)
E2B3 2AADE2 LD HL, (# E2AD)
E2B6 7E LD A, (HL)
E2B7 C605 ADD A, # 05
E2B9 47 LD B, A
E2BA 3ADE5C LD A, (# 5CDE)
E2BD 80 ADD A, B
E2BE 83 ADD A, E
E2BF 5F LD E, A
E2C0 7E LD A, (HL)
E2C1 2F CPL
E2C2 C616 ADD A, # 16
E2C4 82 ADD A, D
E2C5 85 ADD A, L
E2C6 57 LD D, A
E2C7 ED53ABE2 LD (# E2AB), DE
E2CB 23 INC HL
E2CC 7C LD A, H
E2CD E69F AND # 9F
E2CF 67 LD H, A
E2D0 22ADE2 LD (# E2AD), HL
E2D3 C9 RET
----------------------------- E2D4 00 00 00
----------------------------- E2D7 3600 LD (HL), # 00
E2D9 23 INC HL
E2DA 10FB DJNZ # E2D7
E2DC C9 RET
----------------------------- E2DD DBFE IN A, (# FE)
E2DF 2F CPL
E2E0 E61F AND # 1F
E2E2 C9 RET
----------------------------- E2E3 ED73D85C LD (# 5CD8), SP
E2E7 31005B LD SP, # 5B00
E2EA 010280 LD BC, # 8002
E2ED 114747 LD DE, # 4747
E2F0 C300E3 JP # E300
----------------------------- E2F3 ED73D85C LD (# 5CD8), SP
E2F7 310,058 LD SP, # 5800
E2FA 010C00 LD BC, # 000C
E2FD 110000 LD DE, # 0000
E300 D5 PUSH DE
E301 10FD DJNZ # E300
E303 0D DEC C
E304 20FA JR NZ, # E300
E306 ED7BD85C LD SP, (# 5CD8)
E30A C9 RET
----------------------------- E30B CB3C SRL H
E30D CB3C SRL H
E30F CB3C SRL H
E311 CB3C SRL H
E313 CB1D RR L
E315 CB3C SRL H
E317 CB1D RR L
E319 CB3C SRL H
E31B CB1D RR L
E31D 7C LD A, H
E31E C658 ADD A, # 58
E320 67 LD H, A
E321 C9 RET
----------------------------- E322 85 ADD A, L
E323 6F LD L, A
E324 D0 RET NC
E325 24 INC H
E326 C9 RET
----------------------------- E327 00 00 00
----------------------------- E32A 1127E3 LD DE, # E327
E32D E5 PUSH HL
E32E CD0BE3 CALL # E30B
E331 1A LD A, (DE)
E332 3244E3 LD (# E344), A
E335 C61E ADD A, # 1E
E337 2F CPL
E338 324CE3 LD (# E34C), A
E33B 13 INC DE
1420.E33C 1A LD A, (DE)
E33D 4F LD C, A
E33E 13 INC DE
E33F 1A LD A, (DE)
E340 3246E3 LD (# E346), A
E343 0600 LD B, # 00
E345 3600 LD (HL), # 00
E347 2C INC L
E348 10FB DJNZ # E345
E34A 2D DEC L
E34B 1100FF LD DE, # FF00
E34E 19 ADD HL, DE
E34F 0D DEC C
E350 20F1 JR NZ, # E343
E352 E1 POP HL
E353 C9 RET
----------------------------- E354 30 FF 2F F7
E358 2D ED 28 D3
E35C 22 B2 1B 8E
E360 13 63 0A 33
E364 00 00
----------------------------- E366 21140E LD HL, # 0E14
E369 2227E3 LD (# E327), HL
E36C CDF3E2 CALL # E2F3
E36F CDE3E2 CALL # E2E3
E372 AF XOR A
E373 32DC5C LD (# 5CDC), A
E376 32DD5C LD (# 5CDD), A
E379 3C INC A
E37A 32FEFF LD (# FFFE), A
E37D CD7FE5 CALL # E57F
E380 3ADC5C LD A, (# 5CDC)
E383 47 LD B, A
E384 FE09 CP # 09
E386 380A JR C, # E392
E388 FE11 CP # 11
E38A 3804 JR C, # E390
E38C FE18 CP # 18
3802 E38E JR C, # E392
E390 ED44 NEG
E392 E60F AND # 0F
E394 87 ADD A, A
E395 2154E3 LD HL, # E354
E398 CD22E3 CALL # E322
E39B 4E LD C, (HL)
E39C 23 INC HL
E39D 5E LD E, (HL)
E39E 79 LD A, C
E39F B3 OR E
E3A0 201A JR NZ, # E3BC
E3A2 D9 EXX
E3A3 3AFEFF LD A, (# FFFE)
E3A6 3C INC A
E3A7 E601 AND # 01
E3A9 32FEFF LD (# FFFE), A
E3AC C646 ADD A, # 46
E3AE 3229E3 LD (# E329), A
E3B1 213077 LD HL, # 7730
E3B4 CD2AE3 CALL # E32A
E3B7 D9 EXX
E3B8 1802 JR # E3BC
----------------------------- E3BA 18C1 JR # E37D
----------------------------- E3BC 21E8FF LD HL, # FFE8
E3BF 22FCFF LD (# FFFC), HL
E3C2 78 LD A, B
E3C3 FE09 CP # 09
E3C5 380E JR C, # E3D5
E3C7 FE19 CP # 19
E3C9 300A JR NC, # E3D5
E3CB 211800 LD HL, # 0018
E3CE 22FCFF LD (# FFFC), HL
E3D1 79 LD A, C
E3D2 ED44 NEG
E3D4 4F LD C, A
E3D5 3E47 LD A, # 47
E3D7 81 ADD A, C
E3D8 67 LD H, A
E3D9 2E10 LD L, # 10
E3DB 7B LD A, E
E3DC D9 EXX
E3DD 5F LD E, A
E3DE 1600 LD D, # 00
E3E0 6A LD L, D
E3E1 62 LD H, D
E3E2 D9 EXX
E3E3 CD9EE5 CALL # E59E
E3E6 1100F7 LD DE, # F700
E3E9 1824 JR # E40F
----------------------------- E3EB 3ADD5C LD A, (# 5CDD)
E3EE A7 AND A
E3EF 2007 JR NZ, # E3F8
E3F1 3D DEC A
E3F2 32DD5C LD (# 5CDD), A
E3F5 CD61E4 CALL # E461
E3F8 CDCCE4 CALL # E4CC
E3FB AF XOR A
E3FC CDDDE2 CALL # E2DD
E3FF C22FE4 JP NZ, # E42F
E402 18B6 JR # E3BA
----------------------------- E404 3ADC5C LD A, (# 5CDC)
E407 3C INC A
E408 E61F AND # 1F
E40A 32DC5C LD (# 5CDC), A
E40D 18DC JR # E3EB
----------------------------- E40F 0E60 LD C, # 1960
E411 0614 LD B, # 14
E413 E5 PUSH HL
E414 1A LD A, (DE)
E415 B6 OR (HL)
E416 77 LD (HL), A
E417 13 INC DE
E418 23 INC HL
E419 10F9 DJNZ # E414
E41B E1 POP HL
E41C 0D DEC C
E41D 28E5 JR Z, # E404
E41F D9 EXX
E420 7C LD A, H
E421 19 ADD HL, DE
E422 BC CP H
E423 D9 EXX
E424 28EB JR Z, # E411
E426 1979 LD A, C
E427 ED4BFCFF LD BC, (# FFFC)
E42B 09 ADD HL, BC
E42C 4F LD C, A
E42D 18E2 JR # E411
----------------------------- E42F 21C64F LD HL, # 4FC6
E432 0614 LD B, # 14
E434 CDD7E2 CALL # E2D7
E437 21CDF0 LD HL, # F0CD
E43A 062C LD B, # 2C
E43C CDD7E2 CALL # E2D7
E43F 3E07 LD A, # 07
E441 32D85C LD (# 5CD8), A
E444 FD2AF15C LD IY, (# 5CF1)
E448 FB EI
E449 76 HALT
E44A 3AD85C LD A, (# 5CD8)
E44D FE77 CP # 77
E44F F3 DI
E450 C8 RET Z
E451 FD2AF15C LD IY, (# 5CF1)
E455 FB EI
E456 3C INC A
E457 3C INC A
E458 32D85C LD (# 5CD8), A
E45B CD87E4 CALL # E487
E45E C34AE4 JP # E44A
----------------------------- E461 3E10 LD A, # 10
E463 32E95C LD (# 5CE9), A
E466 3E78 LD A, # 78
E468 32D85C LD (# 5CD8), A
E46B FD2AF15C LD IY, (# 5CF1)
E46F FB EI
E470 3AD85C LD A, (# 5CD8)
E473 F3 DI
E474 FE08 CP # 08
E476 C8 RET Z
E477 FD2AF15C LD IY, (# 5CF1)
E47B FB EI
E47C 3D DEC A
E47D 3D DEC A
E47E 32D85C LD (# 5CD8), A
E481 CD87E4 CALL # E487
E484 C370E4 JP # E470
----------------------------- E487 67 LD H, A
E488 2E10 LD L, # 10
E48A ED73DA5C LD (# 5CDA), SP
E48E CD9EE5 CALL # E59E
E491 76 HALT
E492 F3 DI
E493 F9 LD SP, HL
E494 114802 LD DE, # 0248
E497 1B DEC DE
E498 7A LD A, D
E499 B3 OR E
E49A 20FB JR NZ, # E497
E49C 3AD85C LD A, (# 5CD8)
E49F C687 ADD A, # 87
E4A1 2F CPL
E4A2 47 LD B, A
E4A3 C32BE5 JP # E52B
----------------------------- E4A6 BD E5 D5 E5
E4AA ED E5 05 E6
E4AE 1D E6 35 E6
E4B2 4D E6 65 E6
E4B6 7D E6 95 E6
E4BA AD E6 C5 E6
E4BE DD E6 F5 E6
E4C2 0D E7 25 E7
E4C6 00 00 00 00
E4CA 00 00
----------------------------- E4CC 3AD4E2 LD A, (# E2D4)
E4CF E607 AND # 07
E4D1 203A JR NZ, # E50D
E4D3 3A01FF LD A, (# FF01)
E4D6 E680 AND # 80
E4D8 2830 JR Z, # E50A
E4DA 3AC7E4 LD A, (# E4C7)
E4DD A7 AND A
E4DE 282D JR Z, # E50D
E4E0 3A00FF LD A, (# FF00)
E4E3 3D DEC A
E4E4 3E00 LD A, # 00
E4E6 2022 JR NZ, # E50A
E4E8 3AC6E4 LD A, (# E4C6)
E4EB 3203FF LD (# FF03), A
E4EE 3AC7E4 LD A, (# E4C7)
E4F1 D620 SUB # 20
E4F3 47 LD B, A
E4F4 3ACBE4 LD A, (# E4CB)
E4F7 E6F0 AND # F0
E4F9 B0 OR B
E4FA 3202FF LD (# FF02), A
E4FD 3AC9E4 LD A, (# E4C9)
E500 3204FF LD (# FF04), A
E503 3AC8E4 LD A, (# E4C8)
E506 3205FF LD (# FF05), A
E509 AF XOR A
E50A 32C7E4 LD (# E4C7), A
E50D 2AD4E2 LD HL, (# E2D4)
E510 23 INC HL
E511 22D4E2 LD (# E2D4), HL
E514 CDAFE2 CALL # E2AF
E517 ED73DA5C LD (# 5CDA), SP
E51B 3AE95C LD A, (# 5CE9)
E51E 21A6E4 LD HL, # E4A6
E521 CD22E3 CALL # E322
E524 5E LD E, (HL)
E525 23 INC HL
E526 56 LD D, (HL)
E527 0670 LD B, # 70
E529 EB EX DE, HL
E52A F9 LD SP, HL
E52B 212640 LD HL, # 4026
E52E C344E5 JP # E544
----------------------------- E531 69 LD L, C
E532 24 INC H
E533 7C LD A, H
E534 E607 AND # 07
E536 C244E5 JP NZ, # E544
E539 7D LD A, L
E53A C620 ADD A, # 20
E53C 6F LD L, A
E53D DA44E5 JP C, # E544
E540 7C LD A, H
E541 D608 SUB # 08
E543 67 LD H, A
E544 4D LD C, L
E545 D1 POP DE
E546 73 LD (HL), E
E547 2C INC L
E548 72 LD (HL), D
E549 2C INC L
E54A D1 POP DE
E54B 73 LD (HL), E
E54C 2C INC L
E54D 72 LD (HL), D
E54E 2C INC L
E54F D1 POP DE
E550 73 LD (HL), E
E551 2C INC L
E552 72 LD (HL), D
E553 2C INC L
E554 D1 POP DE
E555 73 LD (HL), E
E556 2C INC L
E557 72 LD (HL), D
E558 2C INC L
E559 D1 POP DE
E55A 73 LD (HL), E
E55B 2C INC L
E55C 72 LD (HL), D
E55D 2C INC L
E55E D1 POP DE
E55F 73 LD (HL), E
E560 2C INC L
E561 72 LD (HL), D
E562 2C INC L
E563 D1 POP DE
E564 73 LD (HL), E
E565 2C INC L
E566 72 LD (HL), D
E567 2C INC L
E568 D1 POP DE
E569 73 LD (HL), E
E56A 2C INC L
E56B 72 LD (HL), D
E56C 2C INC L
E56D D1 POP DE
E56E 73 LD (HL), E
E56F 2C INC L
E570 72 LD (HL), D
E571 2C INC L
E572 D1 POP DE
E573 73 LD (HL), E
E574 2C INC L
E575 72 LD (HL), D
E576 D1 POP DE
E577 D1 POP DE
E578 10B7 DJNZ # E531
E57A ED7BDA5C LD SP, (# 5CDA)
E57E C9 RET
----------------------------- E57F ED73DA5C LD (# 5CDA), SP
E583 31BBF1 LD SP, # F1BB
E586 0680 LD B, # 80
E588 110000 LD DE, # 0000
E58B D5 PUSH DE
E58C D5 PUSH DE
E58D D5 PUSH DE
E58E D5 PUSH DE
E58F D5 PUSH DE
E590 D5 PUSH DE
E591 D5 PUSH DE
E592 D5 PUSH DE
E593 D5 PUSH DE
E594 D5 PUSH DE
E595 D5 PUSH DE
E596 D5 PUSH DE
E597 10F2 DJNZ # E58B
E599 ED7BDA5C LD SP, (# 5CDA)
E59D C9 RET
----------------------------- E59E D5 PUSH DE
E59F 7D LD A, L
E5A0 1F RRA
E5A1 1F RRA
E5A2 1F RRA
E5A3 E61F AND # 1F
E5A5 F5 PUSH AF
E5A6 6C LD L, H
E5A7 2600 LD H, # 2000
E5A9 29 ADD HL, HL
E5AA 29 ADD HL, HL
E5AB 29 ADD HL, HL
E5AC 5D LD E, L
E5AD 54 LD D, H
E5AE 29 ADD HL, HL
E5AF 19 ADD HL, DE
E5B0 F1 POP AF
E5B1 5F LD E, A
E5B2 1600 LD D, # 00
E5B4 19 ADD HL, DE
E5B5 11BBE5 LD DE, # E5BB
E5B8 19 ADD HL, DE
E5B9 D1 POP DE
E5BA C9 RET
2

   The procedure, performed in the game BUBBLER effect, 
mentioned above, was dispersed throughout the memory so that 
code fragments slightly modified, with

to unite into a compact
block. Furthermore, to correctly return to the BASIC had
before calling the proper procedure to preserve the stack 
values ​​of all processor registers, and as the value of the 
stack special memory cell

(E2A9H). All this happens in
caller from the address
E283H.

   When operating procedure (during the modification of the 
sprite) used almost the entire area with Address E5BBH to 
FFFFH, so that desirable to have this

place any other components
codes.

   The very picture-sprite is located at address F700H. Sprite 
is recorded in a special format. He has the dimensions: 20 
familiarity in width and 12 familiarity in height.

As you can see, it overrides
Segment (1 / 3) of the screen height and
does not fully utilize the screen on
width. In order to save memory
and additional protection against unauthorized access 
(difficulties making changes) sprite is recorded in a special

"Continuous" format that is different from the segmented 
structure of the screen. At 8 bytes for each familiarity gets 
20 * 12 * 8 = 1920 bytes.


   Procedure call is made
team RANDOMIZE USR 57987.

   For a set of code block
(File "bub1" CODE) you can
use the 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 57986, "bub1", 57987,824
 100 DATA
245,253,229,221,229,217,229,213,
197,217,229,213,197,237,115,169,
226,205,102,227,237,123,169,226,
193,209,225,217,193,209,225,217
 110 DATA
221,225,253,225,241,201,000,000,
023,142,000,128,237,091,171,226,
042,173,226,126,198,005,071,058,
222,092,128,131,095,126,047,198
 120 DATA
022,130,133,087,237,083,171,226,
035,124,230,159,103,034,173,226,
201,000,000,000,054,000,035,016,
251,201,219,254,047,230,031,201
 130 DATA
237,115,216,092,049,000,091,001,
002,128,017,071,071,195,000,227,
237,115,216,092,049,000,088,001,
012,000,017,000,000,213,016,253
 140 DATA
013,032,250,237,123,216,092,201,
203,060,203,060,203,060,203,060,
203,029,203,060,203,029,203,060,
203,029,124,198,088,103,201,133
 150 DATA
111,208,036,201,000,000,000,017,
039,227,229,205,011,227,026,050,
068,227,198,030,047,050,076,227,
019,026,079,019,026,050,070,227
 160 DATA
006,000,054,000,044,016,251,045,
017,000,255,025,013,032,241,225,
201,048,255,047,247,045,237,040,
211,034,178,027,142,019,099,010
 170 DATA
051,000,000,033,020,014,034,039,
227,205,243,226,205,227,226,175,
050,220,092,050,221,092,060,050,
254,255,205,127,229,058,220,092
 180 DATA
071,254,009,056,010,254,017,056,
004,254,024,056,002,237,068,230,
015,135,033,084,227,205,034,227,
078,035,094,121,179,032,026,217
 190 DATA
058,254,255,060,230,001,050,254,
255,198,070,050,041,227,033,048,
119,205,042,227,217,024,002,024,
193,033,232,255,034,252,255,120
 200 DATA
254,009,056,014,254,025,048,010,
033,024,000,034,252,255,121,237,
068,079,062,071,129,103,046,016,
123,217,095,022,000,106,098,217
 210 DATA
205,158,229,017,000,247,024,036,
058,221,092,167,032,007,061,050,
221,092,205,097,228,205,204,228,
175,205,221,226,194,047,228,024
 220 DATA
182,058,220,092,060,230,031,050,
220,092,024,220,014,096,006,020,
229,026,182,119,019,035,016,249,
225,013,040,229,217,124,025,188
 230 DATA
217,040,235,121,237,075,252,255,
009,079,024,226,033,198,079,006,
020,205,215,226,033,205,240,006,
044,205,215,226,062,007,050,216
 240 DATA
092,253,042,241,092,251,118,058,
216,092,254,119,243,200,253,042,
241,092,251,060,060,050,216,092,
205,135,228,195,074,228,062,016
 250 DATA
050,233,092,062,120,050,216,092,
253,042,241,092,251,058,216,092,
243,254,008,200,253,042,241,092,
251,061,061,050,216,092,205,135
 260 DATA
228,195,112,228,103,046,016,237,
115,218,092,205,158,229,118,243,
249,017,072,002,027,122,179,032,
251,058,216,092,198,135,047,071
 270 DATA
195,043,229,189,229,213,229,237,
229,005,230,029,230,053,230,077,
230,101,230,125,230,149,230,173,
230,197,230,221,230,245,230,013
 280 DATA
231,037,231,000,000,000,000,000,
000,058,212,226,230,007,032,058,
058,001,255,230,128,040,048,058,
199,228,167,040,045,058,000,255
 290 DATA
061,062,000,032,034,058,198,228,
050,003,255,058,199,228,214,032,
071,058,203,228,230,240,176,050,
002,255,058,201,228,050,004,255
 300 DATA
058,200,228,050,005,255,175,050,
199,228,042,212,226,035,034,212,
226,205,175,226,237,115,218,092,
058,233,092,033,166,228,205,034
 310 DATA
227,094,035,086,006,112,235,249,
033,038,064,195,068,229,105,036,
124,230,007,194,068,229,125,198,
032,111,218,068,229,124,214,008
 320 DATA
103,077,209,115,044,114,044,209,
115,044,114,044,209,115,044,114,
044,209,115,044,114,044,209,115,
044,114,044,209,115,044,114,044
 330 DATA
209,115,044,114,044,209,115,044,
114,044,209,115,044,114,044,209,
115,044,114,209,209,016,183,237,
123,218,092,201,237,115,218,092
 340 DATA
049,187,241,006,128,017,000,000,
213,213,213,213,213,213,213,213,
213,213,213,213,016,242,237,123,
218,092,201,213,125,031,031,031
 350 DATA
230,031,245,108,038,000,041,041,
041,093,084,041,025,241,095,022,
000,025,017,187,229,025,209,201


   Now about the picture-sprite.
Sprite from the game takes BUBBLER
about 2K, so it makes no sense to bring him in as a dump
to recruit, the more so because interest is the use
own material. However,
You can "pull" the sprite
"BUBBLER" from the game by typing:


   SAVE "bub2" CODE 63232,1920.


   You can prepare your
image using any photo editor (eg,
ARTSTUDIO). We only have the image is not centered,
how it will be in the program,
shifted into the upper left corner
screen. In addition, we must remember that its size must be
12 lines of vertical and 20 horizontal familiarity. If your 
picture is smaller, we must take into account the symmetry 
about the field 12h20. When you work it is desirable to use a 
black background and white ink - so the image will look like

on the screen, but the value has
only on or off pixels of color information
in the future, the sprite will not.

   Once the image
done, and encode the sprite
in "continuous" format. To handle sprite (two-way conversion, 
the demonstration effect and record the load sprite and the 
screen) created a special BASIC program "BUB" (below). After

Autostart from line 2 Georgia
files "bub1" CODE 57987,824 - it
code procedures given
above, and "bub2" CODE 63232,1920 -
sprite, borrowed from the program BUBBLER.


  1 GO TO 100

  2 BORDER 1: CLEAR 57986: LOAD
"Bub1" CODE

  3 LOAD "bub2" CODE

  4 RUN

  5 CLEAR: SAVE "BUB" LINE 2:
STOP
100 GO SUB 2000: INPUT;: PRINT
AT 14,1; "0 - DEMONSTRATION";
AT 15,1; "1 - CODING SPRITE";
AT 16,1; "2 - DECODING SPRITE";
AT 17,1; "3 - LOAD SCREEN $";
AT 18,1; "4 - SAVE SCREEN $";
AT 19,1; "5 - LOAD SPRITE";
AT 20,1; "6 - SAVE SPRITE": BEEP
.1,20
120 PAUSE 0: LET I $ = INKEY $: IF
INKEY $ <"0" OR INKEY $> "6" THEN G
O TO 120
 130 IF INKEY $ = "0" THEN BORDER
0: RANDOMIZE USR 57987: BORDER 1
: CLS: GO TO 100
 140 IF INKEY $ = "one" OR INKEY $ = "2"
 THEN GO TO 500
 150 IF i $ = "3" THEN LOAD "" CODE
16384,6912
 160 IF i $ = "4" THEN INPUT "FILE
NAME: "; f $: SAVE f $ CODE 16384,69
12
 170 IF i $ = "5" THEN LOAD "" CODE
63232,1920
 180 IF i $ = "6" THEN INPUT "FILE
NAME: "; f $: SAVE f $ CODE 63232,19
20
 190 GO TO 100
 500 LET r = 65132: LET c = 0
 510 PRINT # 0; FLASH 1; "

        Please, wait ...
"
 520 FOR m = 0 TO 7
 530 GO SUB 1000
 540 NEXT m
 550 LET r = 63852: LET c = 1
 560 FOR m = 0 TO 3
 570 GO SUB 1000
 580 NEXT m
 599 GO TO 100
1000 FOR l = 0 TO 7
1010 LET s = 16384 +256 * l +32 * m +2048
* C
1020 FOR i = 0 TO 19
1030 IF I $ = "2" THEN POKE (s + i),
PEEK (r + i)
1040 IF I $ = "1" THEN POKE (r + i),
PEEK (s + i)
1050 NEXT i
1060 LET r = r-20
1070 NEXT l
1080 RETURN
2000 FOR a = 0 TO 11: PRINT AT a, 0
; PAPER 6; OVER 1; "

       ": NEXT a
2010 FOR a = 13 TO 21: PRINT AT a,
0; "

   ": NEXT a
2020 RETURN


   After starting the program "BUB"
You see the title menu.

   Pressing "3", you can download harvested picture screen with 
the future of sprites. Pressing "1", perform coding images in a 
sprite. By clicking the "6", you Save the sprite to

subsequent incorporation into their
program. When you press "0" you
will show the whole effect as it would be in your
future program. When you press
"2", then "4", you can decode the sprite and
then save it for later editing it with
assistance ARTSTUDIO.


           *







Other articles:

Help - Description of the shell of an electronic book "ZX-FORUM 4.

Secrets of Successful Design - Head for the book "Design your Programs

screen effects - Running a string of R-Type.

screen effects - clearing the screen of Zynaps.

screen effects - "minimize" the screen from Comando Tracer.

screen effects - smooth "decay" of the screen Sommando Tracer.

screen effects - changed the character set for the original stylized font from the game Rockstar.

screen effects - "running out the string" out of the game Rockstar.

screen effects - "pouring" the screen of the game Rockstar.

screen effects - a complex multi-effects from the game Bubbler.

New top 40 procedures - scrolling display, a fusion of two images, inverting screen, rotate characters, replacement of attributes, fill a closed loop, the calculation of addresses in the screen, copy of the screen, etc.

Technology sprites - Part 1: Introduction.

Technology sprites - Part 2: The hunt for sprites (search and pulling).

Technology sprites - Part 3: Format of sprites.

Technology sprites - Part 4: Format of sprites with a mask.

Technology sprites - Part 5: Structure sprite blocks (both co-exist in memory sprite and mask, what data to help us quickly find the address of the sprite in memory, and much more.)

Technology sprites - Part 6: preparation of data for publication.

Technology sprites - Part 8: Printing sprites (coordinates are given in familiarity).

Technology sprites - Part 9: Printing sprites (coordinates given in pixels).

Technology sprites - Part 10: a review of programs to work with sprites and graphics.

world of sound Spectrum - Chapter 1: The Physics of Sound.

world of sound Spectrum - Chapter 2: Operator BEEP, Creating effects on BEEPe, Making Music on BEEPe.

world of sound Spectrum - Chapter 3: How is the sound device (BEEP'ra and methods of sound production).

world of sound Spectrum - Chapter 4: Programming sound in assembler.

world of sound Spectrum - Chapter 4.1: Programming sound effects - Tone, Noise, Complexes effects.

world of sound Spectrum - Chapter 4.2: Programming Sound Effects - Volume Control.

world of sound Spectrum - chapter 4.3: Sound Effects - Management timbre.

world of sound Spectrum - Chapter 4.4: Programming sound effects - music programming.

world of sound Spectrum - Chapter 4.5: Programming sound effects - Polyphonic ringtones (polyphonic).

world of sound Spectrum - chapter 4.6: Treatment of external signals - digitization.

world of sound Spectrum - Chapter 4.7: Handling of external signals - Reverberation.

world of sound Spectrum - chapter 4.8: Synthesis of speech.

world of sound Spectrum - Chapter 4.9: audio playback interrupt.

world of sound Spectrum - Chapter 5: The operator PLAY for music coprocessor AY- 3-8910 (AY-3-8912).

world of sound Spectrum - Chapter 5.1: Creating effects operator PLAY.

world of sound Spectrum - Chapter 5.2: Making Music on PLAYe.

world of sound Spectrum - Chapter 6.1: Description of the coprocessor registers of the musical AY- 3-8910 (AY-3-8912).

world of sound Spectrum - Chapter 6.2: Programming effects and music under the musical coprocessor AY- 3-8910 (AY-3-8912).

world of sound Spectrum - Chapter 7: Software Review ZX-Spectrum to create sounds and music.

world of sound Spectrum - chapter 7.1: Editor, Sound Effects SUPER SOUND.

world of sound Spectrum - Chapter 7.2: Music Editor Wham the Music Box.

world of sound Spectrum - Annex 1, 2: Listings sound effects SUPER SOUND'a, tips assembler.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
News - in Izhevsk, opened the first BBS and formed a new group of TRG!
BBS - list of stations BBS ZXNet.
Interface - Overview of Windows like shells and systems for ZX Spectrum.

В этот день...   3 May