I wasn't having with the audio bootstrap method, so I found a 30-year
old GE recorder, and paired it with a
10-year old audio cassette (new in packaging). It seems to record
cassette port audio from the Apple just fine, but I'm not having much
luck reading audio.
In other words, SAVE works, and saves to a cassette tape. However,
when I rewind, and playback, LOAD doesn't seem to do anything, even
with the cassette player volume cranked up. (It doesn't produce any
error messages).
I have a CFFA card, and CiderPress on a computer with internet access,
so I can run other software. I just need to find a 'cassette port'
diagnostics program, preferably in BASIC that can POKE the 6502
instructions into memory, and run them. My 6502 coding skills are
rusty, but something reading address $C060 (casette input) detecting
the zero-crossing, then reading from C020 (the build-in speaker), to
make it click, should be all I need.
I'm thinking there's already an "Apple diagnostics" image out there
somewhere, which might be helpful in testing other parts of the
computer.
Thanks for any advice you can offer.
- Ralph
> I'm working on an platinum Apple //e (named "Doc", if anyone is
> curious), trying to get ADTPro going on it so I can archive more
> floppies.
Say hello to Doc for me! ;-)
> I wasn't having with the audio bootstrap method, so I found a 30-year
> old GE recorder, and paired it with a
> 10-year old audio cassette (new in packaging). It seems to record
> cassette port audio from the Apple just fine, but I'm not having much
> luck reading audio.
That sounds like a good recorder for the purpose.
> In other words, SAVE works, and saves to a cassette tape. However,
> when I rewind, and playback, LOAD doesn't seem to do anything, even
> with the cassette player volume cranked up. (It doesn't produce any
> error messages).
>
> I have a CFFA card, and CiderPress on a computer with internet access,
> so I can run other software. I just need to find a 'cassette port'
> diagnostics program, preferably in BASIC that can POKE the 6502
> instructions into memory, and run them. My 6502 coding skills are
> rusty, but something reading address $C060 (casette input) detecting
> the zero-crossing, then reading from C020 (the build-in speaker), to
> make it click, should be all I need.
>
> I'm thinking there's already an "Apple diagnostics" image out there
> somewhere, which might be helpful in testing other parts of the
> computer.
>
> Thanks for any advice you can offer.
A very simple diagnostic for the cassette input system is an
infinite loop that reads the "cassette in" port and echoes it
to the speaker:
]mtr
*!
!300:lda $C060 ; Read cassette input (high-bit)
! tax ; and save it in X
! eor $00 ; Compare high bit to current state
! bpl $300 ; If same, keep sampling...
! stx $00 ; If ~same, update current state,
! lda $C030 ; toggle the speaker, and
! jmp $300 ; resume sampling.
!
*300g
Or, in hex form:
*300:AD 60 C0 AA 45 00 10 F8
*310:86 00 AD 30 C0 4C 00 03
*300g
This program will "play" a cassette through the Apple speaker
exactly as the cassette input port is "hearing" it. If the Apple
can't hear the cassette when you play it into the cassette input,
but you *can* hear it when you play the cassette back through the
cassette recorder's speaker, then the input connections and signal
levels are the most likely culprits.
Is the cassette recorders "speaker out" jack connected to the Apple's
"cassette in" port? Line-level outputs won't drive the Apple input.
Is the cable itself (or one of its connectors) defective or
intermittent?
If the program *does* play the data on the cassette, then this is a
good time to adjust the recorder's volume (and tone, if any) to make
the sound from the Apple's speaker very much like the sound heard
directly from playing it through the recorder's speaker. That will
optimize the settings for playing Apple data tapes.
When LOADing a cassette record, carefully cue the recorder to the
start of the several-second preface tone. (It is a steady sound,
while data generally sounds quite "noisy".)
This cueing up should be done through the recorder's speaker. This
means that you'll need to remove the "speaker out" plug while cueing
up, then reinsert it. Then start the recorder and, within a second
or so (when you know the cassette is up-to-speed playing the preface
tone), type the RETURN following "LOAD", and data loading will start.
(If anything goes wrong, one or a couple of "ERR" messages with beeps
will be produced.)
For 17 months, I developed programs for my first Apple II+ with only
a cassette recorder for storage. I kept a "tape counter" log of each
of the things recorded on each C-60 cassette (both sides).
It was very easy to use the tape counter to get very near the start of
a program, and then, using the cassette recorder speaker, I cued it up
exactly. (I had modified my cassette recorder by soldering a low-value
resistor across the speaker switch on my recorder's "speaker out" jack,
so I could always softly hear the data being played back or recorded.
This saved a lot of speaker jack fiddling. ;-)
I found the Apple's cassette system very reliable and stable. A couple
of years ago, I retrieved my collection of a half-dozen cassettes, each
with 50 to 100 programs on them (I saved every version!), and I didn't
find any problems after twenty years of storage.
Hope you get Doc's working soon!
-michael
NadaNet and AppleCrate II: parallel computing for Apple II computers!
Home page: http://home.comcast.net/~mjmahon
"The wastebasket is our most important design
tool--and it's seriously underused."