Re: CD's, C64's and error-correction

From: Martijn van Buul (
Date: 1999-10-15 15:37:27

Marko Mäkelä wrote:
> Therefore, we can use 8 samples for data and 1 or 2 samples for "stop
> bits", to allow for storing the byte and for resynchronization.  The raw
> speed would still be 4410 or even 4900 bytes per second, although I think
> that the latter (doing only with one stop bit) would require scattering
> the pointer incrementation and comparison operations in the unrolled
> byte-receive loop, which is a somewhat non-trivial task.  Had these
> conferences I'm participating in been more boring, I'd probably already
> have such a routine. :-)

Using one stop bit could cause problems when there's a (long) series
of $FF-data. CD-players (like every audio device) have a high-pass filter
as well.

> A word on the hardware.  I think it could be done with 3 or 2 ICs.  One
> amplifier-limiter (for converting the line-level signal, 1 volt
> peak-to-peak or something like that, to TTL, maybe with some sort of a
> Schmitt trigger),

There are default voltage comperators for that. Operate on 0 and 5v.

> and something to convert the rising and falling edges of
> the signal to pulses between 1 and 21 microseconds (those are the limits
> for the pulse width; the actual width should be constant).

There's a (dirty) possible solution here:

Attach a resistor and a small capacitor from GND to the output of
said comperator. (capacitor towards GND). Another voltage comperator
could compare the voltage at the junction between R and C to
(for example) 0.69 * VCC, which results in a delayed version
of the original signal. One XOR on original and delayed signal
will do the trick.

There's one problem though: noise. Schmitt-triggers would be quite a lot
better, but it might be a problem to have them trigger on the 1 Vpp signal.

    Martijn van Buul - -
		Visit OuterSpace: 3333
	finger for my public key block
This message was sent through the cbm-hackers mailing list.
To unsubscribe: echo unsubscribe | mail

Archive generated by hypermail 2.1.1.