From: "Jon" Newsgroups: comp.os.msdos.djgpp References: <57n86.4082$wt2 DOT 26425 AT news1 DOT oke DOT nextra DOT no> <93vde1$2fb$1 AT ctb-nnrp2 DOT saix DOT net> Subject: Re: ASCII GUI Lines: 53 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Message-ID: Date: Mon, 15 Jan 2001 23:28:48 +0100 NNTP-Posting-Host: 130.67.203.185 X-Complaints-To: news-abuse AT nextra DOT no X-Trace: news1.oke.nextra.no 979597675 130.67.203.185 (Mon, 15 Jan 2001 23:27:55 MET) NNTP-Posting-Date: Mon, 15 Jan 2001 23:27:55 MET Organization: Nextra Public Access To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Thanks, I will perhaps read more about that when I know some more assembly, Im only half way through a book called step-by-step assembly, and I think it doesn't cover very much either, so it may take a while before Im able to do that in assembly. Anyway, thank you for taking time replying. Stefan Viljoen wrote in message news:93vde1$2fb$1 AT ctb-nnrp2 DOT saix DOT net... > > Jon wrote in message > news:57n86.4082$wt2 DOT 26425 AT news1 DOT oke DOT nextra DOT no... > > I'm fairly new to programming, and have just started writing a program in > > DJGPP which uses > > an ASCII GUI. The problem is that, it redraws the GUI very slow. Even on > my > > 850 MHZ Athlon, I can see the cursor drawing up the GUI. Currently I use > the > > gotoxy(); function and cprintf(); to draw the GUI. > > But when doing big redraws, it just become too slow, like on another > program > > I made, I used the ASCII character 219 to form a word, which I moved > across > > the screen. This was also terrible slow. > > So, do anyone know of a better way to draw up ASCII graphics without using > > the gotoxy and cprintf? > > Directly access video RAM at 0xB800 - there is a simple formula to calculate > linear memory addresses from X,Y pairs. Check my programming page > http://home.intekom.com/rylan/ > for examples of directly accessing VGA 320x200x256 graphics memory - this > code can work in 80x25x16 color text mode by simply changing the segment > address from 0xA000 ot 0xB800 and fiddling a little with the formula used to > plot points. Note that you'll need to use assembly to use my method, though! > > Regards, > > Stefan Viljoen > F/EMS Dispatcher > Potchefstroom F/EMS > http://home.intekom.com/rylan/ > > >