From: Laze Ristoski (cybernator_at_mt.net.mk)
Date: 2005-08-16 19:07:38

```> Ok here's the misunderstanding. We are saying the same thing two different
> ways. Frequency depends on a period. A period is the length of
> time it takes
> for a voltage level to 'revolve' back to its starting point:
>
> __
> |   |__|
> ^      ^ Period
>
> The above (crappy) ascii art shows a full period. How many times a period
> is repeated in a second results in frequency.

Yes, freq=1/period.

> The example is using a 50%
> pulse
> width. This means the crest and trough of the wave are equal in lengths of
> time.
> The frequency can remain the same as the pulse-width could be
> anything from
> 1% to 99% This is simply the time that the wave is sustained at its peak.

Loaders usually (probably always) work with equal phases.
True, I measure the period (period width), not pulse width (phase width).
But now that I have the period, I'd need to calculate 1/period to get
the frequency. And that's what I was referring to as difficult. (I mean
it would take floating-point arithmetic. :))

> There should be sync characters somewhere (it might be entirely handled
> by the datasette itself, so you would see nothing in the code to expose
it.)

I pretty much doubt it. The 1541 _might_ do such things, since I only
require a
GCR byte and wait till it's ready, not knowing what really happens on lowest
level.
But with the datasette, everything is handled by the C64's CPU.

> If you can find a way to COMPLETELY eliminate noise, you will be
> labelled a genius and have no shortage of offers of employment.

I meant "completely filter-out". Of course, there will always be noise,
but it mustn't be noticed by the CPU. (because of the example with
the extra click).

> Your chances of gaining any scientific understanding of what is
> going on are
> next to impossible with this method. Digitizing the tape into a WAV adds
> quantization errors which will end up looking like noise.) A spectrum
> analyzer or oscilloscope would be the only useful way to analyze this.

There might as well be another misunderstanding about the transitions.
The question is: does the datasette differentiate high-to-low from
low-to-high transitions? When the tape moves past the head, nothing
happens if the ferromagnetic particles are all oriented the same way.
As soon as the particles flip, a voltage induces in the coil (like
moving a piece of magnet through the coil). This voltage lasts very short
and then falls to 0 until we get another particle flip. So the
datasette needs to hold the high (or low) level until the next flip.
There're two ways to choose which level should be held.
1. pick it according to the particle flip (north-to-south vs south-to-north)
2. invert the output line after every particle flip (no matter the direction
of the flip).

If it's the first case, then the misalignment issue simply doesn't exist.
If it's the second case (which I _believe_ it is, if my experiments were
correct),
then we run into the misalignment problem. This misalignment practically
inverts
the signal (levels).

http://www.geocities.com/lazeristoski/correct.gif
This diagram shows two successive bytes with value 2. The red
part is the 1-bit, which is encoded correctly.

http://www.geocities.com/lazeristoski/wrong.gif
This one is the flipped signal. Here are the two 1-bits in
a row (one red, one green). The period appears to be of different
phase widths, which shows that the flag-line is misaligned.

My last experiments with this were about 6 years ago, so I should
do a refreshment course. If I find that the first case is being
used, then this topic can be closed. ;)

--
Laze

Message was sent through the cbm-hackers mailing list
```

Archive generated by hypermail pre-2.1.8.