Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > C64 Coding > Problems with vicious_sid_demo_routine_explained
2013-04-02 10:02
hevosenliha

Registered: Sep 2008
Posts: 48
Problems with vicious_sid_demo_routine_explained

From the page at http://codebase64.org/doku.php?id=base:vicious_sid_demo_routine..

"I thought this would add a high pitched carrier noise to the sound. However, this doesn't happen. The reason will be explained later. The beauty of this implementation is indeed that a stable raster isn't required."

However, I get exactly this problem. Some replay frequencies works ok, some times.

Is the code/comments correct? What am I doing wrong? I get a feeling that I really do need a stable raster for this.
2013-04-02 10:45
Mixer

Registered: Apr 2008
Posts: 452
Theory is: When one is using 2 sid voices interleaved to play samples with 8-bit method, the sum of the samples at the sid output is the average of the two oscillators being sampled. This averaging is in effect a low pass filter that filters out the high pitch carrier and small jitter effects, and stable replay may not be necessary.

But, when one uses single sid voice for 8-bit play, then all the manipulations are heard in the sound and timing needs to be stable and in generally register manipulations very short.

Might the replay frequency be an issue? Yes.

The optimal replay frequency is that 7819hz, or about 2 rasterlines per sample per voice. This is due to the maximum frequency that oscillator can reach max value with triangle.

One can of course use other replay frequencies - higher frequency leads to lower overall amplitude as the triangle wont reach its peak ever. At lower frequency the triangle starts to go down already before sampling and sound gets distorted.
2013-04-02 13:57
Frantic

Registered: Mar 2003
Posts: 1648
Saw wave can be used if lower frequencies (about four raster lines, 63*4 = 252 cycles < 256 cycles wrap-around) are desired for some reason. At least if I remember correctly. :)
2013-04-02 16:43
algorithm

Registered: May 2002
Posts: 705
Saw wave works rather well at one sample update per 4 raster lines (anything more than this and distortion occurs however) Furthermore using the dual cascading method at 1 update per 4 lines even without stable NMI does not emit that much jitter noise.

If it is absolutely necessary to update each sample over 4 raster lines (eg one sample per 8) then just ensure that the sample(or interpolated etc) is updated every inbetween line.

The 'jitter' noise is very much apparant however when updating 1 sample per 2 lines via non-stable nmi and cascading two channel method (triangle) (hear the vq-mania and amadeus demo's for this noise example :-))

2013-04-02 18:10
hevosenliha

Registered: Sep 2008
Posts: 48
Thanks for the replies!
I'll investigate further, and perhaps change my approach a little...
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
iAN CooG/HVSC
csabanw
algorithm
Guests online: 116
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.6)
5 Edge of Disgrace  (9.6)
6 What Is The Matrix 2  (9.6)
7 The Demo Coder  (9.6)
8 Uncensored  (9.6)
9 Comaland 100%  (9.6)
10 Wonderland XIV  (9.6)
Top onefile Demos
1 No Listen  (9.6)
2 Layers  (9.6)
3 Cubic Dream  (9.6)
4 Party Elk 2  (9.6)
5 Copper Booze  (9.6)
6 Dawnfall V1.1  (9.5)
7 Rainbow Connection  (9.5)
8 Onscreen 5k  (9.5)
9 Morph  (9.5)
10 Libertongo  (9.5)
Top Groups
1 Performers  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Triad  (9.3)
5 Censor Design  (9.3)
Top Original Suppliers
1 Derbyshire Ram  (9.7)
2 Fungus  (9.3)
3 Black Beard  (9.2)
4 Baracuda  (9.2)
5 hedning  (9.1)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.037 sec.