Re. [Oberon] http://www.oberon.ethz.ch/display.html

Lisias Toledo lisias at unforgettable.com
Sat Jul 13 23:27:08 CEST 2002


cglur at onwe.co.za wrote:

> PROCEDURE SwitchTrident9xxx(bank: LONGINT);
> BEGIN
> 
> >    curBank := bank;
> >    SYSTEM.PORTOUT(3D8H, CHR(bank));
> >    SYSTEM.PORTOUT(3D9H, CHR(bank))
> END SwitchTrident9xxx;

Just to explain it a bit more.

Some SVGA card in past, and I think EVERY ONE nowadays can select a
memory bank to write, and another for read (it was imporant when all we
have to play withou hasle was 640K from real mode).

So the two PORTOUT using the same "bank name" may mean to set the same
memory bank for read AND write. However, as I never programmed the
Trident chips ("just" ATI Mach32, Cirrus 54xx and S3-Virge), i must say
i'm just guessing.


>   SYSTEM.PORTOUT(BankSelectRegister, CHR(bank));
>   SYSTEM.PORTOUT(SpeedSelectRegister, Minimum);
>   SYSTEM.PORTIN(StatusRegister, StatusByte);

-- 
[]s,
(Pink at Manaus.Amazon.Brazil.America.Earth.SolarSystem.OrionArm.MilkyWay.Universe)

Liberdade não é um esforço individual.
A sua só existe se vc garantir a dos outros!

Vapour : The Software's natural state.



More information about the Oberon mailing list