Path: utzoo!attcan!uunet!mcvax!ukc!tcdcs!csvax1.cs.tcd.ie!ecarroll
From: ecarroll@csvax1.cs.tcd.ie (Eddy Carroll)
Newsgroups: comp.sys.amiga.tech
Subject: Re: DME and vanishing text
Message-ID: <52431@csvax1.cs.tcd.ie>
Date: 12 Aug 89 11:45:43 GMT
References: <89222.135727WTW101@PSUVM>
Organization: Computer Science Department, Trinity College Dublin
Lines: 27

In article <89222.135727WTW101@PSUVM>, WTW101@PSUVM.BITNET (Bill Warner)
writes:
> I am outputing text in assembly using the DOS funtion Write(...).    I am
> terminating my lines with single linefeeds.  The text outputs to the default
> output device (the screen) just fine.   When I redirect my text to the disk
> (via >df1:bla) then TYPE this file everything is dandy.  However when I edit
> this file with DME I have missing text!
> 
> The missing text occurs when I continue a line of text.  i.e.  I call
> Write(...) and print some text, then I call Write(...) again and print text
> thats terminates with a linefeed.   The latter half of the text dissapears!
> 
> Ideas?  Answers?
> 
>                               Chris
>                               CJC@psuecla

It sounds like you are either accidentally or intentionally outputting a
null byte ($00) at the end of each string you Write(). The Type command
ignores these, but DME treats them as an end-of-line indicator. The
easy solution is to subtract 1 from the 'Length' parameter you are passing
to Write(), so the terminating $00 you have at the end of your strings
won't actually get written.
-- 
Eddy Carroll               ----* Genuine MUD Wizard  | "You haven't lived until
INTER: ecarroll@cs.tcd.ie                            |    you've died in MUD!"
 UUCP: {..uunet}!mcvax!ukc!cs.tcd.ie!csvax1!ecarroll |  -- Richard Bartle