Hi Bart, Arkady, other kernel people, what do you think about the following problem:
We only have ONE scr_pos variable in the SDA but several functions use it for several char devices as far as I can tell. So tabstop calculation will probably go wrong when you "mix" accesses to, say, CON and AUX. How can this be avoided, how does MS DOS or DR DOS behave in this context? We could limit the use of scr_pos to "CON only". That might make users of CTTY AUX unhappy. Still acceptable? If not, what are the alternatives? Or are there already enough checks in the existing code to some- how ensure that scr_pos is only used for CON...? Affected functions are: update_scr_pos - uses categories CR, BS, LF, BELL, other cooked_write_char - calls update_scr_pos, special-casing TAB write_char_stdout - as cooked_write_char but skip if CONOUT read_line - works with (update_) scr_pos for LF and "BS over TAB" DosRWSft - calls read_line via read_line_handle if cooked READ CONIN and also - calls update_scr_pos if BINARY (raw?) WRITE CONOUT Directly reachable are: write_char_stdout int - as 21.1 / 21.2 / 21.9 and read_line - as int 21.a, others are used by int 21 indirectly. Note also that DosRWSft assumes that input handle == output handle when it invokes read_line_handle, while int 21.a calls the read line function with STDIN and STDOUT as arguments. Thanks for having a look :-) Eric ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Freedos-kernel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freedos-kernel
