;           ÜÜ                  Û
;          ßßß Monthly Magazine Û For VirMakers.                  JULY '95
;          ßÛÛ ßßßßßßßßßßßßßßßß Û ßßßßßßßßßßßßßßßßßßß ß ßßßßÞßßß  ÛßßßßßßÛ
;           ÞÛ ÛßÜ Ûßß Üßß Üßß ÜÛÜ Üßß ÛßÛ    Ý Û ÜßÛ Û Üßß ÛÜÜ   Û ÞßßÛ Û
;            Û Û Û Ûß  Ûß  Û    Û  Ûß  Û Û    Û Û Û Û Û Û   Û     Û   ÞÝ Û
;            Û Þ Þ Þ   ÞÜÜ ÞÜÜ  Þ  ÞÜÜ ÞÜß     ßÛ ßÜÛ Þ ÞÜÜ ÞÜÜÜ  Û   Û  Û
;            Þ ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ  ÛÜÜÜÜÜÜÛ
;           (C) STEALTH group WWide, Box 10, Kiev-148, fUcKRAINE 
; ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
; Hello from MOSCOW !!!  				              (C) BEER 
; Œã§ëª  ¨§ ¢¨àãá®¢ BEER.			    Published under permission
; ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
; ˆáå®¤­¨ª. Š®¬¯¨«¨àã¥âáï ¢ EXE-ä ©«.

 PAUS = 1
 END_MUSIC = 0

.model small
.8086
.code
int_1C_handler:

mov bx,cs:counter
shl bx,1
mov ax,word ptr cs:[bx][offset mus]
cmp ax,END_MUSIC
jne continue
mov cs:counter,0FFFFh
iret
continue: cmp ax,PAUS
jne not_pause
in al,97
and al,0FCh
out 97,al			;Speaker off
jmp return
not_pause:
 out 66,al
 mov al,ah
 out 66,al
 in al,97
 or al,3
 out 97,al
return:
 inc cs:counter
 iret

 start:
mov ax,351Ch			;Get 1C vect
int 21h
mov cs:old1c,bx
mov ax,es
mov cs:old1ch,ax		;Save 1C vector
push cs
pop ds
mov dx,offset int_1C_handler
mov ax,251ch			;Set vect
int 21h
wait_for: cmp cs:counter,0FFFFh
jne wait_for
in al,97
and al,11111100b
out 97,al			;Speaker off
lds dx,dword ptr cs:old1c
mov ax,251ch
int 21h				;Restore 1C vector
mov ax,4C00h
int 21h				;Terminate

EVEN

A = 5422
B = 5117
H = 4830
C = 4559
CIS = 4303
D = 4061
DIS = 3833
E = 3619
F = 3416
FIS = 3224
G = 3042
GIS = 2872
A2 = 2711
B2 = 2559
H2 = 2415
C2 = 2279
CIS2 = 2151
P = PAUS

mus:
DW E,E,E,E,P,P	,E,E,E,E,E,E,	E,E,P,GIS,GIS,P,	F,F,P,E,E,P
DW GIS,GIS,GIS,GIS,P,P,	GIS,GIS,GIS,GIS,GIS,GIS,	GIS,GIS,P,H2,H2,P
DW A2,A2,P,GIS,GIS,P
DW A2,A2,A2,A2,P,P,	A2,A2,A2,A2,A2,A2,	A2,A2,P,	C2,C2,P
DW H2,H2,P,	A2,A2,P
DW GIS,GIS,GIS,GIS,GIS,P,	F,F,P,E,E,P
DW GIS,GIS,GIS,GIS,GIS,GIS,	P,P,P,P,P,P
DW E,E,E,E,P,P	,E,E,E,E,E,E,	E,E,P,E,GIS,P,	F,F,P,E,E,P
DW GIS,GIS,GIS,GIS,P,P,	GIS,GIS,GIS,GIS,GIS,GIS,	GIS,GIS,P,GIS,H2,P
DW A2,A2,P,GIS,GIS,P
DW A2,A2,A2,A2,P,P,	A2,A2,A2,A2,A2,A2,	A2,A2,P,	A2,C2,P
DW H2,H2,P,	A2,A2,P
DW GIS,GIS,GIS,GIS,GIS,P,	F,F,P,E,F,P
DW E,E,E,E,E,E, P,P,P,P,P,P
DW H2,H2,P,H2,H2,H2,	H2,H2,P,A2,A2,P,	GIS,GIS,P,GIS,GIS,P
DW GIS,GIS,GIS,GIS,GIS,P,	F,F,P,F,F,F,	F,F,P,E,E,P,	D,D,P,D,D,P
DW D,D,D,D,D,P
DW D,D,D,D,D,P,	F,F,F,F,P,E,	D,D,P,F,F,P,	A2,A2,A2,A2,A2,P
DW GIS,GIS,GIS,GIS,GIS,P,	F,F,P,E,E,P
DW GIS,GIS,GIS,GIS,GIS,GIS,	P,P,P,P,P,P
DW H2,H2,P,H2,H2,H2,	H2,H2,P,A2,A2,P,	GIS,GIS,P,GIS,GIS,P
DW GIS,GIS,GIS,GIS,GIS,P,	F,F,P,F,F,F,	F,F,P,E,E,P,	D,D,P,D,D,P
DW D,D,D,D,D,P
DW D,D,D,D,D,P,	F,F,F,F,P,E,	D,D,P,F,F,P,	A2,A2,A2,A2,A2,P
DW GIS,GIS,GIS,GIS,GIS,P,	F,F,P,E,E,P
DW F,E,E,E,E,P


	DW PAUS,END_MUSIC

old1c	dw 00
old1ch	dw 00
counter dw 00


.stack
end start