Xref: utzoo comp.sys.ibm.pc:16656 comp.lang.pascal:947 Path: utzoo!attcan!uunet!lll-winken!lll-tis!helios.ee.lbl.gov!nosc!ucsd!ames!pacbell!att!chinet!mcdchg!clyde!watmath!watdragon!violet!ajmyrvold From: ajmyrvold@violet.waterloo.edu (Alan Myrvold) Newsgroups: comp.sys.ibm.pc,comp.lang.pascal Subject: Re: Graphics printing problem Summary: Use BIOS services, not DOS Keywords: Turbo Pascal 4.0, IBM Graphics Printer...HELP!!! Message-ID: <7492@watdragon.waterloo.edu> Date: 23 Jun 88 01:53:20 GMT References:Sender: daemon@watdragon.waterloo.edu Reply-To: ajmyrvold@violet.waterloo.edu (Alan Myrvold) Distribution: na Organization: U. of Waterloo, Ontario Lines: 29 In article palmieri@porthos.rutgers.edu (Tom Palmieri) writes: > I have an annoying problem. From within a Turbo Pascal V4.0 program, > I am trying to use the IBM Graphics Printer's high-resolution graphics > mode. All works fine after sending the correct escape sequence for > this mode (ESC "L" n1 n2, n1+n2*256 = # of graphics bytes), but > whenever I try to send ASCII 26 (control-Z, also EOF) as one of the > graphics bytes, it never gets to the printer I had the same trouble using Turbo C. DOS tries to interpret the special characters that you intend to be just data. Actually, using C, the first problem I had was that carriage returns were being sent as CR/LF pairs ... this messed up the graphics, of course. The best solution I found was to write a routine to send a character out to the printer using the BIOS function 17H, with AH=0 and AL=the character to send. For Turbo C, this is done easiest using the BIOSPRINT function. For Turbo Pascal, you might try the INTR routine. Good luck, Alan Myrvold ajmyrvold@violet.waterloo.edu ------------------------------------------------------------------------ C : the ultimate video game ------------------------------------------------------------------------