Bij
het
vaststellen
van
de waarden
voor
het DATA-statement
bij
onze eerste
tekening
hebben we
gesproken over
het Most
Significant
Byte (MSB)
en
de
Least
Signilicanl
Byte (LSB).
Daar
hebben
we
voor
het
gemak gesteld
dat
de
twee
CH
R$(nn)Juncties
samen de printer
vertellen hoeveel
data hij kon
verwachten.
Hieronder wordt
nader ingegaan op
het
verband tussen
MSB
en
LSB
enerzijds
en DATA-statements
anderziids.
Elk
getal
in
een
DATA-stalement
vertegenwoordigt
6en byte
inlormatie
die
naar
de printer
wordt gestuurd.
Elke byte
vertegenwoordigt
een
aparte puntkolom. Als
u
255 bytes
of
minder
verstuurt,
d.w.z. als uw DATA-statement(s) 255, of minder
getallen
bevat(ten),
dan
is
MSB altijd
CHR$(0).
Als
u
256 of meer bytes
verstuurt,
ligt het
enigszins anders.
MSB
is
dan
CHR$(1
)
en
LSB
geeft
het
verschil
aan
tussen
het
totale
aantal
bytes
dat
u
wilt
verstu ren en
256.
Stel dat
u
300 bytes
wil
versturen
(u
adresseert
dan op
een
regel 300
puntkolommen).
MSB
is
dan CHR$(1)
en
LSB
is
CHR$(4a).
MSB
geeft
dus
telkens
de
256e
plaats
aan;
LSB
geelt
de
eenheden
aan. Een
0
op de
256e
plaats
betekent
dat minder dan 256 bytes
worden verstuurd
en
dat
het
totale aantal bytes aangegeven
wordt door
LSB. Door op de
256e
plaats (MSB) een
.1
te
zetten
en een 44 in LSB
geelt
u
aan
dat
u
256 plus
44
bytes
(in
totaal 300 bytes)
naar de
printer
wilt
sturen.
De
printer moet
klaar
zijn
om de
getallen
in
de
DATA-statements te
ontvangen,
dit
is
nu precies wat
de
MSB en
de
LSB
CHR$(nn)-functie doet.
U
kunt
niet
meer
dan
480 puntkolommen tegelijk adresseren
omdat
de
printer
niet meer
dan
480 kolommen
naast
elkaar
kan
afdrukken. Voor MSB
heeft
u
daarom
slechts de
keuze
uit 0
of
'1.
Voor LSB (als
u
minder dan 256
bytes
verstuurt)
kunt
u
een waarde
van
1
tot 255
speciliceren. Versluurt
u
meer dan 256 bytes, dan
kan
voor
LSB een waarde van
1
tot 244
worden
gespecificeerd.
Als
u
voor MSB een
I
(dus 256 bytes)
opgeeft,
kan LSB
nooit
meer ztln
dan
224, immers,
224 plus 256 geeft samen
480
(het
maximale
aantal
bytes
olwel puntkolommen
dat op 6en regel
kan
worden afgedrukt.
ln 66n
programmaregel
kunnen tot 480
getallen
in
een
DATA-statement
worden opgenomen.
Zolang
u
evenwel
IVlSB
en
LSB
correctopgeeft, worden
de data
sequentieel
over meerdere
programmaregels gelezen.
De
computer
leest uit het DATA-statement het
aantal
getallen dat geliik
is aan
het aantal
bytes dat
in
de
CHR$(nn)
NISB
en
CHB$(nn)
LSB
wordt gespecilieerd;
daarna geeft
u
de printer een linefeed.
Voor
elke
afgedrukte
regel
graphics
moet
u
de
escape-code voor
de
grafische
mode
intikken;ook
moet
u
dan
MSB en LSB
opnieuw defini6ren overeenkomstig
het aantal bytes dat
u
voor
die
betrelfende
regel wilt
versturen.
(Tenzij
u
gebruikt
maakt
van de
subroutine
die de
printer
in
de
grafische mode brengt
en
tegelijk
automatisch
MSB en LSB
optelt
bij
het
telkens doorlopen
van die
subroutine).