On Thu, 22 Feb 2001, Ruud Baltissen wrote: > IOCHCK is an active (L) signal meant to signal the PC that there is a memory > parity error. On the end this signal triggers the NMI-input of the CPU. As > so we can use the NMI-input of the expansionport. Or ignore the signal. In original PCs, the only NMI source was memory parity error. Usually the BIOS would report something like "PARITY CHK 1" and halt upon receiving an NMI. I don't know the current sitation; at least, parity bits are not so common on desktop machines. High-end servers might use error-correcting memory (with some Hamming code) and not report parity errors at all. > IOCHRDY signals the CPU that the card needs more time for whatever it is > doing. This is realised by holding the CPU. The 6510 has such a feature as > well but the problem is that the corresponding input can be found at the > expansionport. To be honest, I never saw a card having this line. I did not > use this line. "input can be found"? Probably you meant "can't". But there is such an input: the DMA signal (active low) will stop the CPU. The Commodore RAM Expansion Unit uses this signal to block the CPU during transfers. It also monitors the BA (Bus Available) output from the video chip and suspends transfers during bad lines (character and colour code fetches). > A PC-card uses 20 addresslines but the C64 only has 16. And to make it > worse, we only have a range of 512 free to use for our own purposes. In 1988 > I hacked my C64 by de-mirroring the VIC and SID, freeing 1.5 KB. I used 512 > bytes for my interface. Why only 512? To remain compatible with users who > didn't want to hack their C64. The idea was to use 256 bytes for the swap > area and to reserve a part of the other 256 bytes for I/O. You could also use free VIC and SID addresses. The last VIC-IIe register is at $d030, isn't it? You could decode and use $d031-$d03f for your own purposes. You distinguish the mirrored areas from each other ($d071-$d07f, $d0b1-$d0bf and so on until $d3f1-$d3ff), you get more registers. Of course, forming this kind of addresses is complicated both in software and hardware. Marko - This message was sent through the cbm-hackers mailing list. To unsubscribe: echo unsubscribe | mail firstname.lastname@example.org.
Archive generated by hypermail 2.1.1.