[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug in toswin/miniwin



Hi all!
I guess I've stumbled over a bug in toswin (I'm using 1.6, but this bug is
assumed to be in _EVERY_ version, as well as in miniwin which came with
MTOS108, but presumably in every version of miniwin, too).

The bug is, simply put, that cursor positioning is incorrect. What that
means is, that whenever an app tries to position the cursor with escape
sequences onto a column >95, the cursor moves to the first column.
I use a toswin window of 120*48, and I stumbled into this trap when running
EMACS. (Well, I double-checked TERMCAP, LINES, and COLUMNS for that one!).

My guess is, that the author (Hi, Eric!) uses 'char' for the input byte
stream. When a 'gotoxy' escape sequence occurs, 0x20 gets added to the x
and y values.
Well, 95 + 0x20(=32) makes 127. Any column larger would mean a negative value!
So, to fix this, one simply would have to change 'char' to 'unsigned char'.

But what do you do with >223 columns ??? ;-)=) 

C'ya, Joe

    email: hessdorf@sun.ph-cip.uni-koeln.de
               
    snail mail:
       Joerg Hessdoerfer  | Remember: warranty void if seal is broken!
       Niehler Str. 332   | (broken seal)
       BRD 50735 Koeln
               
    Telephone: (Germany) 0221/714178 (home) or 02203/6013335 (office)