Newsgroup: it.comp.software.emulatori
Titolo: I bug del C64...

Salve a tutti
leggendo l'articolo dedicato al C64 su Retrogamer, sono rimasto
davvero incuriosito dal "bug" del SID del C64 che permetteva
l'utilizzo del sonoro campionato. In cosa consisteva, che voi
sappiate?
Saluti da
Vincenzo Scarpa
http://www.vincenzoscarpa.it/emulatori/manuale

 sappiate?
http://en.wikipedia.org/wiki/MOS_Technology_SID
"The 6581 had a quirk that caused changes in volume level on a channel to 
result in a slight "pop". Eventually this bug was found to be useful for 
producing a fourth voice of percussive sounds, digitized speech, and even 
short excerpts of digital recordings (the Commodore 64 lacked the memory 
capacity for full-length digital recordings of songs). Unfortunately, this 
"defect" was partially corrected in the 8580 used in the Commodore 64C and 
the Commodore 128. This made digitized sound (samples) very quiet. 
Fortunately, the volume level could be mostly restored with either a 
hardware modification, or a software trick involving the Pulse waveform. The 
software trick generally renders one voice temporarily unusable, although 
clever musical compositions can make this problem less noticeable."
-- 
Commodore 64: 
www.ready64.org
 

per quelli come me che l'inglese lo masticano poco ma soprattutto lo
sputano:
http://it.wikipedia.org/wiki/MOS_Technology_SID
A causa di un difetto nel chip originale, ogni cambiamento di volume su un
canale causa l'emissione di un breve suono percussivo. Questo baco venne
usato spesso per introdurre percussioni, parlato, o brevi suoni
digitalizzati (con una risoluzione di 4 bit). Questo difetto è stato
corretto nel chip 8580, utilizzato sul Commodore 64C e sul Commodore 128,
eliminando la possibilità di suonare campioni digitali su questi computer; è
tuttavia possibile modificare il chip 8580 in modo da reintrodurre il baco.
-- 
ZaXxon



Pazzesco. Mi pare di aver letto da qualche parte (forse proprio su
retrogamer, non ricordo) che qualche programmatore usava un altro baco
del c64 per produrre nei giochi lo scrolling a tutto schermo o
qualcosa di simile. Accidenti se lo hanno sfruttato questo benedetto
computer... :-))


computer... :-))
Ma certo. Per aprire lo schermo sopra e sotto, bastava settare un
certo valore (che non ricordo) nella locazione che gestiva la modalità
video quando il raster raggiungeva la prima riga dell'area blu (quella
attiva), e risettarlo a normale quando raggiungeva l'ultima. In questo
modo magicamente appariva ciò che era celato sotto le bande azzurre e
ci si poteva muovere gli spirte e fare altri giochetti coi font. 
Per aprire ai lati era obbligatorio replicare gli sprite su tutto lo
schermo, cioè accenderli su una riga e poi clonarli in modo
equdistante sempre col controllo di posizione del raster, ma a causa
di questo maccherone, era un trucco usato prevalentemente per le
scritte scorrevoli e non per i giochi, dato che era molto difficile
gestire 56 sprite clonati (mi pare fossero 7 righe di 8 sprite).
Sono certo che iAN CooG ti esplicherà dicendoti anche i valori esatti
;-) 
-- 
Paradoxally,
Jan AxHell



Beh a me basta già così, grazie mille. :-))


 Sono certo che iAN CooG ti esplicherÓ dicendoti anche i valori esatti
Documentarsi e' facile, es:
http://www.antimon.org/dl/c64/code/opening.txt
anche se poi metterle in pratica, lo so benissimo, e' un altro discorso.
Questo e' un altro programma, sempre iniziato prendendo spunto dai
tutorials di Pasi Ojala, per mostrare cosa si puo' fare col bordo aperto
iancoog.altervista.org/hid/openborder2.s
iancoog.altervista.org/hid/openborder2.prg
(copy/paste se no altervista rompe le balle)
-- 
-=[]=--- iAN CooG/HokutoForce ---=[]=-
I'm thinking of a number between one and 7000000000. Try to guess it.

etc proprio non so da cosa derivi.
Dal fatto che io usavo quelli e non i NOP, non ho letto niente da
nessuna parte, ho solo sperimentato con i programmi che mi ritrovavo
tra le mani. Che poi sia giunto a conclusioni errate, poco mi cala,
non è mai stata mia intenzione scrivere manuali, nè fare il
programmatore. 
-- 
Paradoxally,
Jan AxHell