AWCTTYPA@UIAMVS.BITNET ("David A. Lyons") (12/27/88)
>Date: Wed, 21 Dec 88 23:36:44 GMT >From: Mark Litscher <marque!lakesys!barak@CSD1.MILW.WISC.EDU> >Subject: Apple //c serial port >I need to find a machine language routine that can send a character >to my Brother M-1109 printer without setting the hi-bit. I have >checked the setup of the printer and the computer, neither are using >parity. I know it can be done, I have utilities that can do it, but I >need to print all 255 graphics characters. The following is untested, but I think it'll work (I've done similar things in the past): 500 POKE 768,169 : POKE 770,76 : POKE 771,237 : POKE 772,253 510 REM LDA # JMP $ED $FD 1000 ?CHR$(4);"PR#1": REM send output to port 1 1010 ?CHR$(9);"Z"; : REM tell serial port to pass everything thru 2000 REM * print character X 2010 POKE 769,X : CALL 768 The idea is to use the following little machine language subroutine at $300: $300: LDA #$xx $303: JMP $FDED ;"cout" The POKE 769 stores a value in the operand of the LDA instruction; when the CALL 768 is executed, the character is loaded into A & fed to COUT (character out). This avoids the problem of Applesoft turning on the high bit before calling COUT from a PRINT statement. >Mark Litscher >barak@lakesys.UUCP >{backbone,uwvax}!uwmcsd1!lakesys!barak --David A. Lyons bitnet: awcttypa@uiamvs DAL Systems CompuServe: 72177,3233 P.O. Box 287 GEnie mail: D.LYONS2 North Liberty, IA 52317 AppleLinkPE: Dave Lyons