I have a little question.
Is it possible to interconnect the audio signal from the mic jack via the ZX81's expansion bus?
that is, plugging a K7 reader into a card, and reformatting the IRQ sound signal to read to load a program.
(like a video display, and don't use the ULA decoding process)
Thank you for your future answers.
All the best.
- Posts: 2897
- Joined: Mon Sep 26, 2011 10:56 am
- Location: Looking forward to summer in Somerset, UK...
I’m not sure what you are asking?
For loading from cassette tape, the ULA acts as a simple level shifter and input port. When the Z80 CPU reads from I/O port 0xFE, bit 7 is set or reset (high or low) depending on the voltage level on the ULA input pin (tape in, connected to the Ear jack socket). Just like the Memotech external keyboard, other devices (connected to the expansion port / edge connector) can override the ULA and instead supply data to the Z80 CPU when it reads I/O port 0xFE.
For saving to cassette tape, writes to any I/O port (although 0xFF is usually preferred) and reads from I/O port 0xFE causes pulses to be output to the combined TV/Tape ULA pin. These I/O accesses could be picked up on the expansion port / edge connector with the appropriate extra circuitry.
All the decoding and encoding of the signals from/to a cassette tape are done in software by the Z80 CPU.
You can bypass the ULA entirely if you use your own cassette tape reading or writing code. Then you can read from, or write to any I/O port.