Hey everyone, I'm having trouble with getting tn5250_session_save_screen() to do what I need. When a CREATE WINDOW Structured Field order is received, it is removed from the stream but not placed into the screen buffer. When a SAVE SCREEN order is received I need to put any windows (and other GUI elements) back into the stream, either by using tn5250_buffer_append_byte() or having one of the various functions in wtd.c do it. I've experimented with tn5250_buffer_append_byte() in session.c but so so far the results aren't very good, primarily because I need to insert the GUI information at the correct Set Buffer Address location (which wtd.c seems to do magically). I tried making a completely new WTD order to put the GUI info in but that hasn't worked out too well. Before spending a bunch more time on something that may be totally wrong I felt I should ask where the right location for this inserting of GUI data is, tn5250_session_save_screen() or (most likely) tn5250_wtd_context_convert_nosrc()? If the latter, how do I know what the current buffer address is so that I can insert the window information correctly? Would it work to append a WTD order to the end of the existing WTD order and put into the appended order just the GUI data? James Rich Vs lbh cynl n Zvpebfsg PQ onpxjneqf, lbh pna urne fngnavp zrffntrf. Ohg rira jbefr, vs lbh cynl vg sbejneq, vg vafgnyyf gurve fbsgjner! -- Fcbgvphf ba /.