12.07.2015 Views

HOWTO program the Z80 SIO

HOWTO program the Z80 SIO

HOWTO program the Z80 SIO

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

1.3.6Hardware Flow ControlIn order to signal <strong>the</strong> host whe<strong>the</strong>r <strong>the</strong> client is ready or not to receive a character <strong>the</strong> RTSline coming out of <strong>the</strong> client (and driving towards <strong>the</strong> host) needs to be switched. As earliersaid I assume <strong>the</strong> host is much faster than <strong>the</strong> client, that why I do not implement a routineto check <strong>the</strong> CTS­line coming from <strong>the</strong> host.A_RTS_OFF:ld a,005h ;write into WR0: select WR5out (<strong>SIO</strong>_A_C),Ald a,0E8h ;DTR active, TX 8bit, BREAK off, TX on, RTS inactiveout (<strong>SIO</strong>_A_C),AretA_RTS_ON:ld a,005h ;write into WR0: select WR5out (<strong>SIO</strong>_A_C),Ald a,0EAh ;DTR active, TX 8bit, BREAK off, TX on, RTS activeout (<strong>SIO</strong>_A_C),AretText 6: signaling <strong>the</strong> host go or nogo for reception1.3.7 Disabling <strong>SIO</strong> RX­channelWhen certain conditions arise it might by important to disable <strong>the</strong> receive channel of <strong>the</strong><strong>SIO</strong> (see routine in Text 7).<strong>SIO</strong>_A_DI:;disable <strong>SIO</strong> channel A RXld a,003h ;write into WR0: select WR3out (<strong>SIO</strong>_A_C),Ald a,0C0h ;RX 8bit, auto enable off, RX offout (<strong>SIO</strong>_A_C),A;Channel A RX inactiveretText 7: Disabling <strong>the</strong> <strong>SIO</strong>8

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!