DataMuseum.dk

Presents historical artifacts from the history of:

RC4000/8000/9000

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RC4000/8000/9000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦b445b48d8⟧ Rc489kSubCat

    Length: 10752 (0x2a00)
    Types: Rc489kSubCat
    Names: »ctest«

Derivation

└─⟦667bb35d6⟧ Bits:30007480 RC8000 Dump tape fra HCØ.
    └─⟦4334b4c0b⟧ 
        └─⟦this⟧ »ctest« 

OctetView

0x0000…0033 (0,) Rc489kSubCatEnt {f00=0x0016c2, f01=0x0007e4, f02=0x0007ed, filename=»testshclock «, entry_tail=0-4-0-1-1980-10-28T14:18-disc1-0x0-0x0-0x0-0x0}
0x0033…0040      a1 7f 99 37 ce 4e 1d 3f 95 34 ce 48 d8   ┆   7 N ? 4 H ┆
0x0040…0060      8e 5f dc 10 1d 2c 10 1d 2f 00 1a dc 10 15 53 ce 3a 52 2f fc 34 30 5a 53 ce 32 34 31 7a 5e ce 2c   ┆ _   ,  /     S :R/ 40ZS 241z^ ,┆
0x0060…0080      37 ce 28 24 6f fc 51 2f fe 5d ce 20 52 2f fa 5e ce 20 37 ce 1c 24 6f fc 51 2f fe 5d ce 14 52 2f   ┆7 ($o Q/ Å  R/ ^  7  $o Q/ Å  R/┆
0x0080…00a0      fc 2c 0f f6 37 ce 0c 00 9f 40 00 80 01 18 02 02 00 06 0a 03 6b 40 03 62 a8 03 6b 4e 00 00 03 53   ┆ ,  7    @          k@ b  kN   S┆
0x00a0…00c0      8f fa 5c 30 00 de 30 04 51 8f f4 53 1f fe 23 1f 9a 13 1f 38 5f 17 b6 db 1f fe 23 17 b6 50 30 00   ┆  Ø0  0 Q  S  #    8_     #  P0 ┆
0x00c0…00e0      5c 17 b4 20 1f 78 98 00 0b 0c 17 b7 5c 1f 84 50 31 fe 10 8f dc a0 00 02 a0 00 00 52 1f 82 5e 1f   ┆Ø    x      Ø  P1          R  ^ ┆
0x00e0…0100      82 5e 17 b2 50 1f 72 5c 17 b8 2c 00 00 5c 17 ba 52 10 00 5e 1f dc a2 00 00 34 80 0e 53 8f bc 2d   ┆ ^  P rØ  ,  Ø  R  ^     4  S  -┆
0x0100…0120      20 00 2e 00 00 5e 1f dc 52 30 02 34 80 28 0b a0 f7 52 10 02 34 b0 00 86 50 02 2d 00 00 34 80 18   ┆  .  ^  R0 4 (   R  4   P -  4  ┆
0x0120…0140      53 1f fe 4f 3f f9 87 30 00 92 30 00 24 0f fa 24 0f f9 24 0f fa 24 0f fa 24 0f fa 24 0f e9 2d 00   ┆S  O?  0  0 $  $  $  $  $  $  - ┆
0x0140…0160      3c 53 8f 8e 2d 90 70 5e 3f da 24 07 ff 2e 30 31 d8 10 02 dc 20 06 53 10 04 2c 00 00 dc 20 0a b5   ┆<S  - p^? $  .01      S  ,      ┆
0x0160…0180      00 01 24 00 01 2d 20 04 53 8f 74 d8 3f dc dc 20 02 2e 30 00 53 cf 6e 34 30 56 24 00 06 2d 00 49   ┆  $  -  S t ?    .0 S n40V$  - I┆
0x0180…01a0      2e 00 00 34 8f d4 52 1f 68 aa 00 01 5d 1f 68 24 5f 8a 52 00 0e 2d 00 2a 34 8f c6 2c 00 64 5c 17   ┆.  4  R h   Å h$_ R  - *4  , dØ ┆
0x01a0…01c0      ba 52 1f 62 2f 00 00 5f 2f fa db 1f 88 2f 00 03 13 00 04 5f 1f 88 52 1f 80 2d 00 30 34 8f ae d8   ┆ R b/  _/    /     _  R  - 04   ┆
0x01c0…01e0      1f 88 24 07 ff 2d 10 31 5c 10 0c 50 30 00 5c 10 0e 50 30 02 5c 10 10 50 30 04 5c 10 12 50 30 06   ┆  $  - 1Ø  P0 Ø  P0 Ø  P0 Ø  P0 ┆
0x01e0…0200      5c 10 14 24 0f f4 2d 00 42 34 8f 90 0a 73 74 61 63 6b 20 20 20 0a 69 6e 64 65 78 20 20 20 0a 63   ┆Ø  $  - B4   stack    index    c┆
0x0200…0220      61 73 65 20 20 20 20 0a 73 79 6e 74 61 78 20 20 0a 69 6e 74 65 67 65 72 20 0a 72 65 61 6c 20 20   ┆ase     syntax   integer  real  ┆
0x0220…0240      20 20 0a 70 61 72 61 6d 20 20 20 0a 62 72 65 61 6b 20 20 20 0a 65 6e 64 20 20 20 20 20 0a 67 69   ┆   param    break    end      gi┆
0x0240…0260      76 65 75 70 20 20 0a 66 69 65 6c 64 20 20 20 0a 74 72 61 70 20 20 20 20 0a 67 6f 74 6f 20 20 20   ┆veup   field    trap     goto   ┆
0x0260…0280      20 0a 6b 69 6c 6c 65 64 20 20 04 40 46 08 c0 1c 07 20 5a 04 c0 1a 01 80 16 01 40 12 01 00 08 00   ┆  killed   @F     Z       @     ┆
0x0280…02a0      20 00 00 00 00 80 00 00 00 01 ff 00 b1 ce 00 30 00 00 00 00 00 00 52 00 00 3f 20 00 00 00 00 00   ┆               0      R  ?      ┆
0x02a0…02c0      00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ┆                                ┆
0x02c0…02e0      00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 34 89 1c 00 00 00 00 00 00 00   ┆                      4         ┆
0x02e0…02fd      00 00 00 00 00 00 00 00 00 00 00 ff ff ff 00 00 00 40 00 00 00 00 00 00 00 00 00 61 ea   ┆                 @         a ┆
0x02fd…0300      0x000001
0x0300…0600      Data for testshclock
0x0600…0620      2d 28 28 75 73 65 72 5f 6d 61 73 6b 20 73 68 69 66 74 20 28 2d 31 32 29 2b 31 29 20 6d 6f 64 20   ┆-((user_mask shift (-12)+1) mod ┆
0x0620…0640      32 29 2a 31 32 29 20 65 78 74 72 61 63 74 20 31 32 20 3d 0a 20 20 20 20 20 20 20 20 75 73 65 72   ┆2)*12) extract 12 =         user┆
0x0640…0660      5f 6d 61 73 6b 20 65 78 74 72 61 63 74 20 31 32 20 74 68 65 6e 20 74 79 70 65 5f 65 78 74 65 72   ┆_mask extract 12 then type_exter┆
0x0660…0680      6e 61 6c 3b 0a 20 20 0a 20 20 20 20 20 20 20 20 3c 2a 20 72 65 73 65 72 76 65 72 20 2a 3e 0a 20   ┆nal;            <* reserver *>  ┆
0x0680…06a0      20 20 20 20 20 20 20 69 66 20 63 6f 6e 74 65 6e 74 73 28 70 72 6f 63 5f 62 61 73 65 2b 72 65 73   ┆       if contents(proc_base+res┆
0x06a0…06c0      5f 61 29 20 20 3d 20 72 65 73 65 72 76 65 72 5f 6d 61 73 6b 20 74 68 65 6e 20 74 79 70 65 5f 65   ┆_a)  = reserver_mask then type_e┆
0x06c0…06e0      78 74 65 72 6e 61 6c 3b 0a 20 20 0a 20 20 20 20 20 20 20 20 3c 2a 20 6e 61 6d 65 20 2a 3e 0a 20   ┆xternal;            <* name *>  ┆
0x06e0…0700      20 20 20 20 20 20 20 69 66 20 63 6f 6e 74 65 6e 74 73 2e 72 61 66 28 31 29 20 3d 20 6e 61 6d 65   ┆       if contents.raf(1) = name┆
0x0700…0720      28 31 29 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 65 6e 74 73 2e 72 61 66 28   ┆(1) and            contents.raf(┆
0x0720…0740      32 29 20 3d 20 6e 61 6d 65 28 32 29 20 74 68 65 6e 0a 20 20 20 20 20 20 20 20 20 20 20 62 65 67   ┆2) = name(2) then            beg┆
0x0740…0760      69 6e 20 66 6f 75 6e 64 3a 3d 20 74 72 75 65 3b 20 74 79 70 65 5f 65 78 74 65 72 6e 61 6c 3b 20   ┆in found:= true; type_external; ┆
0x0760…0780      65 6e 64 3b 0a 20 20 0a 20 20 20 20 20 20 20 20 3c 2a 20 61 6c 6c 20 2a 3e 0a 20 20 20 20 20 20   ┆end;            <* all *>       ┆
0x0780…07a0      20 20 74 79 70 65 5f 65 78 74 65 72 6e 61 6c 3b 0a 20 0a 20 20 20 20 20 20 20 20 3c 2a 20 64 65   ┆  type_external;           <* de┆
0x07a0…07c0      76 6e 6f 20 2a 3e 0a 20 20 20 20 20 20 20 20 69 66 20 64 65 76 6e 6f 2b 31 20 3d 20 69 20 3c 2a   ┆vno *>         if devno+1 = i <*┆
0x07c0…07e0      20 6c 6f 67 2e 20 64 65 76 2e 20 6e 6f 20 2a 3e 20 74 68 65 6e 20 74 79 70 65 5f 65 78 74 65 72   ┆ log. dev. no *> then type_exter┆
0x07e0…0800      6e 61 6c 3b 0a 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 65 6e 64 20 63 61 73 65 3b 0a 20   ┆nal;                 end case;  ┆
0x0800…0820      20 20 20 65 6e 64 20 77 68 69 6c 65 3b 0a 20 20 20 20 69 66 20 73 70 65 63 69 66 20 3d 20 33 20   ┆   end while;     if specif = 3 ┆
0x0820…0840      3c 2a 20 6e 61 6d 65 20 2a 3e 20 61 6e 64 20 2d 2c 66 6f 75 6e 64 20 74 68 65 6e 20 74 79 70 65   ┆<* name *> and -,found then type┆
0x0840…0860      5f 65 72 72 6f 72 28 3c 3a 6e 6f 74 20 66 6f 75 6e 64 3a 3e 2c 6e 61 6d 65 29 3b 0a 20 20 0a 20   ┆_error(<:not found:>,name);     ┆
0x0860…0880      20 65 6e 64 20 65 78 74 65 72 6e 61 6c 3b 0a 0c 20 20 70 72 6f 63 65 64 75 72 65 20 61 72 65 61   ┆ end external;    procedure area┆
0x0880…08a0      5f 70 72 6f 63 65 73 73 3b 0a 20 20 62 65 67 69 6e 0a 20 20 20 20 70 72 6f 63 65 64 75 72 65 20   ┆_process;   begin     procedure ┆
0x08a0…08c0      74 79 70 65 5f 61 72 65 61 5f 70 72 6f 63 65 73 73 3b 0a 20 20 20 20 62 65 67 69 6e 0a 20 20 20   ┆type_area_process;     begin    ┆
0x08c0…08e0      20 20 20 69 6e 74 65 67 65 72 20 69 2c 6a 3b 0a 20 20 20 20 20 20 72 65 61 6c 20 61 72 72 61 79   ┆   integer i,j;       real array┆
0x08e0…0900      20 66 69 65 6c 64 20 72 61 66 3b 0a 20 20 20 20 20 20 69 66 20 66 69 72 73 74 5f 74 79 70 65 64   ┆ field raf;       if first_typed┆
0x0900…0920 (1,) 20 74 68 65 6e 20 74 79 70 65 69 6e 3b 0a 20 20 20 20 20 20 66 69 72 73 74 5f 74 79 70 65 64 3a   ┆ then typein;       first_typed:┆
0x0920…0940      3d 20 74 72 75 65 3b 0a 20 20 20 20 20 20 72 61 66 3a 3d 20 36 2b 75 73 65 72 68 77 3b 20 69 3a   ┆= true;       raf:= 6+userhw; i:┆
0x0940…0960      3d 20 6a 3a 3d 20 31 3b 0a 20 20 20 20 20 20 77 72 69 74 65 28 6f 75 74 2c 6e 6c 2c 31 2c 20 20   ┆= j:= 1;       write(out,nl,1,  ┆
0x0960…0980      3c 3a 63 6f 72 65 3a 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 2e 3a 3e 2c   ┆<:core:>,                 <:.:>,┆
0x0980…09a0      3c 3c 64 64 64 64 64 3e 2c 61 64 64 72 2c 6e 6c 2c 31 2c 3c 3c 2d 64 64 64 64 64 64 64 64 64 3e   ┆<<ddddd>,addr,nl,1,<<-ddddddddd>┆
0x09a0…09c0      2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 6c 6f 77 65 72 20 69 6e 74 65 72 76   ┆,                 <:lower interv┆
0x09c0…09e0      61 6c 20 20 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 63 6f 6e 74 65 6e 74 73 28 70 72 6f 63   ┆al       : :>,sp,2,contents(proc┆
0x09e0…0a00      5f 62 61 73 65 2b 6c 5f 62 61 73 65 29 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20   ┆_base+l_base),nl,1,             ┆
0x0a00…0a20      20 20 20 20 3c 3a 75 70 70 65 72 20 69 6e 74 65 72 76 61 6c 20 20 20 20 20 20 20 3a 20 3a 3e 2c   ┆    <:upper interval       : :>,┆
0x0a20…0a40      73 70 2c 32 2c 63 6f 6e 74 65 6e 74 73 28 70 72 6f 63 5f 62 61 73 65 2b 75 5f 62 61 73 65 29 2c   ┆sp,2,contents(proc_base+u_base),┆
0x0a40…0a60      6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 6b 69 6e 64 20 20 20 20   ┆nl,1,                 <:kind    ┆
0x0a60…0a80      20 20 20 20 20 20 20 20 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 63 6f 6e 74 65 6e 74 73 28   ┆             : :>,sp,2,contents(┆
0x0a80…0aa0      70 72 6f 63 5f 62 61 73 65 2b 6b 69 6e 64 5f 61 29 2c 6e 6c 2c 31 2c 20 0a 20 20 20 20 20 20 20   ┆proc_base+kind_a),nl,1,         ┆
0x0aa0…0ac0      20 20 20 20 20 20 20 20 20 3c 3a 6e 61 6d 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20   ┆         <:name                 ┆
0x0ac0…0ae0      3a 20 3a 3e 2c 73 70 2c 32 2c 73 74 72 69 6e 67 20 63 6f 6e 74 65 6e 74 73 2e 72 61 66 28 69 6e   ┆: :>,sp,2,string contents.raf(in┆
0x0ae0…0b00      63 72 65 61 73 65 28 69 29 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 6c 2c 31   ┆crease(i)),                 nl,1┆
0x0b00…0b20      2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 70 72 6f 63 20 64 65 73 63 72 20 61   ┆,                 <:proc descr a┆
0x0b20…0b40      64 64 72 20 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 63 6f 6e 74 65 6e 74 73 28 70 72 6f 63   ┆ddr      : :>,sp,2,contents(proc┆
0x0b40…0b60      5f 62 61 73 65 2b 70 64 61 5f 61 29 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ┆_base+pda_a),nl,1,              ┆
0x0b60…0b80      20 20 20 3c 3a 72 65 73 65 72 76 65 72 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 20 3a 3e 2c 73   ┆   <:reserver             : :>,s┆
0x0b80…0ba0      70 2c 32 29 3b 0a 20 20 20 20 20 20 20 20 77 72 69 74 65 5f 66 6f 72 6d 61 74 74 65 64 28 63 6f   ┆p,2);         write_formatted(co┆
0x0ba0…0bc0      6e 74 65 6e 74 73 28 70 72 6f 63 5f 62 61 73 65 2b 72 65 73 5f 61 29 2c 62 69 74 29 3b 0a 20 20   ┆ntents(proc_base+res_a),bit);   ┆
0x0bc0…0be0      20 20 20 20 20 20 74 79 70 65 5f 6e 61 6d 65 73 28 63 6f 6e 74 65 6e 74 73 28 70 72 6f 63 5f 62   ┆      type_names(contents(proc_b┆
0x0be0…0c00      61 73 65 2b 72 65 73 5f 61 29 2c 2d 31 29 3b 0a 20 20 20 20 20 20 20 20 77 72 69 74 65 28 6f 75   ┆ase+res_a),-1);         write(ou┆
0x0c00…0c20      74 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 75 73 65 72 73 20   ┆t,nl,1,                 <:users ┆
0x0c20…0c40      20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 29 3b 0a 20 20 20 20 20   ┆               : :>,sp,2);      ┆
0x0c40…0c60      20 66 6f 72 20 6a 3a 3d 30 20 73 74 65 70 20 31 20 75 6e 74 69 6c 20 75 73 65 72 68 77 31 20 64   ┆ for j:=0 step 1 until userhw1 d┆
0x0c60…0c80      6f 0a 20 20 20 20 20 20 62 65 67 69 6e 0a 20 20 20 20 20 20 20 20 69 66 20 6a 20 65 78 74 72 61   ┆o       begin         if j extra┆
0x0c80…0ca0      63 74 20 31 3d 30 20 74 68 65 6e 0a 20 20 20 20 20 20 20 20 62 65 67 69 6e 0a 20 20 20 20 20 20   ┆ct 1=0 then         begin       ┆
0x0ca0…0cc0      20 20 20 20 69 66 20 6a 3e 30 20 74 68 65 6e 20 77 72 69 74 65 28 6f 75 74 2c 6e 6c 2c 31 2c 73   ┆    if j>0 then write(out,nl,1,s┆
0x0cc0…0ce0      70 2c 32 35 29 3b 0a 20 20 20 20 20 20 20 20 20 20 77 72 69 74 65 5f 66 6f 72 6d 61 74 74 65 64   ┆p,25);           write_formatted┆
0x0ce0…0d00      28 63 6f 6e 74 65 6e 74 73 28 70 72 6f 63 5f 62 61 73 65 2b 75 73 65 72 5f 61 2b 28 6a 20 73 68   ┆(contents(proc_base+user_a+(j sh┆
0x0d00…0d20      69 66 74 20 28 2d 31 29 29 29 2c 62 69 74 29 3b 0a 20 20 20 20 20 20 20 20 65 6e 64 3b 0a 20 20   ┆ift (-1))),bit);         end;   ┆
0x0d20…0d40      20 20 20 20 20 20 74 79 70 65 5f 6e 61 6d 65 73 28 63 6f 6e 74 65 6e 74 73 28 70 72 6f 63 5f 62   ┆      type_names(contents(proc_b┆
0x0d40…0d60      61 73 65 2b 75 73 65 72 5f 61 2b 6a 2f 2f 32 29 20 73 68 69 66 74 20 28 2d 28 28 6a 2b 31 29 20   ┆ase+user_a+j//2) shift (-((j+1) ┆
0x0d60…0d80      6d 6f 64 20 32 29 2a 31 32 29 20 65 78 74 72 61 63 74 20 31 32 2c 6a 29 3b 0a 20 20 20 20 20 20   ┆mod 2)*12) extract 12,j);       ┆
0x0d80…0da0      65 6e 64 3b 0a 20 20 20 20 20 20 77 72 69 74 65 28 6f 75 74 2c 6e 6c 2c 31 2c 3c 3c 2d 64 64 64   ┆end;       write(out,nl,1,<<-ddd┆
0x0da0…0dc0      64 64 64 64 64 64 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 66 69 72 73 74   ┆dddddd>,                 <:first┆
0x0dc0…0de0      20 73 6c 69 63 65 20 20 20 20 20 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 63 6f 6e 74 65 6e   ┆ slice          : :>,sp,2,conten┆
0x0de0…0e00      74 73 28 70 72 6f 63 5f 62 61 73 65 2b 66 69 72 73 74 5f 73 6c 69 63 65 5f 61 29 2c 6e 6c 2c 31   ┆ts(proc_base+first_slice_a),nl,1┆
0x0e00…0e20      2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 6e 6f 20 6f 66 20 73 65 67 6d 65 6e   ┆,                 <:no of segmen┆
0x0e20…0e40      74 73 20 20 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 63 6f 6e 74 65 6e 74 73 28 70 72 6f 63   ┆ts       : :>,sp,2,contents(proc┆
0x0e40…0e60      5f 62 61 73 65 2b 73 65 67 5f 61 29 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ┆_base+seg_a),nl,1,              ┆
0x0e60…0e80      20 20 20 3c 3a 64 6f 63 75 6d 65 6e 74 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 20 3a 3e 2c 73   ┆   <:document             : :>,s┆
0x0e80…0ea0      70 2c 32 29 3b 0a 20 20 20 20 20 20 6a 3a 3d 20 31 3b 20 72 61 66 3a 3d 20 32 34 2b 75 73 65 72   ┆p,2);       j:= 1; raf:= 24+user┆
0x0ea0…0ec0      68 77 3b 0a 20 20 20 20 20 20 77 72 69 74 65 28 6f 75 74 2c 73 74 72 69 6e 67 20 63 6f 6e 74 65   ┆hw;       write(out,string conte┆
0x0ec0…0ee0      6e 74 73 2e 72 61 66 28 69 6e 63 72 65 61 73 65 28 6a 29 29 2c 6e 6c 2c 31 29 3b 0a 20 20 20 20   ┆nts.raf(increase(j)),nl,1);     ┆
0x0ee0…0f00      20 20 77 72 69 74 65 28 6f 75 74 2c 3c 3c 2d 64 64 64 64 64 64 64 64 64 3e 2c 0a 20 20 20 20 20   ┆  write(out,<<-ddddddddd>,      ┆
0x0f00…0f20      20 20 20 20 20 20 20 20 20 20 20 3c 3a 77 72 69 74 65 20 61 63 63 65 73 73 20 63 6f 75 6e 74 65   ┆           <:write access counte┆
0x0f20…0f40      72 20 3a 20 3a 3e 2c 73 70 2c 32 2c 63 6f 6e 74 65 6e 74 73 28 70 72 6f 63 5f 62 61 73 65 2b 77   ┆r : :>,sp,2,contents(proc_base+w┆
0x0f40…0f60      61 5f 61 29 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 72 65 61   ┆a_a),nl,1,                 <:rea┆
0x0f60…0f80      64 20 20 61 63 63 65 73 73 20 63 6f 75 6e 74 65 72 20 3a 20 3a 3e 2c 73 70 2c 32 2c 63 6f 6e 74   ┆d  access counter : :>,sp,2,cont┆
0x0f80…0fa0      65 6e 74 73 28 70 72 6f 63 5f 62 61 73 65 2b 72 61 5f 61 29 2c 6e 6c 2c 31 29 3b 0a 20 20 20 20   ┆ents(proc_base+ra_a),nl,1);     ┆
0x0fa0…0fc0      20 20 74 79 70 65 5f 74 65 78 74 28 3c 3a 3a 3e 29 3b 0a 20 20 20 20 20 20 69 66 20 6f 5f 6b 69   ┆  type_text(<::>);       if o_ki┆
0x0fc0…0fe0      6e 64 3d 38 34 20 74 68 65 6e 20 73 65 74 70 6f 73 69 74 69 6f 6e 28 6f 75 74 2c 30 2c 30 29 3b   ┆nd=84 then setposition(out,0,0);┆
0x0fe0…1000      0a 20 20 20 20 65 6e 64 20 74 79 70 65 5f 61 72 65 61 5f 70 72 6f 63 65 73 73 3b 0a 20 20 0a 20   ┆     end type_area_process;     ┆
0x1000…1020      20 20 20 69 6e 74 65 67 65 72 20 69 2c 6a 2c 6b 2c 61 72 65 61 73 2c 75 73 65 72 5f 6d 61 73 6b   ┆   integer i,j,k,areas,user_mask┆
0x1020…1040      2c 72 65 73 65 72 76 65 72 5f 6d 61 73 6b 2c 73 70 65 63 69 66 2c 61 64 64 72 3b 0a 20 20 20 20   ┆,reserver_mask,specif,addr;     ┆
0x1040…1060      72 65 61 6c 20 61 72 72 61 79 20 6e 61 6d 65 28 31 3a 32 29 3b 0a 20 20 20 20 69 6e 74 65 67 65   ┆real array name(1:2);     intege┆
0x1060…1080      72 20 61 72 72 61 79 20 74 61 62 6c 65 28 31 3a 32 35 36 29 3b 0a 20 20 20 20 62 6f 6f 6c 65 61   ┆r array table(1:256);     boolea┆
0x1080…10a0      6e 20 66 69 72 73 74 5f 74 79 70 65 64 2c 66 6f 75 6e 64 3b 0a 20 20 20 20 72 65 61 6c 20 61 72   ┆n first_typed,found;     real ar┆
0x10a0…10c0      72 61 79 20 66 69 65 6c 64 20 72 61 66 3b 0a 20 20 20 20 73 70 65 63 69 66 3a 3d 20 34 3b 20 3c   ┆ray field raf;     specif:= 4; <┆
0x10c0…10e0      2a 20 64 65 66 61 75 6c 74 20 61 6c 6c 20 2a 3e 0a 20 20 20 20 66 69 72 73 74 5f 74 79 70 65 64   ┆* default all *>     first_typed┆
0x10e0…1100      3a 3d 66 6f 75 6e 64 3a 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 72 65 61 64 5f 70 61 72 61 6d 73   ┆:=found:= false;     read_params┆
0x1100…1120      28 73 70 65 63 69 66 2c 75 73 65 72 5f 6d 61 73 6b 2c 72 65 73 65 72 76 65 72 5f 6d 61 73 6b 2c   ┆(specif,user_mask,reserver_mask,┆
0x1120…1140      6e 61 6d 65 2c 69 29 3b 0a 20 20 20 20 72 61 66 3a 3d 36 2b 75 73 65 72 68 77 3b 0a 20 20 20 20   ┆name,i);     raf:=6+userhw;     ┆
0x1140…1160      6d 6f 76 65 28 20 37 36 2c 63 6f 6e 74 65 6e 74 73 29 3b 20 3c 2a 20 66 69 72 73 74 20 61 72 65   ┆move( 76,contents); <* first are┆
0x1160…1180      61 20 70 72 6f 63 20 69 6e 20 6e 61 6d 65 20 74 61 62 6c 65 20 2a 3e 0a 20 20 20 20 61 72 65 61   ┆a proc in name table *>     area┆
0x1180…11a0      73 3a 3d 20 28 63 6f 6e 74 65 6e 74 73 28 32 29 20 2d 20 63 6f 6e 74 65 6e 74 73 28 31 29 29 2f   ┆s:= (contents(2) - contents(1))/┆
0x11a0…11c0      2f 32 3b 0a 20 20 20 20 6d 6f 76 65 28 63 6f 6e 74 65 6e 74 73 28 31 29 2c 74 61 62 6c 65 29 3b   ┆/2;     move(contents(1),table);┆
0x11c0…11e0      0a 20 20 0a 20 20 20 20 3c 2a 20 73 63 61 6e 20 61 72 65 61 20 70 72 6f 63 73 20 2a 3e 0a 20 20   ┆        <* scan area procs *>   ┆
0x11e0…1200      20 20 66 6f 72 20 69 3a 3d 20 31 2c 69 2b 31 20 77 68 69 6c 65 20 69 20 3c 3d 20 61 72 65 61 73   ┆  for i:= 1,i+1 while i <= areas┆
0x1200…1220 (2,) 20 64 6f 0a 20 20 20 20 62 65 67 69 6e 0a 20 20 20 20 20 20 61 64 64 72 3a 3d 20 74 61 62 6c 65   ┆ do     begin       addr:= table┆
0x1220…1240      28 69 29 3b 0a 20 20 20 20 20 20 6d 6f 76 65 28 61 64 64 72 2d 28 34 2b 75 73 65 72 68 77 29 2c   ┆(i);       move(addr-(4+userhw),┆
0x1240…1260      63 6f 6e 74 65 6e 74 73 29 3b 0a 20 20 20 20 20 20 63 61 73 65 20 73 70 65 63 69 66 20 6f 66 0a   ┆contents);       case specif of ┆
0x1260…1280      20 20 20 20 20 20 62 65 67 69 6e 0a 20 20 0a 20 20 20 20 20 20 20 20 3c 2a 20 75 73 65 72 20 2a   ┆      begin            <* user *┆
0x1280…12a0      3e 0a 20 20 20 20 20 20 20 20 69 66 20 63 6f 6e 74 65 6e 74 73 28 70 72 6f 63 5f 62 61 73 65 2b   ┆>         if contents(proc_base+┆
0x12a0…12c0      75 73 65 72 5f 61 2b 75 73 65 72 5f 6d 61 73 6b 20 73 68 69 66 74 20 28 2d 31 33 29 29 0a 20 20   ┆user_a+user_mask shift (-13))   ┆
0x12c0…12e0      20 20 20 20 20 20 73 68 69 66 74 20 28 2d 28 28 75 73 65 72 5f 6d 61 73 6b 20 73 68 69 66 74 20   ┆      shift (-((user_mask shift ┆
0x12e0…1300      28 2d 31 32 29 2b 31 29 20 6d 6f 64 20 32 29 2a 31 32 29 20 65 78 74 72 61 63 74 20 31 32 20 3d   ┆(-12)+1) mod 2)*12) extract 12 =┆
0x1300…1320      0a 20 20 20 20 20 20 20 20 75 73 65 72 5f 6d 61 73 6b 20 65 78 74 72 61 63 74 20 31 32 20 74 68   ┆         user_mask extract 12 th┆
0x1320…1340      65 6e 20 74 79 70 65 5f 61 72 65 61 5f 70 72 6f 63 65 73 73 3b 0a 20 20 0a 20 20 20 20 20 20 20   ┆en type_area_process;           ┆
0x1340…1360      20 3c 2a 20 72 65 73 65 72 76 65 72 20 2a 3e 0a 20 20 20 20 20 20 20 20 69 66 20 63 6f 6e 74 65   ┆ <* reserver *>         if conte┆
0x1360…1380      6e 74 73 28 72 65 73 5f 61 29 20 3d 20 72 65 73 65 72 76 65 72 5f 6d 61 73 6b 20 74 68 65 6e 20   ┆nts(res_a) = reserver_mask then ┆
0x1380…13a0      74 79 70 65 5f 61 72 65 61 5f 70 72 6f 63 65 73 73 3b 0a 20 20 0a 20 20 20 20 20 20 20 20 3c 2a   ┆type_area_process;            <*┆
0x13a0…13c0      20 6e 61 6d 65 20 2a 3e 0a 20 20 20 20 20 20 20 20 69 66 20 63 6f 6e 74 65 6e 74 73 2e 72 61 66   ┆ name *>         if contents.raf┆
0x13c0…13e0      28 31 29 20 3d 20 6e 61 6d 65 28 31 29 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e   ┆(1) = name(1) and            con┆
0x13e0…1400      74 65 6e 74 73 2e 72 61 66 28 32 29 20 3d 20 6e 61 6d 65 28 32 29 20 74 68 65 6e 0a 20 20 20 20   ┆tents.raf(2) = name(2) then     ┆
0x1400…1420      20 20 20 20 20 20 20 62 65 67 69 6e 20 66 6f 75 6e 64 3a 3d 74 72 75 65 3b 20 20 74 79 70 65 5f   ┆       begin found:=true;  type_┆
0x1420…1440      61 72 65 61 5f 70 72 6f 63 65 73 73 3b 20 65 6e 64 3b 0a 20 20 0a 20 20 20 20 20 20 20 20 3c 2a   ┆area_process; end;            <*┆
0x1440…1460      20 61 6c 6c 20 2a 3e 0a 20 20 20 20 20 20 20 20 74 79 70 65 5f 61 72 65 61 5f 70 72 6f 63 65 73   ┆ all *>         type_area_proces┆
0x1460…1480      73 3b 0a 20 20 0a 20 20 20 20 20 20 65 6e 64 20 63 61 73 65 3b 0a 20 20 20 20 65 6e 64 20 77 68   ┆s;          end case;     end wh┆
0x1480…14a0      69 6c 65 3b 0a 20 20 20 20 69 66 20 73 70 65 63 69 66 3d 33 20 61 6e 64 20 2d 2c 66 6f 75 6e 64   ┆ile;     if specif=3 and -,found┆
0x14a0…14c0      20 74 68 65 6e 20 74 79 70 65 5f 65 72 72 6f 72 28 3c 3a 6e 6f 74 20 66 6f 75 6e 64 3a 3e 2c 6e   ┆ then type_error(<:not found:>,n┆
0x14c0…14e0      61 6d 65 29 3b 0a 20 20 0a 20 20 65 6e 64 20 61 72 65 61 5f 70 72 6f 63 65 73 73 3b 0a 0c 20 20   ┆ame);      end area_process;    ┆
0x14e0…1500      70 72 6f 63 65 64 75 72 65 20 63 68 61 69 6e 3b 0a 20 20 62 65 67 69 6e 20 3c 2a 20 70 72 69 6e   ┆procedure chain;   begin <* prin┆
0x1500…1520      74 73 20 63 68 61 69 6e 68 65 61 64 20 2a 3e 0a 20 20 20 20 70 72 6f 63 65 64 75 72 65 20 74 79   ┆ts chainhead *>     procedure ty┆
0x1520…1540      70 65 5f 63 68 61 69 6e 3b 0a 20 20 20 20 62 65 67 69 6e 0a 20 20 20 20 20 20 69 6e 74 65 67 65   ┆pe_chain;     begin       intege┆
0x1540…1560      72 20 69 2c 6a 2c 6b 3b 0a 20 20 20 20 20 20 72 65 61 6c 20 61 72 72 61 79 20 66 69 65 6c 64 20   ┆r i,j,k;       real array field ┆
0x1560…1580      72 61 66 31 2c 72 61 66 32 3b 0a 20 20 20 20 20 20 69 66 20 66 69 72 73 74 5f 74 79 70 65 64 20   ┆raf1,raf2;       if first_typed ┆
0x1580…15a0      74 68 65 6e 20 74 79 70 65 69 6e 3b 0a 20 20 20 20 20 20 66 69 72 73 74 5f 74 79 70 65 64 3a 3d   ┆then typein;       first_typed:=┆
0x15a0…15c0      20 74 72 75 65 3b 0a 20 20 20 20 20 20 6a 3a 3d 20 69 3a 3d 20 6b 3a 3d 20 31 3b 0a 20 20 20 20   ┆ true;       j:= i:= k:= 1;     ┆
0x15c0…15e0      20 20 72 61 66 31 3a 3d 20 38 3b 20 72 61 66 32 3a 3d 20 31 38 3b 0a 20 20 20 20 20 20 77 72 69   ┆  raf1:= 8; raf2:= 18;       wri┆
0x15e0…1600      74 65 28 6f 75 74 2c 6e 6c 2c 31 2c 20 3c 3a 63 6f 72 65 3a 3e 2c 0a 20 20 20 20 20 20 20 20 20   ┆te(out,nl,1, <:core:>,          ┆
0x1600…1620      20 20 20 20 20 20 20 3c 3a 2e 3a 3e 2c 3c 3c 64 64 64 64 64 3e 2c 61 64 64 72 2d 33 36 2c 6e 6c   ┆       <:.:>,<<ddddd>,addr-36,nl┆
0x1620…1640      2c 31 2c 3c 3c 2d 64 64 64 64 64 64 64 64 64 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20   ┆,1,<<-ddddddddd>,               ┆
0x1640…1660      20 20 3c 3a 72 65 6c 2e 20 61 64 64 72 2e 20 6f 66 20 63 6c 61 69 6d 73 20 69 6e 20 69 2e 20 70   ┆  <:rel. addr. of claims in i. p┆
0x1660…1680      2e 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 63 6f 6e 74 65 6e 74 73 28 31 29 2c 6e 6c 2c 31 2c 0a   ┆.   : :>,sp,2,contents(1),nl,1, ┆
0x1680…16a0      20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 66 69 72 73 74 20 73 6c 69 63 65 20 69 6e   ┆                <:first slice in┆
0x16a0…16c0      20 61 75 78 63 61 74 20 20 20 20 20 20 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 0a 20 20 20   ┆ auxcat           : :>,sp,2,    ┆
0x16c0…16e0      20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 65 6e 74 73 28 32 29 20 73 68 69 66 74 20 28   ┆             contents(2) shift (┆
0x16e0…1700      2d 31 32 29 20 65 78 74 72 61 63 74 20 31 32 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20   ┆-12) extract 12,nl,1,           ┆
0x1700…1720      20 20 20 20 20 20 3c 3a 62 73 20 6b 69 6e 64 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20   ┆      <:bs kind                 ┆
0x1720…1740      20 20 20 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 69 66 20 63 6f 6e 74 65 6e 74 73 28 32 29   ┆        : :>,sp,2,if contents(2)┆
0x1740…1760      0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 68 69 66 74 20 28 2d 33 29 20 65 78 74 72   ┆                 shift (-3) extr┆
0x1760…1780      61 63 74 20 31 20 3d 20 31 20 74 68 65 6e 20 3c 3a 64 69 73 63 3a 3e 20 65 6c 73 65 20 3c 3a 64   ┆act 1 = 1 then <:disc:> else <:d┆
0x1780…17a0      72 75 6d 3a 3e 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 70 65   ┆rum:>,nl,1,                 <:pe┆
0x17a0…17c0      72 6d 6b 65 79 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 20   ┆rmkey                         : ┆
0x17c0…17e0      3a 3e 2c 73 70 2c 32 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 65 6e 74   ┆:>,sp,2,                 content┆
0x17e0…1800      73 28 32 29 20 65 78 74 72 61 63 74 20 33 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20   ┆s(2) extract 3,nl,1,            ┆
0x1800…1820      20 20 20 20 20 3c 3a 6e 61 6d 65 20 6f 66 20 61 75 78 63 61 74 20 20 20 20 20 20 20 20 20 20 20   ┆     <:name of auxcat           ┆
0x1820…1840      20 20 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20   ┆       : :>,sp,2,               ┆
0x1840…1860      20 20 73 74 72 69 6e 67 20 63 6f 6e 74 65 6e 74 73 2e 72 61 66 31 28 69 6e 63 72 65 61 73 65 28   ┆  string contents.raf1(increase(┆
0x1860…1880      6a 29 29 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 73 69 7a 65   ┆j)),nl,1,                 <:size┆
0x1880…18a0      20 6f 66 20 61 75 78 63 61 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 20 3a 3e   ┆ of auxcat                  : :>┆
0x18a0…18c0      2c 73 70 2c 32 2c 63 6f 6e 74 65 6e 74 73 28 39 29 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20   ┆,sp,2,contents(9),nl,1,         ┆
0x18c0…18e0      20 20 20 20 20 20 20 20 3c 3a 64 6f 63 75 6d 65 6e 74 20 6e 61 6d 65 20 20 20 20 20 20 20 20 20   ┆        <:document name         ┆
0x18e0…1900      20 20 20 20 20 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 0a 20 20 20 20 20 20 20 20 20 20 20   ┆          : :>,sp,2,            ┆
0x1900…1920      20 20 20 20 20 73 74 72 69 6e 67 20 63 6f 6e 74 65 6e 74 73 2e 72 61 66 32 28 69 6e 63 72 65 61   ┆     string contents.raf2(increa┆
0x1920…1940      73 65 28 6b 29 29 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 73   ┆se(k)),nl,1,                 <:s┆
0x1940…1960      6c 69 63 65 20 6c 65 6e 67 74 68 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a   ┆lice length                    :┆
0x1960…1980      20 3a 3e 2c 73 70 2c 32 2c 63 6f 6e 74 65 6e 74 73 28 31 35 29 2c 6e 6c 2c 31 2c 0a 20 20 20 20   ┆ :>,sp,2,contents(15),nl,1,     ┆
0x1980…19a0      20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 6c 61 73 74 20 73 6c 69 63 65 20 6f 66 20 64 6f 63 75   ┆            <:last slice of docu┆
0x19a0…19c0      6d 65 6e 74 20 20 20 20 20 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 0a 20 20 20 20 20 20 20   ┆ment          : :>,sp,2,        ┆
0x19c0…19e0      20 20 20 20 20 20 20 20 20 63 6f 6e 74 65 6e 74 73 28 31 36 29 20 73 68 69 66 74 20 28 2d 31 32   ┆         contents(16) shift (-12┆
0x19e0…1a00      29 20 65 78 74 72 61 63 74 20 31 32 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ┆) extract 12,nl,1,              ┆
0x1a00…1a20      20 20 20 3c 3a 66 69 72 73 74 20 73 6c 69 63 65 20 6f 66 20 63 68 61 69 6e 74 61 62 6c 65 20 61   ┆   <:first slice of chaintable a┆
0x1a20…1a40      72 65 61 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20   ┆rea  : :>,sp,2,                 ┆
0x1a40…1a60      63 6f 6e 74 65 6e 74 73 28 31 36 29 20 65 78 74 72 61 63 74 20 31 32 2c 6e 6c 2c 31 2c 0a 20 20   ┆contents(16) extract 12,nl,1,   ┆
0x1a60…1a80      20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 73 74 61 74 65 20 6f 66 20 64 6f 63 75 6d 65 6e   ┆              <:state of documen┆
0x1a80…1aa0      74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 29 3b 0a 20 20 20 20   ┆t               : :>,sp,2);     ┆
0x1aa0…1ac0      20 20 66 6f 72 20 69 3a 3d 20 30 20 73 74 65 70 20 31 20 75 6e 74 69 6c 20 36 20 64 6f 0a 20 20   ┆  for i:= 0 step 1 until 6 do   ┆
0x1ac0…1ae0      20 20 20 20 69 66 20 63 6f 6e 74 65 6e 74 73 28 31 37 29 20 73 68 69 66 74 20 28 2d 28 31 32 2b   ┆    if contents(17) shift (-(12+┆
0x1ae0…1b00      69 29 29 20 65 78 74 72 61 63 74 20 31 20 3d 20 31 20 74 68 65 6e 0a 20 20 20 20 20 20 77 72 69   ┆i)) extract 1 = 1 then       wri┆
0x1b00…1b20 (3,) 74 65 28 6f 75 74 2c 63 61 73 65 20 69 2b 31 20 6f 66 20 28 20 3c 3a 69 64 6c 65 3a 3e 2c 3c 3a   ┆te(out,case i+1 of ( <:idle:>,<:┆
0x1b20…1b40      61 66 74 65 72 20 70 72 65 70 61 72 65 3a 3e 2c 3c 3a 64 75 72 69 6e 67 20 69 6e 73 65 72 74 3a   ┆after prepare:>,<:during insert:┆
0x1b40…1b60      3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20   ┆>,                              ┆
0x1b60…1b80      20 3c 3a 72 65 61 64 79 3a 3e 2c 3c 3a 64 75 72 69 6e 67 20 64 65 6c 65 74 65 3a 3e 2c 3c 3a 64   ┆ <:ready:>,<:during delete:>,<:d┆
0x1b80…1ba0      75 72 69 6e 67 20 61 75 78 3a 3e 29 29 3b 0a 20 20 20 20 20 20 77 72 69 74 65 28 6f 75 74 2c 6e   ┆uring aux:>));       write(out,n┆
0x1ba0…1bc0      6c 2c 31 2c 3c 3a 73 74 61 72 74 20 6f 66 20 63 68 61 69 6e 74 61 62 6c 65 20 61 74 20 61 64 64   ┆l,1,<:start of chaintable at add┆
0x1bc0…1be0      72 20 20 20 20 20 3a 20 3a 3e 2c 73 70 2c 32 2c 3c 3c 2d 64 64 64 64 64 64 64 64 64 3e 2c 61 64   ┆r     : :>,sp,2,<<-ddddddddd>,ad┆
0x1be0…1c00      64 72 2c 6e 6c 2c 31 29 3b 0a 20 20 20 20 20 20 74 79 70 65 74 65 78 74 28 3c 3a 3a 3e 29 3b 0a   ┆dr,nl,1);       typetext(<::>); ┆
0x1c00…1c20      20 20 20 20 65 6e 64 20 74 79 70 65 5f 63 68 61 69 6e 3b 0a 20 20 0a 20 20 20 20 62 6f 6f 6c 65   ┆    end type_chain;        boole┆
0x1c20…1c40      61 6e 20 66 6f 75 6e 64 2c 66 69 72 73 74 5f 74 79 70 65 64 2c 61 6c 6c 3b 0a 20 20 20 20 69 6e   ┆an found,first_typed,all;     in┆
0x1c40…1c60      74 65 67 65 72 20 69 2c 6a 2c 63 68 61 69 6e 73 2c 61 64 64 72 3b 0a 20 20 20 20 72 65 61 6c 20   ┆teger i,j,chains,addr;     real ┆
0x1c60…1c80      61 72 72 61 79 20 64 6f 63 6e 61 6d 65 28 31 3a 32 29 3b 0a 20 20 20 20 69 6e 74 65 67 65 72 20   ┆array docname(1:2);     integer ┆
0x1c80…1ca0      61 72 72 61 79 20 74 61 62 6c 65 28 31 3a 32 35 36 29 3b 0a 20 20 20 20 72 65 61 6c 20 61 72 72   ┆array table(1:256);     real arr┆
0x1ca0…1cc0      61 79 20 66 69 65 6c 64 20 72 61 66 3b 0a 20 20 20 20 61 6c 6c 3a 3d 20 74 72 75 65 3b 20 3c 2a   ┆ay field raf;     all:= true; <*┆
0x1cc0…1ce0      20 64 65 66 61 75 6c 74 20 61 6c 6c 20 2a 3e 0a 20 20 0a 20 20 20 20 66 6f 75 6e 64 3a 3d 20 66   ┆ default all *>        found:= f┆
0x1ce0…1d00      69 72 73 74 5f 74 79 70 65 64 3a 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 72 61 66 3a 3d 20 31 38   ┆irst_typed:= false;     raf:= 18┆
0x1d00…1d20      3b 0a 20 20 0a 20 20 20 20 77 68 69 6c 65 20 6e 65 78 74 5f 70 61 72 61 6d 28 73 5f 74 65 78 74   ┆;        while next_param(s_text┆
0x1d20…1d40      29 20 64 6f 0a 20 20 20 20 62 65 67 69 6e 0a 20 20 20 20 20 20 69 66 20 70 61 72 61 6d 28 31 29   ┆) do     begin       if param(1)┆
0x1d40…1d60      20 3d 20 72 65 61 6c 3c 3a 61 6c 6c 3a 3e 20 74 68 65 6e 20 61 6c 6c 3a 3d 20 74 72 75 65 20 65   ┆ = real<:all:> then all:= true e┆
0x1d60…1d80      6c 73 65 0a 20 20 20 20 20 20 69 66 20 70 61 72 61 6d 28 31 29 20 3d 20 72 65 61 6c 3c 3a 64 6f   ┆lse       if param(1) = real<:do┆
0x1d80…1da0      63 6e 61 3a 3e 20 61 64 64 20 31 30 39 20 74 68 65 6e 0a 20 20 20 20 20 20 62 65 67 69 6e 0a 20   ┆cna:> add 109 then       begin  ┆
0x1da0…1dc0      20 20 20 20 20 20 20 6e 65 78 74 5f 70 61 72 61 6d 28 70 5f 74 65 78 74 29 3b 0a 20 20 20 20 20   ┆       next_param(p_text);      ┆
0x1dc0…1de0      20 20 20 64 6f 63 6e 61 6d 65 28 31 29 3a 3d 20 70 61 72 61 6d 28 31 29 3b 0a 20 20 20 20 20 20   ┆   docname(1):= param(1);       ┆
0x1de0…1e00      20 20 64 6f 63 6e 61 6d 65 28 32 29 3a 3d 20 70 61 72 61 6d 28 32 29 3b 0a 20 20 20 20 20 20 20   ┆  docname(2):= param(2);        ┆
0x1e00…1e20      20 61 6c 6c 3a 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 65 6e 64 0a 20 20 20 20 20 20 65 6c   ┆ all:= false;       end       el┆
0x1e20…1e40      73 65 20 74 79 70 65 5f 65 72 72 6f 72 28 3c 3a 70 61 72 61 6d 65 74 65 72 20 65 72 72 6f 72 3a   ┆se type_error(<:parameter error:┆
0x1e40…1e60      3e 2c 64 75 6d 6d 79 29 3b 0a 20 20 20 20 65 6e 64 3b 0a 20 20 0a 20 20 20 20 3c 2a 20 73 63 61   ┆>,dummy);     end;        <* sca┆
0x1e60…1e80      6e 20 63 68 61 69 6e 68 65 61 64 73 20 2a 3e 0a 20 20 20 20 6d 6f 76 65 28 20 39 32 2c 63 6f 6e   ┆n chainheads *>     move( 92,con┆
0x1e80…1ea0      74 65 6e 74 73 29 3b 0a 20 20 20 20 63 68 61 69 6e 73 3a 3d 20 28 63 6f 6e 74 65 6e 74 73 28 33   ┆tents);     chains:= (contents(3┆
0x1ea0…1ec0      29 2d 63 6f 6e 74 65 6e 74 73 28 31 29 29 2f 2f 32 3b 0a 20 20 20 20 6d 6f 76 65 28 63 6f 6e 74   ┆)-contents(1))//2;     move(cont┆
0x1ec0…1ee0      65 6e 74 73 28 31 29 2c 74 61 62 6c 65 29 3b 0a 20 20 20 20 66 6f 72 20 69 3a 3d 20 31 2c 69 2b   ┆ents(1),table);     for i:= 1,i+┆
0x1ee0…1f00      31 20 77 68 69 6c 65 20 69 20 20 3c 3d 20 63 68 61 69 6e 73 20 64 6f 0a 20 20 20 20 62 65 67 69   ┆1 while i  <= chains do     begi┆
0x1f00…1f20      6e 0a 20 20 20 20 20 20 61 64 64 72 3a 3d 20 74 61 62 6c 65 28 69 29 3b 0a 20 20 20 20 20 20 6d   ┆n       addr:= table(i);       m┆
0x1f20…1f40      6f 76 65 28 61 64 64 72 2d 33 36 2c 63 6f 6e 74 65 6e 74 73 29 3b 0a 20 20 20 20 20 20 69 66 20   ┆ove(addr-36,contents);       if ┆
0x1f40…1f60      61 6c 6c 20 74 68 65 6e 20 74 79 70 65 5f 63 68 61 69 6e 20 65 6c 73 65 0a 20 20 20 20 20 20 20   ┆all then type_chain else        ┆
0x1f60…1f80      20 20 69 66 20 64 6f 63 6e 61 6d 65 28 31 29 20 3d 20 63 6f 6e 74 65 6e 74 73 2e 72 61 66 28 31   ┆  if docname(1) = contents.raf(1┆
0x1f80…1fa0      29 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 6f 63 6e 61 6d 65 28 32 29 20 3d 20 63   ┆) and             docname(2) = c┆
0x1fa0…1fc0      6f 6e 74 65 6e 74 73 2e 72 61 66 28 32 29 20 74 68 65 6e 0a 20 20 20 20 20 20 20 20 20 62 65 67   ┆ontents.raf(2) then          beg┆
0x1fc0…1fe0      69 6e 20 66 6f 75 6e 64 3a 3d 20 74 72 75 65 3b 20 74 79 70 65 5f 63 68 61 69 6e 20 65 6e 64 3b   ┆in found:= true; type_chain end;┆
0x1fe0…2000      0a 20 20 20 20 65 6e 64 3b 0a 20 20 20 20 69 66 20 2d 2c 61 6c 6c 20 61 6e 64 20 2d 2c 66 6f 75   ┆     end;     if -,all and -,fou┆
0x2000…2020      6e 64 20 74 68 65 6e 20 74 79 70 65 5f 65 72 72 6f 72 28 3c 3a 6e 6f 74 20 66 6f 75 6e 64 3a 20   ┆nd then type_error(<:not found: ┆
0x2020…2040      3a 3e 2c 64 6f 63 6e 61 6d 65 29 3b 0a 20 20 65 6e 64 20 63 68 61 69 6e 3b 0a 20 20 20 20 20 20   ┆:>,docname);   end chain;       ┆
0x2040…2060      20 20 20 0a 0a 0c 20 20 70 72 6f 63 65 64 75 72 65 20 62 75 66 3b 0a 20 20 62 65 67 69 6e 0a 20   ┆        procedure buf;   begin  ┆
0x2060…2080      20 20 20 70 72 6f 63 65 64 75 72 65 20 74 79 70 65 5f 62 75 66 28 63 6f 6e 74 65 6e 74 73 29 3b   ┆   procedure type_buf(contents);┆
0x2080…20a0      0a 20 20 20 20 69 6e 74 65 67 65 72 20 61 72 72 61 79 20 20 20 20 20 20 63 6f 6e 74 65 6e 74 73   ┆     integer array      contents┆
0x20a0…20c0      20 3b 0a 0a 20 20 20 20 62 65 67 69 6e 0a 20 20 20 20 20 20 69 6e 74 65 67 65 72 20 69 2c 6a 3b   ┆ ;      begin       integer i,j;┆
0x20c0…20e0      0a 20 20 20 20 20 20 72 65 61 6c 20 61 72 72 61 79 20 6e 61 6d 65 28 31 3a 32 29 3b 0a 20 20 20   ┆       real array name(1:2);    ┆
0x20e0…2100      20 20 20 69 66 20 66 69 72 73 74 5f 74 79 70 65 64 20 74 68 65 6e 20 74 79 70 65 69 6e 3b 0a 20   ┆   if first_typed then typein;  ┆
0x2100…2120      20 20 20 20 20 66 69 72 73 74 5f 74 79 70 65 64 3a 3d 20 74 72 75 65 3b 0a 20 20 20 20 20 20 6a   ┆     first_typed:= true;       j┆
0x2120…2140      3a 3d 20 31 3b 0a 20 20 20 20 20 20 77 72 69 74 65 28 6f 75 74 2c 6e 6c 2c 31 2c 20 20 3c 3a 63   ┆:= 1;       write(out,nl,1,  <:c┆
0x2140…2160      6f 72 65 3a 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 2e 3a 3e 2c 3c 3c 2d   ┆ore:>,                 <:.:>,<<-┆
0x2160…2180      64 64 64 64 64 64 3e 2c 73 74 61 72 74 5f 61 64 64 72 2b 62 61 73 65 2c 6e 6c 2c 31 2c 0a 20 20   ┆dddddd>,start_addr+base,nl,1,   ┆
0x2180…21a0      20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 3a 6d 65 73 73 61 67 65 20 66 6c 61 67 20 20 20 20   ┆              <:message flag    ┆
0x21a0…21c0      20 20 3a 20 3a 3e 2c 63 6f 6e 74 65 6e 74 73 28 31 29 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20   ┆  : :>,contents(1),nl,1,        ┆
0x21c0…21e0      20 20 20 20 20 20 20 20 20 3c 3a 6e 65 78 74 20 62 75 66 66 65 72 20 20 20 20 20 20 20 3a 20 3a   ┆         <:next buffer       : :┆
0x21e0…2200      3e 2c 63 6f 6e 74 65 6e 74 73 28 32 29 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20   ┆>,contents(2),nl,1,             ┆
0x2200…2220      20 20 20 20 3c 3a 70 72 65 76 20 62 75 66 66 65 72 20 20 20 20 20 20 20 3a 20 3a 3e 2c 63 6f 6e   ┆    <:prev buffer       : :>,con┆
0x2220…2240      74 65 6e 74 73 28 33 29 2c 6e 6c 2c 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c   ┆tents(3),nl,1,                 <┆
0x2240…2260      3a 72 65 63 65 69 76 65 72 2f 72 65 73 75 6c 74 20 20 20 3a 20 3a 3e 2c 63 6f 6e 74 65 6e 74 73   ┆:receiver/result   : :>,contents┆
0x2260…2280      28 34 29 29 3b 0a 20 20 20 20 20 20 69 66 20 61 62 73 28 63 6f 6e 74 65 6e 74 73 28 34 29 29 20   ┆(4));       if abs(contents(4)) ┆
0x2280…22a0      3e 20 37 20 3c 2a 20 72 65 63 65 69 76 65 72 20 61 64 64 72 20 2a 3e 20 74 68 65 6e 0a 20 20 20   ┆> 7 <* receiver addr *> then    ┆
0x22a0…22c0      20 20 20 62 65 67 69 6e 0a 20 20 20 20 20 20 20 20 67 65 74 5f 64 65 73 63 72 5f 6f 72 5f 6e 61   ┆   begin         get_descr_or_na┆
0x22c0…22e0      6d 65 28 6e 61 6d 65 2c 61 62 73 28 63 6f 6e 74 65 6e 74 73 28 34 29 2f 2f 32 2a 32 29 2c 66 61   ┆me(name,abs(contents(4)//2*2),fa┆
0x22e0…2300      6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 6a 3a 3d 20 31 3b 0a 20 20 20 20 20 20 20 20 77 72 69   ┆lse);         j:= 1;         wri┆
0x2300…2320      74 65 28 6f 75 74 2c 73 70 2c 33 2c 73 74 72 69 6e 67 20 6e 61 6d 65 28 69 6e 63 72 65 61 73 65   ┆te(out,sp,3,string name(increase┆
0x2320…2340      28 6a 29 29 29 3b 0a 20 20 20 20 20 20 65 6e 64 3b 0a 20 20 20 20 20 20 6f 75 74 63 68 61 72 28   ┆(j)));       end;       outchar(┆
0x2340…2360      6f 75 74 2c 31 30 29 3b 0a 20 20 20 20 20 20 77 72 69 74 65 28 6f 75 74 2c 3c 3a 73 65 6e 64 65   ┆out,10);       write(out,<:sende┆
0x2360…2380      72 20 20 20 20 20 20 20 20 20 20 20 20 3a 20 3a 3e 2c 3c 3c 2d 64 64 64 64 64 64 3e 2c 63 6f 6e   ┆r            : :>,<<-dddddd>,con┆
0x2380…23a0      74 65 6e 74 73 28 35 29 29 3b 0a 20 20 20 20 20 20 69 66 20 61 62 73 28 63 6f 6e 74 65 6e 74 73   ┆tents(5));       if abs(contents┆
0x23a0…23c0      28 35 29 29 20 3e 20 30 20 74 68 65 6e 0a 20 20 20 20 20 20 62 65 67 69 6e 0a 20 20 20 20 20 20   ┆(5)) > 0 then       begin       ┆
0x23c0…23e0      20 20 67 65 74 5f 64 65 73 63 72 5f 6f 72 5f 6e 61 6d 65 28 6e 61 6d 65 2c 61 62 73 28 63 6f 6e   ┆  get_descr_or_name(name,abs(con┆
0x23e0…2400      74 65 6e 74 73 28 35 29 29 2c 66 61 6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 6a 3a 3d 20 31 3b   ┆tents(5)),false);         j:= 1;┆
0x2400…2420 (4,) 0a 20 20 20 20 20 20 20 20 77 72 69 74 65 28 6f 75 74 2c 73 70 2c 33 2c 73 74 72 69 6e 67 20 6e   ┆         write(out,sp,3,string n┆
0x2420…2440      61 6d 65 28 69 6e 63 72 65 61 73 65 28 6a 29 29 29 3b 0a 20 20 20 20 20 20 65 6e 64 3b 0a 20 20   ┆ame(increase(j)));       end;   ┆
0x2440…2460      20 20 20 20 6f 75 74 63 68 61 72 28 6f 75 74 2c 31 30 29 3b 0a 20 20 20 20 20 20 66 6f 72 20 69   ┆    outchar(out,10);       for i┆
0x2460…2480      3a 3d 20 36 20 73 74 65 70 20 31 20 75 6e 74 69 6c 20 31 33 20 64 6f 0a 20 20 20 20 20 20 62 65   ┆:= 6 step 1 until 13 do       be┆
0x2480…24a0      67 69 6e 0a 20 20 20 20 20 20 20 20 77 72 69 74 65 5f 66 6f 72 6d 61 74 74 65 64 28 63 6f 6e 74   ┆gin         write_formatted(cont┆
0x24a0…24c0      65 6e 74 73 28 69 29 2c 61 6c 6c 29 3b 0a 20 20 20 20 20 20 20 20 74 79 70 65 5f 74 65 78 74 28   ┆ents(i),all);         type_text(┆
0x24c0…24e0      3c 3a 3a 3e 29 3b 0a 20 20 20 20 20 20 65 6e 64 3b 0a 20 20 20 20 65 6e 64 20 74 79 70 65 5f 62   ┆<::>);       end;     end type_b┆
0x24e0…2500      75 66 3b 0a 20 20 0a 20 20 20 20 69 6e 74 65 67 65 72 20 69 2c 6a 2c 73 65 6e 64 65 72 2c 72 65   ┆uf;        integer i,j,sender,re┆
0x2500…2520      63 65 69 76 65 72 2c 63 68 65 63 6b 2c 61 64 64 72 2c 73 74 61 72 74 5f 61 64 64 72 2c 74 6f 70   ┆ceiver,check,addr,start_addr,top┆
0x2520…2540      2c 6d 6f 76 65 73 2c 62 75 66 66 65 72 73 3b 0a 20 20 20 20 62 6f 6f 6c 65 61 6e 20 74 6f 74 61   ┆,moves,buffers;     boolean tota┆
0x2540…2560      6c 2c 6f 6b 2c 66 69 72 73 74 5f 74 79 70 65 64 3b 0a 20 20 20 20 69 6e 74 65 67 65 72 20 61 72   ┆l,ok,first_typed;     integer ar┆
0x2560…2580      72 61 79 20 66 69 65 6c 64 20 62 61 73 65 3b 0a 20 20 0a 20 20 20 20 63 68 65 63 6b 3a 3d 20 30   ┆ray field base;        check:= 0┆
0x2580…25a0      3b 0a 20 20 20 20 74 6f 74 61 6c 3a 3d 20 74 72 75 65 3b 20 3c 2a 20 64 65 66 61 75 6c 74 20 61   ┆;     total:= true; <* default a┆
0x25a0…25c0      6c 6c 20 2a 3e 0a 20 20 20 20 66 69 72 73 74 5f 74 79 70 65 64 3a 3d 20 66 61 6c 73 65 3b 0a 20   ┆ll *>     first_typed:= false;  ┆
0x25c0…25e0      20 0a 20 20 20 20 77 68 69 6c 65 20 6e 65 78 74 5f 70 61 72 61 6d 28 73 5f 74 65 78 74 29 20 64   ┆      while next_param(s_text) d┆
0x25e0…2600      6f 0a 20 20 20 20 62 65 67 69 6e 0a 20 20 20 20 20 20 69 66 20 70 61 72 61 6d 28 31 29 20 3d 20   ┆o     begin       if param(1) = ┆
0x2600…2620      72 65 61 6c 3c 3a 61 6c 6c 3a 3e 20 74 68 65 6e 20 74 6f 74 61 6c 3a 3d 20 74 72 75 65 20 65 6c   ┆real<:all:> then total:= true el┆
0x2620…2640      73 65 0a 20 20 20 20 20 20 69 66 20 70 61 72 61 6d 28 31 29 20 3d 20 72 65 61 6c 3c 3a 73 65 6e   ┆se       if param(1) = real<:sen┆
0x2640…2660      64 65 3a 3e 20 61 64 64 20 31 31 34 20 74 68 65 6e 0a 20 20 20 20 20 20 62 65 67 69 6e 0a 20 20   ┆de:> add 114 then       begin   ┆
0x2660…2680      20 20 20 20 20 20 63 68 65 63 6b 3a 3d 20 63 68 65 63 6b 2b 31 3b 0a 20 20 20 20 20 20 20 20 6e   ┆      check:= check+1;         n┆
0x2680…26a0      65 78 74 5f 70 61 72 61 6d 28 70 5f 74 65 78 74 29 3b 0a 20 20 20 20 20 20 20 20 63 68 65 63 6b   ┆ext_param(p_text);         check┆
0x26a0…26c0      5f 70 72 6f 63 66 75 6e 63 28 70 61 72 61 6d 29 3b 0a 20 20 20 20 20 20 20 20 67 65 74 5f 64 65   ┆_procfunc(param);         get_de┆
0x26c0…26e0      73 63 72 5f 6f 72 5f 6e 61 6d 65 28 70 61 72 61 6d 2c 73 65 6e 64 65 72 2c 74 72 75 65 29 3b 0a   ┆scr_or_name(param,sender,true); ┆
0x26e0…2700      20 20 20 20 20 20 65 6e 64 0a 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 69 66 20 70 61   ┆      end       else       if pa┆
0x2700…2720      72 61 6d 28 31 29 20 3d 20 72 65 61 6c 3c 3a 72 65 63 65 69 3a 3e 20 61 64 64 20 31 31 38 20 74   ┆ram(1) = real<:recei:> add 118 t┆
0x2720…2740      68 65 6e 0a 20 20 20 20 20 20 62 65 67 69 6e 0a 20 20 20 20 20 20 20 20 63 68 65 63 6b 3a 3d 20   ┆hen       begin         check:= ┆
0x2740…2760      63 68 65 63 6b 2b 32 3b 0a 20 20 20 20 20 20 20 20 6e 65 78 74 5f 70 61 72 61 6d 28 70 5f 74 65   ┆check+2;         next_param(p_te┆
0x2760…2780      78 74 29 3b 0a 20 20 20 20 20 20 20 20 63 68 65 63 6b 5f 70 72 6f 63 66 75 6e 63 28 70 61 72 61   ┆xt);         check_procfunc(para┆
0x2780…27a0      6d 29 3b 0a 20 20 20 20 20 20 20 20 67 65 74 5f 64 65 73 63 72 5f 6f 72 5f 6e 61 6d 65 28 70 61   ┆m);         get_descr_or_name(pa┆
0x27a0…27c0      72 61 6d 2c 72 65 63 65 69 76 65 72 2c 74 72 75 65 29 3b 0a 20 20 20 20 20 20 65 6e 64 0a 20 20   ┆ram,receiver,true);       end   ┆
0x27c0…27e0      20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 74 79 70 65 5f 65 72 72 6f 72 28 3c 3a 70 61 72 61   ┆    else       type_error(<:para┆
0x27e0…2800      6d 65 74 65 72 20 65 72 72 6f 72 3a 3e 2c 64 75 6d 6d 79 29 3b 0a 20 20 20 20 65 6e 64 20 77 68   ┆meter error:>,dummy);     end wh┆
0x2800…2820      69 6c 65 3b 0a 20 20 0a 20 20 20 20 3c 2a 20 73 63 61 6e 20 6d 65 73 73 20 62 75 66 66 65 72 73   ┆ile;        <* scan mess buffers┆
0x2820…2840      20 2a 3e 0a 20 20 20 20 74 6f 74 61 6c 3a 3d 20 63 68 65 63 6b 20 3d 20 30 3b 0a 20 20 20 20 6d   ┆ *>     total:= check = 0;     m┆
0x2840…2860      6f 76 65 28 20 38 36 2c 63 6f 6e 74 65 6e 74 73 29 3b 0a 20 20 20 20 73 74 61 72 74 5f 61 64 64   ┆ove( 86,contents);     start_add┆
0x2860…2880      72 3a 3d 20 63 6f 6e 74 65 6e 74 73 28 31 29 2d 32 3b 0a 20 20 20 20 62 75 66 66 65 72 73 3a 3d   ┆r:= contents(1)-2;     buffers:=┆
0x2880…28a0      20 28 63 6f 6e 74 65 6e 74 73 28 32 29 2d 63 6f 6e 74 65 6e 74 73 28 31 29 29 2f 32 36 3b 0a 20   ┆ (contents(2)-contents(1))/26;  ┆
0x28a0…28c0      20 20 20 74 6f 70 3a 3d 20 38 2a 32 36 3b 20 3c 2a 62 75 66 73 69 7a 65 2a 38 2a 3e 0a 20 20 20   ┆   top:= 8*26; <*bufsize*8*>    ┆
0x28c0…28e0      20 6d 6f 76 65 73 3a 3d 20 28 62 75 66 66 65 72 73 2d 31 29 2f 2f 39 2b 31 3b 0a 20 20 20 20 66   ┆ moves:= (buffers-1)//9+1;     f┆
0x28e0…2900      6f 72 20 69 3a 3d 20 31 20 73 74 65 70 20 31 20 75 6e 74 69 6c 20 6d 6f 76 65 73 20 64 6f 0a 20   ┆or i:= 1 step 1 until moves do  ┆
0x2900…2920      20 20 20 62 65 67 69 6e 0a 20 20 20 20 20 6d 6f 76 65 28 73 74 61 72 74 5f 61 64 64 72 2c 63 6f   ┆   begin      move(start_addr,co┆
0x2920…2940      6e 74 65 6e 74 73 29 3b 0a 20 20 20 20 20 66 6f 72 20 62 61 73 65 3a 3d 20 30 20 73 74 65 70 20   ┆ntents);      for base:= 0 step ┆
0x2940…2960      32 36 20 75 6e 74 69 6c 20 74 6f 70 20 64 6f 0a 20 20 20 20 20 62 65 67 69 6e 0a 20 20 20 20 20   ┆26 until top do      begin      ┆
0x2960…2980      20 69 66 20 2d 2c 74 6f 74 61 6c 20 74 68 65 6e 0a 20 20 20 20 20 20 62 65 67 69 6e 0a 20 20 20   ┆ if -,total then       begin    ┆
0x2980…29a0      20 20 20 20 20 6f 6b 3a 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 63 61 73 65 20 63 68   ┆     ok:= false;         case ch┆
0x29a0…29c0      65 63 6b 2b 31 20 6f 66 0a 20 20 20 20 20 20 20 20 62 65 67 69 6e 3b 0a 20 20 20 20 20 20 20 20   ┆eck+1 of         begin;         ┆
0x29c0…29e0      20 20 6f 6b 3a 3d 20 61 62 73 28 63 6f 6e 74 65 6e 74 73 2e 62 61 73 65 28 35 29 29 20 3d 20 73   ┆  ok:= abs(contents.base(5)) = s┆
0x29e0…2a00      65 6e 64 65 72 3b 0a 20 20 20 20 20 20 20 20 20 20 6f 6b 3a 3d 20 61 62 73 28 63 6f 6e 74 65 6e   ┆ender;           ok:= abs(conten┆