Hi, this is my implementation of the ending song of an anime serie of my childhood, please give a try...

Code:
'****************************************************************
'*  Name    : Candy12F675                                       *
'*  Author  : Ivan Rosales - Guadalajara, Jalisco, México       *
'*  Notice  : Copyright (c) 2011 Ivan Rosales                   *
'*          : All Rights Reserved                               *
'*  Date    : 31/07/2011                                        *
'*  Version : 1.0                                               *
'*  Notes   : Reproduce la melodía "Ashita ga Suki",            *
'*          : de la serie infantil japonesa "Candy Candy"       *
'****************************************************************
'Si se usa una pequeña bocina, poner un capacitor de 
'10uF ó 22uF en serie con ésta.
'[Pin 2]___[+Cap 10uF-]___[+Bocina-]___Tierra
'Si se usa piezo-eléctrico, poner directo del pin 2 a tierra.
'Conectar un LED del Pin 5 a tierra.

'________________________________________________________________
'Letra:
'En mi ventana veo brillar,
'las estrellas muy cerca de mí,
'cierro los ojos, quiero soñar,
'con un dulce porvenir...

'Quiero vivir y disfrutar,
'la alegría de la juventud,
'no habrá noche para mí,
'sin estrellas que den luz...

'Gira, gira, carrusel,
'tus ruedas de cristal
'recorriendo mil caminos
'tu destino encontrarás...

'Candy, Candy, Candy, Candy.
'________________________________________________________________

 
'Configuración del PIC:
@ Device PIC12F675,WDT_ON,PWRT_ON,PROTECT_OFF,MCLR_OFF,BOD_OFF
ansel=0             'No usar ADC's las entradas serán digitales
cmcon=7             'No usar comparadores analógicos
trisio=%011011      'GP2 y GP5 Serán salidas 
DEFINE OSCCAL_1K 1  'Auto-Calibración del reloj interno 

'Declaración de Variables:
LED var gpio.2
Piezo var gpio.5
Cont var byte      
Nota var byte   
Dur var byte  
Largo var byte  


'Programa Principal:    
Pause 500              'Pausa de .5 Seg para inicializar bien el PIC 
largo=149              
Bucle:
if largo=149 then      'Arreglo para que repita el estribillo
largo=65               'Reproduce las primeras 65 notas
else
largo=149              'Reproduce todas las 149 notas 
endif
for cont = 0 to largo 
'Lista de las notas musicales, el 0 es silencio:
lookup cont,[98,0,98,0,98,0,98,0,98,0,94,0,90,0,98,0,_ 
98,0,98,0,98,0,102,0,99,0,98,0,98,0,99,0,94,0,_ 
94,0,94,0,98,0,99,0,99,0,99,0,98,0,94,0,90,0,_ 
90,0,98,0,94,0,90,0,88,0,94,0,90,0,_ 
105,0,105,0,105,0,105,0,108,0,109,0,108,0,_ 
105,0,102,0,102,0,102,0,108,0,105,0,_ 
98,0,102,0,99,0,98,0,94,0,_ 
105,0,108,0,109,0,105,0,_ 
105,0,108,0,109,0,105,0,_ 
105,0,108,0,109,0,111,0,_ 
109,0,108,0,109,0,109,0,108,0,109,0,109,0,108,0,109,0,111,0,108,0,109,0],nota 
'Lista de las duraciones de cada nota y silencio:
lookup cont,[20,4,20,4,20,4,40,4,20,4,20,4,20,4,60,22,_ 
20,4,20,4,40,4,40,2,20,4,20,4,20,4,20,4,60,22,_ 
20,4,20,4,20,4,20,4,60,16,20,4,20,4,20,4,60,22,_ 
20,4,20,4,40,4,40,4,20,4,40,4,80,44,_ 
20,4,20,4,20,4,60,4,20,4,20,4,60,44,_ 
20,4,40,4,60,4,20,4,40,4,60,44,_ 
20,4,40,4,20,4,40,4,60,44,_ 
20,4,20,4,20,4,40,44,_ 
20,4,20,4,20,4,40,44,_ 
20,4,20,4,40,4,100,44,_ 
20,4,20,4,60,40,20,4,20,4,60,50,20,4,20,4,80,50,20,4,40,4,100,4],dur 

if nota=0 then      'Arreglo para que encienda el LED al ritmo de la melodía 
led=0 
else 
led=1 
endif

Sound piezo,[nota,dur]  'Reproduce una nota (o silencio)
next                
if largo=149 then pause 3000 'Si es el final de la melodía hace una pausa
Goto bucle  'Repite indefinidamente la melodía
end