[comp.sys.ibm.pc.hardware] Tseng Labs 3000/4000

ron@monu6.cc.monash.edu.au (Ron Van Schyndel) (05/22/91)

cg108dbd@icogsci1.ucsd.edu (Steve -Social Hacker) writes:

>--=}>> On 20 May 91 19:23:13 GMT, tgtbtk@rw9.urc.tue.nl (A. Kuiper) said:

>I'm definately no expert on this, but it seems to me that often when I
>run TS 3000 software on my ET4000's (BOCA & STB), there are often
>large gaps in the screen horizontally.  This only happens in the
>extended modes, and I have yet to see a ET4000 program do this.

The effect sounds like a bank-switching problem.  When you're in an SVGA mode
the screen needs more than 64K but only occupies 64K of address space.

To select the appropriate bank, a register is 'tweaked'.  I think the difference
between the 3000 and 4000 is that the register has changed.

A quick and dirty fix for programmers is to use a fast memory move for direct
screen update, BUT IN 64K-1 blocks.  Then use the BIOS routine to write ONE
pixel on the screen, then another 64K-1, etc.

This way you use BIOS to swap pages, and it really doesn't slow your program
too much.  This method will work on ANY card with 64K banks.

Hope this helps,

RON
-- 
Ron van Schyndel                      ron@monu6.cc.monash.edu.au
Physics Department, Monash University ron%monu6.cc.monash.edu.au@uunet.UU.NET
CAULFIELD EAST, Victoria, AUSTRALIA   {hplabs,mcvax,uunet,ukc}!munnari!monu6..
Location: 37 52 38.8S  145 02 42.0E   Phone: +613-573-2567   Fax: +613-573-2358