Lars Gjörling
<6825>
· Text 5686 · w8 · kommentar
1986-11-29 00:38
Ärende: VTEX
Som ledning för dem som vill pula med dumprutinen i VTEX.806 vill jag
anföra:
Ingen av raderna 1060-1100 får tas bort. Rutinen läser på skärmen och
i attributminnet. Om attributet 237 påträffas måste den raden skippas,
och om attributen 255 eller 246 påträffas måste Flag sättas till 1!
Orsaken är att om man på skärmen skall lägga in ett tecken med EL (dvs
med dubbel bredd, så läggs samma asciikod in i två på varandra följande
adresser. Till den första läggs i attributminnet värdet 255 och till
den andra aktuellt färgvärde. Vanlig läsning på skärmminnet skulle alltså
betyda att samma bokstav skickades dubbelt till printern. Genom att Flag=
1 och rad 1100 K=K+1+Flag, kommer bara varannan adress avläsas, när
attribut 255 har påträffats.
Vid dubbel höjd (som är mycket vanlig i videotexbilder) läggs samma ascii-
kod i fyra adresser, som ligger 'i kvadrat'. Den övre vänstra har attribu-
tet 246 och den undre vänstra attributet 237. De båda högra har gällande
färgvärde. Har attributet 246 påträffats, måste därför samma sak göras
som vid attribut 255 ovan. Men dessutom måste den rad, där attribut 237
har påträffats hoppas över, då den upprepar den föregående radens ascii-
koder.
Vad man skall skicka iväg till printern (med Elon¤ resp Dblon¤) beror
däremot på printern. Klarar den även dubbel höjd, får man ta reda på
rätt kod för detta. Klarar den bara dubbel bredd, så bör man sätta den
koden både i Elon¤ och Dblon¤. Klarar den ingendera, så kan väl raderna
1070 och 1080 kortas av genom att man sätter utropstecken (!) efter
kolon (och alltså bara sätter Flag=1). Likaså kan väl då rad 1115 ändras
till enbart ;#Pr .
Mvh Lars Gjörling <6825>