Page 1 of 1

M1 / printer interface

Posted: Sat Apr 13, 2024 2:29 am
by stu
Hi,

I'm a beginner ZX81 user (just built a ZX81+38) that started to play around to learn how the hardware is working, and I currently want to understand the details of how the printer works.

I've read that the ZX printer is connected only to very few pins of the expansion port: A2 for addressing, D0/1/2/6/7 for data I/O and RD/WR/IORQ for control signals. I'm a bit surprised that the M1 pin isn't used -- how does that work? I understand that WR probably isn't active at the same time anyway, but wouldn't RD be active during interrupt acknowledge, and then, wouldn't the printer output a signal on the data bus that could interfere with whatever other data is important at the time?

In general: if building some peripheral that connects to the expansion port, is it important to take M1 into account before sending signals to the data bus, or is there a reason that can be ignored?

Thanks,

Staffan

Re: M1 / printer interface

Posted: Sat Apr 13, 2024 3:21 am
by 1024MAK
The ZX81 uses mode 1 (IM 1) so does not care about what is on the data bus. Hence you don’t need to worry about /M1.

Mark

Re: M1 / printer interface

Posted: Sat Apr 13, 2024 3:49 am
by stu
Thanks!

Makes total sense! I've never actually written any Z80 assembler so I didn't know about the modes, and was also didn't know which one the XZ81 is using. The "CPU Response" chapter of the z80 manual is after the pin descriptions so I never got that far:)

Staffan