Re: SSC firmware - incorrect handshake?



On Apr 18, 7:01 am, "Ferdinan Meyer-hermann" <ferdinan.meyer-
herm...@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
While playing around with the Apple on this BBBS I found out that the first
char of every line gets lost if the Apple needs to scroll. To get reliable
operation, I needed to slow the port speed down to 300bps, which is too slow.
I do use handshaking and the handshake seems to work correctly, i.e. if the
SSC is not enabled, no data will be sent to the Apple. But as soon as it's
enabled (I used the firmware routines in my terminal program). It raises the
handshak~e linse permanently. I fed a continous stream of data @19200 baud
into the apple, nearly half of it got lost, but the handshake lines were
asserted all the time.
Is this a known misbehaviour of the SSC's firmware?

The 6551 only has a 1 byte deep FIFO so the receiver needs to be
serviced as soon as a character arrives. Scrolling the Apple II screen
is done in software and can take a long time (especially in 80 columns
on a IIe or IIc). There is not much the SSC firmware can do about this
as it does not know how quickly the application will return to read
the next character. Also, the SSC implements RS-232C which did not
have character based hardware flow control - RTS/CTS were for enabling
the transmit circuit of a half-duplex modem (Request To Send) and
allowing the modem to tell the DTE when this had been achieved (Clear
To Send).

If the SSC were to try to do hardware flow control, it would need to
de-assert the handshake between calls to the read character function.
eg call read, assert handshake, receive character, disable handshake,
return character to application.

To do 80 column scrolling at high baud rates you either need a CRTC
(6845) based 80 col card (as found in many Apple II/II+ systems) that
can scroll the screen in hardware or use an interrupt driven receive
character routine (and not have an original IIe whose 80 col scroll
routine masks interrupts - fixed in the enhanced IIe firmware).

P.S. The 6551 has a bug in that de-asserting CTS will corrupt a
character that is in the middle of being sent. This is fixed in the
CMOS 65C51.
.



Relevant Pages

  • Re: MOONLIGHT - pilot encore 12/21
    ... Wolfe and then the departure of actor Brent Staite, ... important character, character importance trumps actor badness) when ... the latter a rancid apple -- with Earth: ... I am so done with plans. ...
    (rec.arts.tv)
  • Re: Of Ukraine
    ... Real newsreaders support all the major ... character sets and encodings. ... However sci would not work if it wasn't transparent and available ... “If you have an apple and I have an apple and we exchange these apples ...
    (soc.culture.baltics)
  • Re: Apple iie with switch under case?
    ... Apple SS... ... I did the self test twice with the switch underneath set to both sides and I ... The switch on the underside toggles the character generator and keyboard ... Other language models (e.g. German, French) changed several characters, ...
    (comp.sys.apple2)
  • Re: Single use command considered harmful
    ... care whether he quaffs it, reads its, or waves it. ... Why do you want to use a potion, ... a scroll doesn't make the potion less of a potion or the scroll less ... The next step is making "a magic user" character class, ...
    (rec.games.roguelike.development)
  • Re: Two Questions
    ... where the character seems to stick up above ... I can get neither the tabbed panes nor scrolled pane ... a scroll bar in, but it wouldn't auto-size to the frame. ... > poor eyesight and need to use a font that is larger than that used by ...
    (comp.lang.java.gui)