Plutonium #18
30 июня 2001

Programming - as indicators of musical nakodit sopratsessora in chunks.

<b>Programming</b> - as indicators of musical nakodit sopratsessora in chunks.
(C) Lynx / Explos! Ve team.


   Mdyams ... What a time in any publication there was no sound 
of coding. Or all of the shit was all, or What? Everything just 
about drinking, but about the booze. Tired to be honest ...


   Duc here. I decided to tell you today, as nakodit
Indicators musical sopra in chunks like I did in the plugin
savage in the zx-navigator v.1.2 (eternal memory and honor him, 
to whom need raw write to emyl: lynx_gmd@pisem.net). And to 
make it It was very good. Indicators, as it were, washed 
away:)) motion blur'om left (or right:).


   Make it terribly easy, but it looks killer
amazing:). We begin with an explanation.

   So. Before us, as usual, the matrix of the chunks. Height
We should be enough (and enough) third of the screen. Obtained
matrix of size 64h16 points at which we draw
bars, meaning the frequency and volume sounding audio. Than
right, the higher the sound frequency, the higher the louder 
the sound. Stipulate that the noise us $ Bani, and all three 
channels, we imprinted on one matrix. Yes, and print lines will 
produce interrupt to more :)).. Vsmysle not displaying, and

print lines in the matrix. We carry the following proceedings:

; --- Hong dog, so perifiriynye procedure ...
fucker

           RRA

           RR E

           RRA

           RR E

           RRA

           RR E

           LD A, E

           RET
dat DB 0
andez PUSH AF, BC

           LD A, (dat)

           ADD A, B

           LD (dat), A

           POP BC, AF

           RET
; --- And here is the press line ...
; A data1 - it chankovy buffer.
line CALL fucker

           CALL andez

           PUSH AF

           LD A, B

           OR A

           JR Z, lret

           POP AF

           NEG

           LD HL, data1 +64 * 16; Reg. A-frequency

           LD E, A; B - the sound level (volume)

           LD D, 0

           ADD HL, DE

           LD C, A
ln LD (HL), # d

           LD DE, lent * 2

           AND A

           SBC HL, DE

           DJNZ ln

           RET
lret POP AF

           RET
- But the polling procedure muzykalki ports.
- From her how to print directly caused by the line.
; This procedure should cause interrupt.

init LD BC, # fffd

           LD A, 1

           OUT (C), A

           IN A, (C)

           LD E, 0

           OUT (C), E

           IN E, (C)

           LD D, 8

           OUT (C), D

           PUSH AF

           IN A, (C)

           AND # 0f

           LD B, A

           POP AF

           CALL line
;----------------- CHANNEL B ---------------------
           LD BC, # fffd

           LD A, 3

           OUT (C), A

           IN A, (C)

           LD E, 2

           OUT (C), E

           IN E, (C)

           LD D, 9

           OUT (C), D

           PUSH AF

           IN A, (C)

           AND # 0f

           LD B, A

           POP AF

           CALL line
;----------------- CHANNEL C ---------------------
           LD BC, # fffd

           LD A, 5

           OUT (C), A

           IN A, (C)

           LD E, 4

           OUT (C), E

           IN E, (C)

           LD D, 10

           OUT (C), D

           PUSH AF

           IN A, (C)

           AND # 0f

           LD B, A

           POP AF

           CALL line

           LD A, (fl0_4)

           OR A

           CALL Z, filla

           RET


   It's over. Now we have a matrix chankovoy
drawn lines for all three channels. And Che, you think - all?
Dick in a glass. We still all "zablurit" to it
lubricated. And we used to do this "blanking blur."
Ie not just a blur of points and a decrease in the intensity of 
their glow:)). Brightness, speaking Russian.


   You can namutit there own, super high quality, beautiful,
Brake filters ... I just picked up and used
Simplified (me) motion blur, the image faded and
shifted. Here is a diagram of this filter:


            +1 +1 0 0 0 0 0


             0 0 0 0 0 0 (0) - the center of the filter (ie

                                              printable point).

             0 +1 +1 0 0 0 0


    plus divisor is 8. Ie number obtained from
Addition of these points still denominations divisible by 8 and 
put in center.


  Tupoy Question> What to do when a nuclear explosion?

  Hint> The main thing is not to get to the epicenter.


   In the code, it looks easy. One procedure:)

blur2 LD IX, data1

             LD BC, data1
ixel2

             LD A, (IX-59)

             ADD A, (IX-58)

             ADD A, (IX +59)

             ADD A, (IX +60)

             SRL A

             SRL A

             SRL A

ix_3 LD (IX), A

             INC IX

             DEC BC

             LD A, B

             OR C

             JR NZ, ixel2

             RET


   It looks like this. Yes. Completely forgot! To
all beautifully looked to do the matrix Pobol sizes
to have borders that are not printed on the screen. And 
overwritten them. In order to blur not climbed any shit from 
the depths of memory. 

   I think that gave you food for thought. All you have to 
remove All bugs (and add a couple:) and draw a conclusion on 
the matrix data1 screen.



                                                          Good 
luck! 






Other articles:

Entry - the last time was to appear order. Why would it?

News - Black Raven of disk 2, released the first number stsenovoy newspaper Scream, the new ZX Spectrum emulator on the Sony Playstation.

News - Random reports that Chaos Constructions 2001 demo party as at least this year will be canceled.

Mail - A mr.Nuts' y. Editorial.

Thoughts aloud - END OF GAME (c) Sergei Lukyanenko (Nevasilevich)

Story of spektrumista - I, Spectrum and the Spectrum again.

People - the story of Pervouralsky Studio Stall.

Soft - STD-3 - a new monitor debugger from Studio Stall.

Music - Anton cubes: "Techno - paradise for a drummer."

Soft - description of a new operating system for Spectrum Vrcp Windows.

Fiction - Ground terror rushing to the north (Stephen King).

Programming - as indicators of musical nakodit sopratsessora in chunks.

Authors - the authors of the paper.


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

Similar articles:
Reflections - AMIGA or PC?
Designer - ZX Spectrum and the Mouse (scheme, programming and driver).
Demo Party - Results of the Latvian demopati PHAT'9.
Coder - The exchange of the two memory areas.

В этот день...   21 November