@RUTGERS.ARPA:prindle@nadc (03/12/85)
From: prindle@NADC This is a reply to gitpyr!wutka@topaz. To generate a break, all that is necessary is to toggle the appropriate bit (transmitted data) on the CIA chip that is driving the RS-232 modem. The code to do this is shown below (Eric, you'll recognize this!): lda $dd00 ;turn off bit 2 and #$fb sta $dd00 ldy #250 ;delay loop2 ldx #250 loop1 dex bne loop1 dey bne loop2 lda $dd00 ;turn on bit 2 ora #$04 sta $dd00 If your timing of the BREAK signal is critical, you can adjust the constants (currently 250) to get the exact delay you want, although most uarts will detect BREAK anytime the stop bit is missing, so for the slowest baud rate conceivable of 50 bps, a 10 bit frame would be 1/5 second, so 1/4 second on up should be adequate for any system to detect break. You don't want it to be too long, because your RS-232 input buffer could be filling up while you are hanging around in the delay loop, and at 1200 baud it doesn't take very long (~2 seconds) to fill. Hope this makes it clear. Frank Prindle Prindle@NADC.arpa