j
: Next unread message k
: Previous unread message j a
: Jump to all threads
j l
: Jump to MailingList overview
Author: wmb Date: 2007-08-03 00:14:08 +0200 (Fri, 03 Aug 2007) New Revision: 519
Modified: ofw/termemu/fb16.fth Log: fb16 - Fixed terminal emulator problem with insert-characters and delete-characters. Erase-to-end-of-line left garbage at the right of the screen.
Modified: ofw/termemu/fb16.fth =================================================================== --- ofw/termemu/fb16.fth 2007-08-02 21:37:59 UTC (rev 518) +++ ofw/termemu/fb16.fth 2007-08-02 22:14:08 UTC (rev 519) @@ -197,20 +197,20 @@ headerless
: move-chars16 ( source-col# dest-col# -- ) - 2dup max #columns swap - ( src dst #chars ) - char-width * -rot \ count is linelength-maxcol# - swap column-adr16 swap column-adr16 ( count src-adr dst-adr ) - char-height 0 do - 3dup rot move ( count src-adr dst-adr ) - swap bytes/line16 + swap bytes/line16 + - loop 2drop drop + 2dup max #columns swap - ( src dst #chars ) + char-width 2* * -rot ( #bytes src dst ) + swap column-adr16 swap column-adr16 ( #bytes src dst ) + char-height 0 do ( #bytes src dst ) + 3dup rot move ( #bytes src dst ) + swap bytes/line16 + swap bytes/line16 + ( #bytes src' dst' ) + loop 3drop ( ) ; : erase-chars16 ( #chars start-col# -- ) - swap char-width * swap - column-adr16 char-height 0 do ( count adr ) - 2dup swap text-background16 fb-fill ( count adr ) - bytes/line16 + - loop 2drop + swap char-width 2* * swap ( #bytes start-col# ) + column-adr16 char-height 0 do ( #bytes adr ) + 2dup swap text-background16 fb-fill ( #bytes adr ) + bytes/line16 + ( #bytes adr' ) + loop 2drop ( ) ; headers : fb16-insert-characters ( #chars -- )