Re: C2N ideas/thoughts?

Re: C2N ideas/thoughts?

From: Craig Taylor <ctalkobt_at_gmail.com>
Date: Tue, 7 Apr 2009 15:49:32 -0400
Message-ID: <2ac1672f0904071249k6f19674et73f92c36051c71e6@mail.gmail.com>
Since there's so much interest in the tape routines - there's a chapter on
them at http://www.ctalkobt.net/ToolkitKernal.pdf that may be of interest
(Note: limited link availability / subject to moving - valid for next 2
weeks).


On Tue, Apr 7, 2009 at 2:17 PM, Marko Mäkelä <msmakela@gmail.com> wrote:

> On Tue, Apr 07, 2009 at 09:47:06AM -0400, Ethan Dicks wrote:
> > On Mon, Apr 6, 2009 at 4:30 PM, Marko Mäkelä <msmakela@gmail.com> wrote:
> > > Please have a look at the c2n source code.  That program will decode
> and
> > > encode Commodore tape images...
> > >
> > > ...Commodore format, because each block is set twice
> > > and because there are three different pulse widths in use, as opposed
> to
> > > two.  It's easy to detect byte boundaries.  To decode these broken
> tapes
> > > (mostly BASIC programs), I wrote a Perl script to decode the pulse
> stream
> > > and edited the binary in GNU Emacs.
> >
> > This sounds interesting to me - I have a number of tapes that I've
> > already read in and archived the contents of on modern machines
> > (mostly stuff I wrote, but a few commercial tapes I bought in the late
> > 1970s), but I probably have a small stack of tapes that had read
> > errors, at least one of which is commercial (and occasionally had read
> > problems back in the day).
>
> Can you archive the problematic tapes in the *.tap format?  That should be
> enough for decoding.  If the *.tap files are too corrupted, then you could
> try playing with the azimuth settings or sample it in PCM format (*.wav)
> and use an appropriate digital filter.  A few years ago, I made some
> experiments with TAPir <http://tapir.sourceforge.net/>, but I can't
> remember
> if it was of any use to me.  I didn't try to mess around with the stereo
> head of the analog tape deck that I used.
>
> > > If you want to see a slow format, try KIM-1. :-)  It's also supported
> by
> > > the "c2n" program.
> >
> > I don't have any KIM tapes (though I do have a MicroKIM), but I do
> > have a number of "PET Rabbit"-format tapes.  I have the Rabbit program
> > on ROM and on C= tape but have not yet attempted to reverse-engineer
> > it.  What sort of information would I have to know about the format to
> > consider adding it to the c2n program?  I doubt there's m uch
> > documentation about it already, so I'm guessing I'll have to get the
> > code to tell me.
>
> There are four decoder functions implemented so far: decode and decode264
> in decode.c, decode_kim in kim_d.c and decode_oric in oric_d.c.  You could
> start by studying the decoders in decode.c.
>
> Hmm, I seem to remember that I once encountered VIC Rabbit.  Sure enough,
> I even documented the format:
>
> http://www.zimmers.net/anonftp/pub/cbm/vic20/roms/tools/4k/Rabbit.txt
>
> I probably wrote some throw-away Perl one-liners to decode the samples
> that I produced with the cartridge image.  I must have run the "save"
> command on the VIC-20 and sampled the pulses with the C2N232 directly
> from the tape port, without going through analog tape.  If the PET Rabbit
> is anything like Vic Rabbit, I wish you luck.
>
> Basically, the decoding can be divided to four steps:
>
> (1) sample the tape
> (2) detect edges or pulses from the samples
> (3) quantize the pulse widths to symbols B, C, D (using the c2n232
> notation)
> (4) decode the string of symbols to binary
>
> The decoder functions in the "c2n" program implement step (4).
>
> I hope that this helps.
>
>        Marko
>
>
>       Message was sent through the cbm-hackers mailing list
>



-- 
-------------------------------------------
Craig Taylor
ctalkobt@ctalkobt.net

       Message was sent through the cbm-hackers mailing list
Received on 2009-04-07 21:57:27

Archive generated by hypermail 2.2.0.