Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 8 Oct 1995 15:14:22 -0700 (PDT)
From:      Julian Elischer <julian@ref.tfs.com>
To:        didier@aida.org (Didier Derny)
Cc:        joerg_wunsch@uriah.heep.sax.de, hackers@freebsd.org
Subject:   Re: direct acces to the text screen memory
Message-ID:  <199510082214.PAA14022@ref.tfs.com>
In-Reply-To: <Pine.BSF.3.91.951008215806.240A-100000@aida> from "Didier Derny" at Oct 8, 95 10:01:00 pm

next in thread | previous in thread | raw e-mail | index | archive | help
don't do it that way.....
use curses

man 3 curses

it does a lot of optimisation for you

it works on an 'in memory' copy of the screen and uptates the screen
when asked..
the difficult part will be learning whan to ask it to do a screen dump..
(whenever you move to a differnt line?, every 10th of a second?.. you
experiment)

if nothing has changed, it doesn't write anything out..
if  only a few things have changed, then that's all it writes..

use ncurses, and get propper function-key and cursor key support


that way you can run on almost any terminal,  not just the console...

julian

> 
> On Sun, 8 Oct 1995, Julian Elischer wrote:
> 
> > > 
> > > As Didier Derny wrote:
> > > > 
> > > > Is there any way to write directly in the text screen memory.
> > > > 
> > > > I'm writing a commodore 8000 emulation and the use of ANSI sequences
> > > > to write in the screen is extremely slow.
> > 
> > for this sort of thing it starts to become attractive to run a local frame
> > buffer in the program and do totoal screen updates every now and then..
> > (I guess you could say that this is what curses does..)
> > > 
> > > There is a way (you could mmap() the frame buffer), but using
> > > something like curses is strongly recommended instead.  This way, your
> > > emulation will automagically also run inside an xterm or on a serial
> > > terminal.
> > > 
> > > -- 
> > > cheers, J"org
> > > 
> > > joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE
> > > Never trust an operating system you don't have sources for. ;-)
> > > 
> > 
> > 
> 
> The Commodore 8032 directly write in the screen memory. I transform 
> the write operation to the screen memory by an optimized ANSI sequences
> everything works fine but when the Commodore scroll the screen 
> the entire screen update becomes very slow since it rewrite the entire
> screen.
> 
> How can I map the text screen ?
> 
> 
> --
> Didier Derny 
> didier@aida.org
> --- I boycott everything from: new zealand, australia, denmark, england
> 
> 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199510082214.PAA14022>