risorse | zx spectrum | speclight

Speclight (1986)

Il programma crea degli effetti psichedelici sullo schermo a tempo di musica. Collegando il registratore alla presa EAR dello Spectrum, e regolando opportunamente il volume mentre viene riprodotto un nastro musicale, sullo schermo verranno generate sequenze di immagini colorate sincronizzate con il brano in ascolto.

L'idea alla base è banale: il programma, durante una scansione del quarto di schermo in alto a sinistra, campiona regolarmente 4 bit dalla presa EAR, i quali determinano il colore e la luminosità della posizione del carattere corrente; al termine della scansione, l'area viene riprodotta specularmente sul quarto di schermo in alto a destra. La porzione di schermo superiore viene quindi specularmente riprodotta su quella inferiore.

Istantanea

Nastro

Scarica il nastro virtuale speclight.tzx (2KB).

Listati

Caricatore BASIC

10 BORDER 0: PAPER 0: INK 7
20 CLEAR 39999
30 LOAD ""CODE 40000
40 CLS : RANDOMIZE USR 40000

Linguaggio macchina

Graphld b,$0706 07
 ld hl,($5c7b)2A 7B 5C
 ld a,$803E 80
Udgld (hl),a77
 inc hl23
 djnz Udg10 FC
 ld a,$ff3E FF
 ld (hl),a77
 ld a,$023E 02
 call $1601CD 01 16
 ld bc,$02c001 C0 02
Printld a,$903E 90
 rst $10D7
 dec bc0B
 ld a,b78
 or cB1
 jr nz,Print20 F8
Breakld a,($5c08)3A 08 5C
 cp $5aFE 5A
 ret zC8
 ld hl,$580f21 0F 58
 ld b,$0b06 0B
Linepush bcC5
 ld d,h54
 ld e,l5D
 inc de13
 ld b,$1006 10
Attrxor aAF
 ld c,a4F
 push bcC5
 ld b,$0406 04
Bitin a,($fe)DB FE
 bit 6,aCB 77
 jr z,Noset28 02
 set 2,cCB D1
Nosetrlc cCB 01
 djnz Bit10 F4
 ld a,c79
 cp $78FE 78
 jr nz,Mem20 04
 ld a,rED 5F
 and $78E6 78
Memld (hl),a77
 ld (de),a12
 dec hl2B
 inc de13
 pop bcC1
 djnz Attr10 DF
 ld a,$303E 30
Nextlineinc hl23
 dec a3D
 jr nz,Nextline20 FC
 pop bcC1
 djnz Line10 D0
 ld bc,$016001 60 01
 ld hl,$580021 00 58
 ld de,$5abf11 BF 5A
Lowvideold a,(hl)7E
 ld (de),a12
 dec de1B
 inc hl23
 dec bc0B
 ld a,b78
 or cB1
 jr nz,Lowvideo20 F7
 jr Break18 B1

Pagina modificata l'8/11/2011