totale beeld 512*384, toch nagenoeg vierkant.
Het afbeeldingsproces
De stuurelektronica van de beeldbuis wordt gevoed
vanuit een videogeheugen dat bestaat uit een viertal
blokken van elk 32 kbyte, de zogenaamde bitplanes.
Deze zijn bij de Olivetti onderdeel van het hoofdgeheu-
gen en als zodanig ook adresseerbaar. Zij kunnen
samen voldoende gegevens bevatten om elk puntje op
het scherm met 1 uit 16 kleuren in te vullen. Voor 16
(24) kleuren heb je 4 bits per punt nodig. Elk van de
bitplanes levert hiervan 1 bit. Binnen een bitplane
vormt elk groepje van 8 bits een byte, zodat voor een
bitplane met de omvang van 640*400 bits
640*50 32.000 bytes geheugenruimte aanwezig moet
zijn. In de Olivetti bevinden de bitplanes zieh op de
adressen A000 t/m B800 van het geheugen.
Een bitplane is goed vergelijkbaar met een drukplaat.
Elke bitplane afzonderlijk is te vullen met patronen
van 4*3 bits (dit zijn dus 'vlaksymbolen'). De positie
op de 'drukplaat' wordt ontleend aan de plaats van
het weer te geven element in de beeldmatrix; welk pa-
troon er wordt gebruikt hangt af van de waarde van
het matrixelement. De vier ingevulde bitplanes vormen
samen de zogenaamde bit map. Figuur 3 toont de in-
houd van deze bitplanes voor een deel van een radar-
beeld van Roggebotzand, met een vergroot fragment
van 8*8 elementen hieruit.
Het omzetten van de getallen uit de beeldmatrix ge-
beurt via een OmzetTabel. Deze tabel bevat voor de
waarden 0 tot 255 BitplaneMappingCodes (BMC's) die
voor elk bitplane aangeven welk patroontje erop moet
worden toegepast. Een 0 betekent: niets, een 2: om het
andere puntje aanzetten en een 4 alle 12 puntjes vullen
(1 en 3 zijn ook mogelijk, maar ogen wat 'korrelig').
De OmzetTabel kan door de BEiTEL-gebruiker zelf wor
den gevuld vanuit een aantal in het programma voorge-
definieerde tabellen, die na kleurtoekenning via de lut
goed bruikbare kleurenschalen opleveren. Heiaas kan
ik deze hier niet tonen, maar het resultaat ziet er kar-
tografisch verantwoord uit.
Het vullen van de bitplanes met patroontjes kan pro-
grammatechnisch op verschillende manieren gebeuren.
Het is mogelijk via procedures die door het bedrijfs-
systeem worden toegeleverd (BIOS INT 10H, funktie
OCH) of die in pakketten als Turbo Graphics of GKS
voorkomen. Een groot nadeel hiervan is, dat dit vullen
tergend langzaam verloopt doordat er geen rekening
kan worden gehouden met de bijzondere struktuur van
de patroontjes 4*3 in relatie tot de organisatie (in
bytes) van het videogeheugen. Daarom is gekozen voor
het direkt in het videogeheugen schrijven van voorge-
bakken 'prentlijnen'. Hoe dat gebeurt wordt voor de
technisch gei'nteresseerde beschreven in de Appendix.
Hoe worden nu de bitplanes door middel van de lut
van kleur voorzien? Dit gaat ongeveer als volgt (zie fi
guur 2). Door de video-hardware worden de bitplanes
elke 1/60 sec uitgelezen en wel zo, dat er steeds een
groepje van 4 bits wordt gevormd. Elke bit is afkom-
stig uit een andere bitplane, maar wel van een
overeenkomstige positie. Er wordt als het wäre door de
bitplanes heen geprikt.
Aangezien elke bit aan of uit kan staan, komt een
groep van 4 bits overeen met de getallen 0 t/m 15.
Deze getallen vormen de ingang tot een Look Up Table
(lut), een 16 posities lange tabel die de kodes voor de
toe te kennen kleuren bevat. Deze kleurkodes zijn ook
weer binair gekodeerd, en wel zo dat de laatste bit (bit
0) bij Blauw hoort, bit 1 bij Groen, bit 2 bij Rood en
bit 3 bij Helder. De kombinatie 1101 (=13) steh dan
helder magenta voor. De lut is door middel van pro-
grammatuur te vullen, met kleurkodes die in getalwaar-
de overeenkomen met de van de bitplanes afkomstige
kodes (zoals toegepast in figuur 2), maar ook met elke
willekeurige andere kombinatie van kleurkodes.
Hierbij zijn er nog veel meer mogelijkheden dan bij
vier drukplaten met vier kleuren inkt! Doordat het ver
anderen van de lut zeer snel kan gebeuren kan de
beeldprent ook razend snel van kleur verschieten: inver-
teren van kleuren, roteren volgens de kleurencirkel, on-
zichtbaar maken van een of meer bitplanes en dergelij-
ke meer. De inhoud van de bitplanes verändert hierbij
niet, net zoals drukplaten hetzelfde blijven wanneer je
er een andere kleur inkt op aanbrengt. Om strukturen
te ontdekken in teledetectiebeelden kan dit erg aantrek-
kelijk zijn en ook kun je zo de rampen laten zien die
optreden bij het zondigen tegen de regels van de karto-
grafische grammatika.
Uitbreidingen en Varianten
De geschetste werkwijze is op verschillende manieren te
verfijnen. Dit is ook gedeeltelijk in beitel gerealiseerd.
Een eerste uitbreiding is, gebruik te maken van een vir-
tuele bit map. Er wordt een geheugenblok gereserveerd
van dezelfde grootte als het videogeheugen. Dit wordt
op dezelfde wijze als hiervoor aangegeven gevuld met
een bit map. Het geheugenblok is echter niet direkt ge-
koppeld aan het beeldscherm, maar is alleen zichtbaar
te maken door het geheel of gedeeltelijk te kopieren
naar het videogeheugen (waarbij dan het overeenkom
stige deel van het videogeheugen weer in het geheugen
blok is op te bergen). Op deze wijze is bijvoorbeeld
snel om te schakelen van een grote beeldprent met
pixels van 4*3 punten naar een voortdurend bijgehou-
den katalogus met beeldprenten in een pixelformaat
van 1*1 punt (figuur 4). De grote beeldprent gaat hier
bij niet verloren. Het oogt spektakulair en is program-
matechnisch niet eens zo moeilijk.
Een tweede uitbreiding is de toepassing van een of
meer virtuele bitplanes voor topografische overlays. In
een daarvoor gereserveerd geheugenblok worden, van
uit een bestand met perceelsgrenzen in vektorformaat,
op een bitplane lijnen 'getekend' (algoritme van Bre-
senham). De inhoud van een of meer bitplanes uit het
videogeheugen wordt vervolgens gekombineerd met de
62
KT 1989.XV.1