|
|
DataMuseum.dkPresents historical artifacts from the history of: RC4000/8000/9000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC4000/8000/9000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 21504 (0x5400)
Types: TextFile
Names: »algolredtxt«
└─⟦621cfb9a2⟧ Bits:30002817 RC8000 Dump tape fra HCØ. Detaljer om "HC8000" projekt.
└─⟦0364f57e3⟧
└─⟦this⟧ »algolredtxt«
└─⟦667bb35d6⟧ Bits:30007480 RC8000 Dump tape fra HCØ.
└─⟦4334b4c0b⟧
└─⟦this⟧ »algolredtxt«
(algolred=slang fpnames list.no xref.no type.yes
)
\f
s. a40,b40,j40 ;
w.
k=h55 ;
b0: 0,0 ;
al w1 x1+2 ;
rs. w1 b0. ; fp base+2
al. w3 b1. ;
al w3 x3-14 ;
al w0 0 ;
jd 1<11+0 ; set interrupt
jl. j31. ;
b1: al w2 10 ;
jl. w3 h26.-2 ;
al w2 0 ;
b2: rl. w0 x2+b1.-14;
sn w2 10 ;
ws. w0 b0. ;
jl. w3 h32.-2 ;
1<23+32<12+8 ;
al w2 x2+2 ;
sh w2 12 ;
jl. b2. ;
al w2 10 ;
jl. w3 h33.-2 ;
dl. w1 b1.-12 ;
dl. w3 b1.-8 ;
jl. (b1.-4) ;
b3: al w2 25 ;
jl. w3 h34.-2 ;
al. w1 h21. ; curr out zone descr
al. w2 a8. ;
jl. w3 h30. ; unstack output-zone
rl. w3 a11. ;
jl. w2 j33. ; test punch
al. w0 a9. ;
jl. w3 h31.-2 ;
jl. w3 h30.-4 ; unstack in-zone
b4: al w2 10 ;
jl. w3 h34.-2 ;
al w2 0 ;
b5: jl. h7. ;
a0: 0 ; indryk
a1: 2 ; antal space pr. begin
a2: 8 ; antal space under comment
a3: 0 ; NL FF
a4: 0 ; klasse
a5: 0 ; sidste tegnnr. ved test label
a6: -1 ; pointer i a10 (buffer)
a8: 0,r.4 ; stack chain for stack curr. outputzone
a9: <:<10>slut <0>:>;
a11:0 ; adr of outputduc
a12:0 ; adr of inputduc
h.
; klasse tabel
a15:0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0;
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0;
0,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6;
6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,6;
0,7,7,7,6,7,6,6,6,6,6,6,6,6,6,6;
6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,0;
w.
\f
;; giveupaction for io
; reg call retur
; w0 answer addr
; w1 zone descr addr
; w2 share descr addr
; w3 status word
b. g5,f5
w.
am a11-a12 ;
j30:rl. w2 a12. ; addr of duc
ds. w1 g1. ;
ds. w3 g3. ;
al. w1 h21. ; curr out zone descr
al. w2 a8. ;
jl. w3 h30. ; unstack curr output
jl. w3 h30.-4 ; unstck curr input
dl. w2 g3. ;
jl. h7. ;
g0: 0 ;
g1: 0 ;
g2: 0 ;
g3: 0 ;
e.
a10: ;
\f
;; parametercheck
b. f10,g10
w.
j31:bl w0 x2+10 ;
se w0 6 ; if no source then
jl. f0. ; goto f0
rs. w2 j31. ;
al. w1 h21. ; curr. out zone descr addr
al. w2 a8. ; stack chain addr
jl. w3 h29. ; stack outputzone
al w2 0 ;
al. w3 j30.-2 ;
ds w3 x1+h2+2 ;
rl. w2 j31. ;
al w2 x2+2 ; source name
rs. w2 a11. ;
jl. w3 h28.-2 ; connect zone
se w0 0 ; if ok.no then
jl. j32. ; goto j32
rl. w3 a11. ;
jl. w2 j33. ; test punch
rl. w2 j31. ;
ba w2 x2+1 ;
f0: ba w2 x2+1 ; next param
bz w0 x2+1 ;
se w0 10 ; if no object
jl. f1. ; then goto f1
rs. w2 j31. ;
jl. w3 h29.-4 ; stack curr in-zone
al w2 0 ;
al. w3 j30. ;
ds w3 x1+h2+2 ;
rl. w2 j31. ;
al w2 x2+2 ; object name
rs. w2 a12. ;
jl. w3 h27.-2 ; connect inputzone
se w0 0 ; if ok.no then
jl. j32. ; goto j32
rl. w2 j31. ;
ba w2 x2+1 ; next param
f1: al w3 0 ;
f2: bl w0 x2 ;
sh w0 2 ;
jl. j21. ; goto start
bz w0 x2+1 ;
sn w0 4 ; if integer then goto f3
jl. f3. ;
al. w0 g0. ;
al. w1 h21. ;
al. w2 a8. ;
jl. w3 h30. ; unstck outputzone
jl. w3 h31.-2 ;
bz w1 x2+1 ;
al w0 x2+2 ;
sn w1 10 ; if name param then
jl. w3 h31.-2 ; write name
jl. b4. ; else goto stop
f3: rl w0 x2+2 ; param
rs. w0 x3+a1. ;
al w3 x3+2 ;
ba w2 x2+1 ;
sh w3 2 ;
jl. f2. ;
jl. j21. ;
g0: <:<10>*** param to algolred <0>:>;
e.
\f
;; fejludskrift for connect zone
b. f10,g12
w.
g4: <: name format illegal<10><0>:>;
g5: <: not allowed<10><0>:>;
g6: <: convention error<10><0>:>;
g7: <: not user, non exist<10><0>:>;
g8: <: malfunctioning<10><0>:>;
g9: <: no more resources in your process<10><0>:>;
h.
g10:0,0,g8-g9,g7-g9,g6-g9,g5-g9,g4-g9;
w.
j32:am (0) ;
bl. w1 g10. ; text adresse
al. w0 x1+g9. ;
rs. w0 g0. ;
al. w1 h21. ;
al. w2 a8. ;
jl. w3 h30. ; unstack outputzone
rl. w2 j31. ;
al w0 x2+2 ;
jl. w3 h31.-2 ; udskriv entry name
rl. w0 g0. ;
jl. w3 h31. ; udskriv fejl
jl. b4. ; goto slut
g0: 0 ;
e.
\f
;; test punch
; reg call return
; w0 uaendret
; w1 -
; w2 returadr udef
; w3 entryadr -
; tester om outputduc. er puncher, idet der da laves
; 150 nulkarakterer
b. g12,f5
w.
j33:ds. w1 g1. ;
ds. w3 g3. ;
sn w3 0 ;
jl. f3. ;
al. w1 g4. ;
jd 1<11+42 ; lookupentry
se w0 0 ; if result<>0 then
jl. f1. ; goto f1 (test note)
f0: bz w2 x1+1 ; kind
se w2 12 ; if kind<>12 then
jl. f3. ; goto f3.
al. w2 g9. ;
al. w3 g10. ; first and last address
ds. w3 g8. ;
al w3 x1+2 ;
al. w1 g5. ;
jd 1<11+8 ; reserve punch
jd 1<11+16 ;
al. w1 g11. ;
jd 1<11+18 ;
rl. w2 g12. ;
se w2 0 ; if g12<>0 then
jd 1<11+10 ; release punch
rs. w3 g12. ; else lad g12<>0
jl. f3. ; retur
f1:
c.h57
rl w3 x3 ;
al. w1 h52.+2 ; first note
f2: sn w3 (x1-2) ; if entry = note then goto
jl. f0. ; goto f0
al w1 x1+22 ;
sh. w1 h53. ;
jl. f2. ; goto f2
z.
f3: dl. w1 g1. ;
jl. (g2.) ;
g0: 0
g1: 0
g2: 0
g3: 0
g4: 0,r.10 ;
g5: 5<12+2 ;
g7: 0 ;
g8: 0 ;
g9: 0,r.50 ;
g10: ;
g11:0,r.8 ;
g12:0
e.
\f
;; læseprocedure
; reg call retur
; w0 klasse af sidst læste tegn
; w1 uændret
; w2 sidst læste tegns isoværdi
; w3 returadr udef
b. f10,g10
w.
j4: am 1 ; læs og skip space
j3: am 4 ; læs og store space
j2: am 2 ; læs 1 tegn
j1: am 4 ; læs og store indtil klasse<2
j0: al w2 0 ; læs og store indtil klasse<6
ds. w1 g1. ;
ds. w3 g3. ;
f0: jl. w3 h25.-2 ; læs et tegn
bz. w0 x2+a15. ; klasse
rs. w0 a4. ; store klasse
rl. w1 g2. ;
sl w1 11 ; if spaceskip then
jl. f2. ; goto f2
sn w1 6 ; if læs 1 karakter then
jl. f3. ; goto f3
jl. w3 j10. ; else store det læste tegn
am. (g2.) ; og hop til aktion (g2)= 0 , 4 eller 10
jl. f1. ; if læs indtil klasse<6 then
f1: sh w0 5 ; if klasse<6 then
jl. f3. ; goto f3
sh w0 1 ; else if stop ved kl>2 then
jl. f3. ; goto f3
jl. f0. ; og læs næste
f2: se w2 32 ; if tegn=space or
sn w2 0 ; tegn=0 then
jl. f0. ; læs næste
f3: rl. w1 g1. ; else stop
jl. (g3.) ;
g0: 0 ;
g1: 0 ;
g2: 0 ;
g3: 0 ;
e.
\f
;; procedure store tegn(tegn)
; reg call retur
; w0 uændret
; w1 udef
; w2 tegn uændret
; w3 returadr -
; ved hop til j9 gemmes tegnet i a10+0
; ved hop til j10 gemmes tegnet i a10+(a6)
b. g5,f5
w.
j9: al w1 -1 ;
rs. w1 a6. ;
j10:rl. w1 a6. ; pointer i tegnbuffer
al w1 x1+1 ;
rs. w1 a6. ; tæl en frem
hs. w2 x1+a10. ; store tegn
jl x3 ;
e.
\f
;; procedure udskrivtegn(antal)
; reg call retur
; w0 antal tegn uændret
; w1 -
; w2 -
; w3 returadr. -
; udskriver det antal tegn, som w0 angiver,
; fra a10 og fremefter
b. g5,f5
w.
j11:ds. w1 g1. ;
ds. w3 g3. ;
al w0 0 ;
f0: am (0) ;
bz. w2 a10. ; næste tegn
jl. w3 h26.-2 ;
ba. w0 1 ; tæl
sh. w0 (g0.) ; if w0<=antal then
jl. f0. ; goto f0
rl. w1 g1. ;
dl. w3 g3. ;
jl x3 ;
g0: 0 ;
g1: 0 ;
g2: 0 ;
g3: 0 ;
e.
\f
;; udskriver 1 tegn og sætter a3
; reg call retur
; w0 (1) udef
; w1 uændret
; w2 tegn -
; w3 returadr udef
; udskriver det tegn som står i w2
; ydlig udføres
; ved hop til j12 sættes a3 til 1
; ved hop til j13 sættes a3 også til 1 men da er
; w0 initialiseret i forvejen
b. g5,f5
w.
j12:al w0 1 ; a3:=1
j13:rs. w0 a3. ; a3:=1
j14:ds. w2 g2. ; kun udskrivning
rs. w3 g3. ;
jl. w3 h26.-2 ; udskriv tegnet
dl. w2 g2. ;
jl. (g3.) ;
g1: 0 ;
g2: 0 ;
g3: 0 ;
e.
\f
;; space og new-line skrivning
; reg call retur
; w0 antal space uaendret
; w1 udef
; w2 uændret
; w3 returadr -
; ved hop til j16 udskrives space hvis a3=1
; ved hop til j17 udskrives NL og space hvis a3=0, ellers
; kun space, ved retur er a3 altid 0
b. g5,f5
w.
j15:rl. w0 a0. ; hoppes til j15 init w0 her
j16:am 1 ;
j17:al w1 0 ;
ds. w1 g1. ;
ds. w3 g3. ;
rl. w2 a3. ;
se w2 0 ; if -,nl then
jl. f0. ; goto f0.
se w1 0 ; if hop til j16 then
jl. f1. ; hoppes ud
al w2 10 ; else udskriv NL
jl. w3 j14. ;
f0: jl. w3 j18. ; og space
al w3 0 ;
rs. w3 a3. ; NL:=falsk
f1: dl. w3 g3. ;
rl. w0 g0. ;
jl x3 ;
g0: 0 ;
g1: 0 ;
g2: 0 ;
g3: 0 ;
e.
\f
;; spaceudskrivning
; reg call retur
; w0 antal uaendret
; w1 -
; w2 -
; w3 returadr -
; udskriver antal space
b. g5,f5
w.
j18:ds. w1 g1. ;
ds. w3 g3. ;
f0: al w2 32 ;
sh w0 0 ; if antal er udskrevet then
jl. f1. ; goto f1
jl. w3 h26.-2 ; else udskriv 1 space
bs. w0 1 ; w0:=w0-1
jl. f0. ;
f1: dl. w1 g1. ;
dl. w3 g3. ;
jl x3 ;
g0: 0 ;
g1: 0 ;
g2: 0 ;
g3: 0 ;
e.
\f
;; compare
; reg call retur
; w0
; w1
; w2
; w3 returadr returadr+ se kommentar
; sammenligner ordet i a10 or fremefter med hhv
; end else array begin comment
; er ordet i a10 lig med et af de nævnet hoppes hhv
; 2 4 6 8 10 byte over ved returhop
b. f10 ,g15 ;
h.
g4: 101,110,100, 0, 0, 0, 0, 3; end
g5: 101,108,115,101, 0, 0, 0, 4; else
g6: 097,114,114, 97,121, 0, 0, 5; array
g7: 098,101,103,105,110, 0, 0, 5; begin
g8: 099,111,109,109,101,110,116, 7; comment
w.
j19:ds. w1 g1. ;
ds. w3 g3. ;
al. w1 a10. ; adr paa ord
al. w2 g4. ; 1. ord
f0: rl w0 x2 ;
sn w0 (x1) ; if 2 1. tegn er ens then
jl. f1. ; goto f1
al w2 x2+8 ; else
sh. w2 g8. ; if flere then
jl. f0. ; goto f0
jl. f3. ; else goto f3
f1: bz w3 x2+7 ; laengde
se. w3 (a6.) ; if fundne ords laenge<>ordlaengde then
jl. f3. ; goto f3
al w3 x3-1 ;
f2: am x3 ;
bz w0 x2 ; load tegn
am x3 ;
bs w0 x1 ; minus næste tegn i buffer
se w0 0 ; if tegn er forskellige then
jl. f3. ; goto f3.
al w3 x3-1 ;
sl w3 2 ; if flere tegn then
jl. f2. ;
al. w3 g4.-8 ; else beregn returadresse
ws w3 4 ;
ac w3 x3 ;
ls w3 -2 ; nu er w3 2 4 6 8 10 for hhv
am x3 ; end else array begin comment
f3: al w3 0 ;
wa. w3 g3. ;
dl. w1 g1. ;
rl. w2 g2. ;
jl x3 ;
g0: 0 ;
g1: 0 ;
g2: 0 ;
g3: 0 ;
e.
\f
;; kopiering
; reg call retur
; w0 antal space uændret
; w1 udhopstegn uaendret
; w2 sidste tegn sidste tegn
; w3 returadr udef
; først undersøges om (w1)<>(w2), for er de ens hoppes
; retur, ellers udskrives tegnet i w2, og der læses og
; skrives, indtil tegnet i w1 mødes, dette sidste tegn
; udskrives ikke. Mødes der et NL sættes det antal space,
; som w0 angiver
b. g5,f5 ;
w.
j20:ds. w1 g1. ;
ds. w3 g3. ;
rl. w0 a4. ; 1. tegns klasse hentes
f0: sn. w2 (g1.) ; w2<> udhopstegn
jl. f1. ; hvis ja - hop ud
jl. w3 j14. ;udskriv tegnet
jl. w3 j2. ; det næste tegn læses
se w0 1 ; er tegnet NL eller FF uskrives
; det, og evt efterfølgende space
; skippes, ellers
jl. f0. ;
jl. w3 j13. ;
rl. w0 g0. ; hent space og
jl. w3 j18. ; sæt space
jl. w3 j4. ; læs tegn sålænge de er space
al w3 0
rs. w3 a3.
jl. f0. ;
f1: dl. w1 g1. ;
rl. w3 g3. ;
jl x3 ;
g0: 0 ;
g1: 0 ;
g2: 0 ;
g3: 0 ;
e.
\f
;; læs og vælg
b. g10,f10 ;
w.
j21:jl. w3 j2. ; læs et tegn
f1: sn w2 60 ; tegn forskellig fra <
jl. j29. ; ellers hop til behandling af venstrehak
sn w2 25 ; tegn <> EM
jl. b3. ; ellers hop til EM udskrivning or slut
sn w0 1 ; tegn <> NL
jl. f3. ; ellers hop til behandling af NL
sl w0 6 ; tegn <> bogstav
jl. f4. ; ellers hop til behandling af bogstaver
rl. w3 a3. ; a3 er 1 efter NL og ellers 0
se w3 0 ;
jl. w3 j15. ; sæt space hvis a3=1
j22:jl. w3 j14. ; udskriv tegn i w2
jl. j21. ;
f3: jl. w3 j12. ; udskriv 1 tegn og sæt a3=1
jl. w3 j4. ; skip space
jl. f1. ; når der skippes space står der et tegn
; i w2 så læsningen ved f2 udelades
f4: jl. w3 j9. ;
se w0 7 ; if tegn<> a,b,c,e then
jl. j27. ; goto j27 (test label og udskriv)
jl. w3 j0. ; læs indtil kl<6
jl. w3 j19. ; compare
jl. j27. ; ikke fundet
jl. j25. ; end
jl. j27. ; else
jl. j26. ; array
jl. j23. ; begin
jl. j24. ; comment
e.
\f
;; begin
b. g5,f5 ;
w.
j23:rl. w0 a0. ; hent space
jl. w3 j17. ; udskriv NL og space
al w0 4 ;
jl. w3 j11. ; udskriv begin
rl. w0 a0. ;
wa. w0 a1. ; space:=space+indryk
rs. w0 a0. ;
al w2 10 ;
jl. w3 j12. ; udskriv NL og sæt a3 til 1
jl. w3 j4. ; skip space
se w0 1 ; w0 er 1 ved NL eller FF
jl. j21.+2 ; er det ikke tilfældet bruges
; karakteren i w2
jl. j21. ; ellers skippes den (der læses oveni)
; behandling af begin slut
e.
\f
;; comment
b. g5,f5 ;
w.
j24:rl. w0 a0. ; hent space
jl. w3 j17. ; udskriv NL og space
al w0 6 ;
jl. w3 j11. ; udskriv comment
bz. w2 a10.+7 ; hent det 1. tegn efter comment
rl. w0 a0. ;
wa. w0 a2. ; etekst+space til w0
al w1 59 ; semikolon
jl. w3 j20. ; kopier
jl. w3 j14. ; udskriv semikolon
jl. j21. ; og behandling af comment er slut
e.
\f
;; end
b. g10,f10 ;
w.
j25:rl. w0 a0. ;
ws. w0 a1. ; space:=space-indryk
sh w0 -1 ; if indryk var lig med 0 then
jl. j27. ; goto j27 (der er ikke mødt et begin endnu)
rs. w0 a0. ;
jl. w3 j17. ; sæt space
al w0 2 ;
jl. w3 j11. ; udskriv end
rl. w0 a0. ; space hentes og er
sl w0 1 ; den <= 0 hoppes
jl. f0. ; til slut
al w1 25 ;
bz. w2 a10.+3 ;
jl. w3 j20. ; kopier indtil EM mødes
jl. b3. ; og hop saa til slut
f0: bz. w2 a10.+3 ; hent tegn efter end
f1: rl. w0 a4. ; hent tegnklasse
f2: sn w2 59 ; er tegnet ';' er der ingen
; kommentarer efter end
jl. j22. ; og der hoppes ud
sn w2 25 ; if tegn=25 then
jl. b3. ; goto b3 (stop)
sl w0 5 ;
jl. f4. ; bogstav
sn w0 1 ;
jl. f3. ; NL eller FF
jl. w3 j15. ; lav evt space
jl. w3 j14. ;
jl. w3 j2. ; læs 1 tegn
jl. f2. ;
f3: jl. w3 j13. ; sæt nl og skip space
jl. w3 j4. ;
jl. f2. ;
f4: jl. w3 j9. ; store tegn i a10+0
jl. w3 j1. ; læs indtil kl<2
jl. w3 j19. ; sammenligning med hhv end else array
; begin comment
jl. f6. ; ikke genkendt
jl. j25. ; end
jl. j28. ; else
jl. f6. ; array
jl. f6. ; begin
f6: rl. w0 a6. ; comment
bs. w0 1 ;
jl. w3 j11. ;
am. (a6.) ;
bz. w2 a10. ;
jl. f1. ;
e.
\f
;; array
b. g5,f5 ;
w.
j26:jl. w3 j15. ; evt NL og spaceskrivning
al w0 4 ;
jl. w3 j11. ; udskriv array
bz. w2 a10.+5 ; 1. tegn efter array
rl. w0 a0. ; space
al w1 59 ; udhopstegn
jl. w3 j20. ; kopier
jl. w3 j14. ; udskriv semikolon
jl. j21. ; behandling af array slut
e.
\f
;; test label og udskriv
b. f5,g5 ;
w.
j27:rl. w0 a4. ;
sl w0 2 ; if tegnklassen>= 2 then
jl. w3 j1. ; goto j1 (læs indtil kl<2)
rl. w1 a6. ; lad a5 pege på 1. tegn med
rs. w1 a5. ; klasse mindre end 2
se w2 32 ; if sidste tegn<>32 then
jl. f0. ; hoppes følgende spacelæsning over
jl. w3 j3. ; læs indtil tegn<>space
f0: se w2 58 ; er det læste tegn <>58 (kolon)
jl. j28. ; hoppes videre
jl. w3 j3. ; ellers læs og store space
sn w0 1 ; er det 1. tegn derefter et NL eller FF
jl. f1. ; antages det foranstående, at være en label
se w2 59 ; else if tegn=semikolon eller dets
sl w0 6 ; tegnklasse er 6 eller 7 then
jl. f1. ; goto f1 (labelbehandling)
\f
;; udskrivning
j28:jl. w3 j15. ; sæt evt space
rl. w0 a6. ; det sidst læste tegn udskrives ikke
bs. w0 1 ; da det kan være starten på begin end
jl. w3 j11. ; osv, udskrivning
rl. w3 a6. ;
bz. w2 x3+a10. ; hent a(a6) til w2
rl. w0 a4. ; og dets tegnklasse til w0
jl. j21.+2 ; hop til behandling af et karakter
\f
;; label
f1: al w0 0 ;
jl. w3 j17. ; skriv NL og sæt nul space
al w1 58 ;
rl. w2 a5. ;
hs. w1 x2+a10. ;
al w0 x2 ;
jl. w3 j11. ; ved retur er w0 (a5)+1
rl. w2 a0. ; hent space, skal der sættes flere
ws w2 0 ; space efter etiketten er w2 nu >0
sh w2 0 ;
jl. f3. ;
al w0 x2 ; og antallet flyttes til w0
jl. w3 j18. ; og de sættes
f3: al w1 0 ; sæt NL
rs. w1 a3. ; til falsk
am. (a6.) ; a6 peger på det 1. bogstav efter
bz. w2 a10. ; kolon, som hentes til w2
rl. w0 a4. ; tegnklasse
jl. j21.+2 ; hop til behandling af en karakter
e.
\f
;; venstrehak
b. g5,f5 ;
w.
j29:jl. w3 j15. ; hent space til w0
jl. w3 j14. ; venstrehak
jl. w3 j2. ; hent et tegn
se w2 58 ; er tegnet ikke et kolen
jl. j22. ; hoppes til udskrivning af dette
f0: al w1 58 ;
rl. w0 a0. ;
jl. w3 j20. ;
jl. w3 j14. ;
jl. w3 j2. ; der læses et tegn er det
se w2 62 ;et højrehak et strengen slut
jl. f0. ; ellers hoppes til videre læsning
jl. j22. ; det sidst læste tegn udskrives
e.
e.
e.
\f
▶EOF◀