Small-C Compiler v1.1 (UK) (128K) (Face B) (1985) [UTILITAIRE].dsk
HexaDumpAscii only
000000:  45 58 54 45 4E 44 45 44 20 43 50 43 20 44 53 4B    EXTENDED CPC DSK
000010:  20 46 69 6C 65 0D 0A 44 69 73 6B 2D 49 6E 66 6F     File..Disk-Info
000020:  0D 0A 53 41 4D 64 69 73 6B 31 37 30 35 31 34 00    ..SAMdisk170514.
000030:  2A 01 00 00 13 13 13 13 13 13 13 13 13 13 13 13    *...............
000040:  13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13    ................
000050:  13 13 13 13 13 13 13 13 13 13 13 13 13 13 00 00    ................
000060:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
000070:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
000080:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
000090:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0000A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0000B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0000C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0000D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0000E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0000F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
000100:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
000110:  00 00 01 00 02 09 52 E5 00 00 C1 02 00 00 00 02    ......R.........
000120:  00 00 C6 02 00 00 00 02 00 00 C2 02 00 00 00 02    ................
000130:  00 00 C7 02 00 00 00 02 00 00 C3 02 00 00 00 02    ................
000140:  00 00 C8 02 00 00 00 02 00 00 C4 02 00 00 00 02    ................
000150:  00 00 C9 02 00 00 00 02 00 00 C5 02 00 00 00 02    ................
000160:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
000170:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
000180:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
000190:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0001A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0001B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0001C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0001D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0001E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0001F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
000200:  00 52 55 4E 54 49 4D 45 20 41 53 4D 00 00 00 5D    .RUNTIME ASM...]
000210:  02 03 04 05 06 07 08 09 0A 0B 0C 0D 00 00 00 00    ................
000220:  00 53 54 44 4C 49 42 20 20 41 53 4D 00 00 00 80    .STDLIB  ASM....
000230:  0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D    ................
000240:  00 53 54 44 4C 49 42 20 20 41 53 4D 01 00 00 49    .STDLIB  ASM...I
000250:  1E 1F 20 21 22 23 24 25 26 27 00 00 00 00 00 00    .. !"#$%&'......
000260:  00 53 55 42 4D 49 54 20 20 43 20 20 00 00 00 34    .SUBMIT  C  ...4
000270:  28 29 2A 2B 2C 2D 2E 00 00 00 00 00 00 00 00 00    ()*+,-..........
000280:  00 46 55 4E 43 54 49 4F 4E 41 53 4D 00 00 00 18    .FUNCTIONASM....
000290:  2F 30 31 00 00 00 00 00 00 00 00 00 00 00 00 00    /01.............
0002A0:  00 46 55 4E 43 54 49 4F 4E 43 52 4C 00 00 00 06    .FUNCTIONCRL....
0002B0:  32 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    2...............
0002C0:  00 43 20 20 20 20 20 20 20 44 45 46 00 00 00 2F    .C       DEF.../
0002D0:  33 34 35 36 37 38 00 00 00 00 00 00 00 00 00 00    345678..........
0002E0:  00 43 20 20 20 20 20 20 20 53 55 42 00 00 00 02    .C       SUB....
0002F0:  39 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    9...............
000300:  00 43 31 20 20 20 20 20 20 43 20 20 00 00 00 51    .C1      C  ...Q
000310:  3A 3B 3C 3D 3E 3F 40 41 42 43 44 00 00 00 00 00    :;<=>?@ABCD.....
000320:  00 43 32 20 20 20 20 20 20 43 20 20 00 00 00 62    .C2      C  ...b
000330:  45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 00 00 00    EFGHIJKLMNOPQ...
000340:  00 43 34 20 20 20 20 20 20 43 20 20 00 00 00 2A    .C4      C  ...*
000350:  52 53 54 55 56 57 00 00 00 00 00 00 00 00 00 00    RSTUVW..........
000360:  00 43 35 20 20 20 20 20 20 43 20 20 00 00 00 37    .C5      C  ...7
000370:  58 59 5A 5B 5C 5D 5E 00 00 00 00 00 00 00 00 00    XYZ[\]^.........
000380:  00 43 36 20 20 20 20 20 20 43 20 20 00 00 00 1D    .C6      C  ....
000390:  5F 60 61 62 00 00 00 00 00 00 00 00 00 00 00 00    _`ab............
0003A0:  00 43 38 20 20 20 20 20 20 43 20 20 00 00 00 38    .C8      C  ...8
0003B0:  63 64 65 66 67 68 69 00 00 00 00 00 00 00 00 00    cdefghi.........
0003C0:  00 43 37 20 20 20 20 20 20 43 20 20 00 00 00 6A    .C7      C  ...j
0003D0:  6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 00 00    jklmnopqrstuvw..
0003E0:  00 43 39 20 20 20 20 20 20 43 20 20 00 00 00 1A    .C9      C  ....
0003F0:  78 79 7A 7B 00 00 00 00 00 00 00 00 00 00 00 00    xyz{............
000400:  6D 09 0D 0A 09 6A 6D 70 09 40 73 78 74 0D 0A 3B    m....jmp.@sxt..;
000410:  0D 0A 3B 09 66 65 74 63 68 20 61 20 73 69 6E 67    ..;.fetch a sing
000420:  6C 65 20 62 79 74 65 20 66 72 6F 6D 20 73 74 61    le byte from sta
000430:  63 6B 20 70 6C 75 73 20 61 20 32 20 62 79 74 65    ck plus a 2 byte
000440:  20 6F 66 66 73 65 74 0D 0A 3B 09 61 6E 64 20 73     offset..;.and s
000450:  69 67 6E 20 65 78 74 65 6E 64 20 62 79 74 65 20    ign extend byte 
000460:  69 6E 74 6F 20 68 6C 0D 0A 3B 0D 0A 40 67 63 68    into hl..;..@gch
000470:  61 72 73 6C 3A 63 73 65 63 74 0D 0A 09 70 6F 70    arsl:csect...pop
000480:  09 62 0D 0A 09 6C 64 61 78 09 62 0D 0A 09 6D 6F    .b...ldax.b...mo
000490:  76 09 6C 2C 61 09 0D 0A 09 69 6E 78 09 62 09 0D    v.l,a....inx.b..
0004A0:  0A 09 6C 64 61 78 09 62 09 0D 0A 09 6D 6F 76 09    ..ldax.b....mov.
0004B0:  68 2C 61 09 0D 0A 09 69 6E 78 09 68 09 0D 0A 09    h,a....inx.h....
0004C0:  64 61 64 09 73 70 09 0D 0A 09 70 75 73 68 09 62    dad.sp....push.b
0004D0:  09 0D 0A 09 6D 6F 76 09 61 2C 6D 09 0D 0A 09 6A    ....mov.a,m....j
0004E0:  6D 70 09 40 73 78 74 09 0D 0A 3B 0D 0A 3B 09 66    mp.@sxt...;..;.f
0004F0:  65 74 63 68 20 61 20 73 69 6E 67 6C 65 20 62 79    etch a single by
000500:  74 65 20 66 72 6F 6D 20 61 64 64 72 65 73 73 20    te from address 
000510:  69 6E 20 68 6C 20 61 6E 64 0D 0A 3B 09 73 69 67    in hl and..;.sig
000520:  6E 20 65 78 74 65 6E 64 20 69 6E 74 6F 20 68 6C    n extend into hl
000530:  0D 0A 3B 0D 0A 40 67 63 68 61 72 3A 20 63 73 65    ..;..@gchar: cse
000540:  63 74 0D 0A 09 6D 6F 76 09 61 2C 6D 0D 0A 09 6A    ct...mov.a,m...j
000550:  6D 70 09 40 73 78 74 0D 0A 3B 0D 0A 3B 09 70 75    mp.@sxt..;..;.pu
000560:  74 20 74 68 65 20 61 63 63 75 6D 20 69 6E 74 6F    t the accum into
000570:  20 68 6C 20 61 6E 64 20 73 69 67 6E 20 65 78 74     hl and sign ext
000580:  65 6E 64 20 74 68 72 6F 75 67 68 20 68 0D 0A 3B    end through h..;
000590:  0D 0A 40 73 78 74 3A 09 63 73 65 63 74 0D 0A 09    ..@sxt:.csect...
0005A0:  6D 6F 76 09 6C 2C 61 0D 0A 09 72 6C 63 0D 0A 09    mov.l,a...rlc...
0005B0:  73 62 62 09 61 0D 0A 09 6D 6F 76 09 68 2C 61 0D    sbb.a...mov.h,a.
0005C0:  0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 66 65 74 63    ..ret..;..;.fetc
0005D0:  68 20 61 20 66 75 6C 6C 20 31 36 2D 62 69 74 20    h a full 16-bit 
0005E0:  69 6E 74 65 67 65 72 20 66 72 6F 6D 20 6F 66 66    integer from off
0005F0:  73 65 74 20 70 6C 75 73 20 73 74 61 63 6B 20 70    set plus stack p
000600:  00 43 4C 20 20 20 20 20 20 53 55 42 00 00 00 01    .CL      SUB....
000610:  7C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    |...............
000620:  00 43 33 20 20 20 20 20 20 43 20 20 00 00 00 25    .C3      C  ...%
000630:  7D 7E 7F 80 81 00 00 00 00 00 00 00 00 00 00 00    }~..............
000640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0006A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0006B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0006C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0006D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0006E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0006F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0007A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0007B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0007C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0007D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0007E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0007F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000800:  6F 69 6E 74 65 72 0D 0A 3B 09 69 6E 74 6F 20 68    ointer..;.into h
000810:  6C 0D 0A 3B 0D 0A 40 67 69 6E 74 73 73 3A 63 73    l..;..@gintss:cs
000820:  65 63 74 0D 0A 09 70 6F 70 09 62 09 0D 0A 09 6C    ect...pop.b....l
000830:  64 61 78 09 62 09 0D 0A 09 6D 6F 76 09 6C 2C 61    dax.b....mov.l,a
000840:  09 0D 0A 09 6D 76 69 09 68 2C 30 09 0D 0A 09 69    ....mvi.h,0....i
000850:  6E 78 09 62 09 0D 0A 09 64 61 64 09 73 70 09 0D    nx.b....dad.sp..
000860:  0A 09 70 75 73 68 09 62 09 0D 0A 09 6D 6F 76 09    ..push.b....mov.
000870:  61 2C 6D 09 0D 0A 09 69 6E 78 09 68 09 0D 0A 09    a,m....inx.h....
000880:  6D 6F 76 09 68 2C 6D 09 0D 0A 09 6D 6F 76 09 6C    mov.h,m....mov.l
000890:  2C 61 09 0D 0A 09 72 65 74 09 09 0D 0A 3B 0D 0A    ,a....ret....;..
0008A0:  3B 09 66 65 74 63 68 20 61 20 31 36 2D 62 69 74    ;.fetch a 16-bit
0008B0:  20 69 6E 74 65 67 65 72 20 66 72 6F 6D 20 73 74     integer from st
0008C0:  61 63 6B 20 70 6F 69 6E 74 65 72 20 70 6C 75 73    ack pointer plus
0008D0:  0D 0A 3B 09 61 20 31 36 20 62 69 74 20 6F 66 66    ..;.a 16 bit off
0008E0:  73 65 74 20 61 6E 64 20 70 75 74 20 76 61 6C 75    set and put valu
0008F0:  65 20 69 6E 20 68 6C 0D 0A 3B 0D 0A 40 67 69 6E    e in hl..;..@gin
000900:  74 73 6C 3A 63 73 65 63 74 0D 0A 09 70 6F 70 09    tsl:csect...pop.
000910:  62 0D 0A 09 6C 64 61 78 09 62 0D 0A 09 6D 6F 76    b...ldax.b...mov
000920:  09 6C 2C 61 0D 0A 09 69 6E 78 09 62 0D 0A 09 6C    .l,a...inx.b...l
000930:  64 61 78 09 62 0D 0A 09 6D 6F 76 09 68 2C 61 0D    dax.b...mov.h,a.
000940:  0A 09 69 6E 78 09 62 0D 0A 09 64 61 64 09 73 70    ..inx.b...dad.sp
000950:  0D 0A 09 70 75 73 68 09 62 0D 0A 09 6D 6F 76 09    ...push.b...mov.
000960:  61 2C 6D 0D 0A 09 69 6E 78 09 68 0D 0A 09 6D 6F    a,m...inx.h...mo
000970:  76 09 68 2C 6D 0D 0A 09 6D 6F 76 09 6C 2C 61 0D    v.h,m...mov.l,a.
000980:  0A 09 72 65 74 09 09 0D 0A 3B 0D 0A 3B 09 66 65    ..ret....;..;.fe
000990:  74 63 68 20 61 20 66 75 6C 6C 20 31 36 2D 62 69    tch a full 16-bi
0009A0:  74 20 69 6E 74 65 67 65 72 20 66 72 6F 6D 20 74    t integer from t
0009B0:  68 65 20 61 64 64 72 65 73 73 20 69 6E 20 68 6C    he address in hl
0009C0:  0D 0A 3B 09 69 6E 74 6F 20 68 6C 0D 0A 3B 0D 0A    ..;.into hl..;..
0009D0:  40 67 69 6E 74 3A 09 63 73 65 63 74 0D 0A 09 6D    @gint:.csect...m
0009E0:  6F 76 09 61 2C 6D 0D 0A 09 69 6E 78 09 68 0D 0A    ov.a,m...inx.h..
0009F0:  09 6D 6F 76 09 68 2C 6D 0D 0A 09 6D 6F 76 09 6C    .mov.h,m...mov.l
000A00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000A10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000A20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000A30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000A40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000A50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000A60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000A70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000A80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000A90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000AA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000AB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000AC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000AD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000AE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000AF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000B00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000B10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000B20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000B30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000B40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000B50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000B60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000B70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000B80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000B90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000BA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000BB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000BC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000BD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000BE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000BF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000C00:  2C 61 0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 73    ,a...ret..;..;.s
000C10:  74 6F 72 65 20 61 20 62 79 74 65 20 73 74 61 63    tore a byte stac
000C20:  6B 20 70 6C 75 73 20 38 20 62 79 74 65 20 6F 66    k plus 8 byte of
000C30:  66 73 65 74 0D 0A 3B 0D 0A 40 70 63 68 61 72 73    fset..;..@pchars
000C40:  73 3A 63 73 65 63 74 0D 0A 09 78 63 68 67 09 0D    s:csect...xchg..
000C50:  0A 09 70 6F 70 09 62 0D 0A 09 6C 64 61 78 09 62    ..pop.b...ldax.b
000C60:  0D 0A 09 6D 6F 76 09 6C 2C 61 0D 0A 09 6D 76 69    ...mov.l,a...mvi
000C70:  09 68 2C 30 0D 0A 09 69 6E 78 09 62 0D 0A 09 64    .h,0...inx.b...d
000C80:  61 64 09 73 70 0D 0A 09 6D 6F 76 09 6D 2C 65 0D    ad.sp...mov.m,e.
000C90:  0A 09 78 63 68 67 0D 0A 09 70 75 73 68 09 62 0D    ..xchg...push.b.
000CA0:  0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 73 74 6F 72    ..ret..;..;.stor
000CB0:  65 20 61 20 62 79 74 65 20 61 74 20 73 74 61 63    e a byte at stac
000CC0:  6B 20 70 6C 75 73 20 6F 66 66 73 65 74 0D 0A 3B    k plus offset..;
000CD0:  0D 0A 40 70 63 68 61 72 73 6C 3A 63 73 65 63 74    ..@pcharsl:csect
000CE0:  0D 0A 09 78 63 68 67 0D 0A 09 70 6F 70 09 62 0D    ...xchg...pop.b.
000CF0:  0A 09 6C 64 61 78 09 62 0D 0A 09 6D 6F 76 09 6C    ..ldax.b...mov.l
000D00:  2C 61 0D 0A 09 69 6E 78 09 62 0D 0A 09 6C 64 61    ,a...inx.b...lda
000D10:  78 09 62 0D 0A 09 6D 6F 76 09 68 2C 61 0D 0A 09    x.b...mov.h,a...
000D20:  69 6E 78 09 62 0D 0A 09 64 61 64 09 73 70 0D 0A    inx.b...dad.sp..
000D30:  09 6D 6F 76 09 6D 2C 65 09 09 0D 0A 09 78 63 68    .mov.m,e.....xch
000D40:  67 0D 0A 09 70 75 73 68 09 62 0D 0A 09 72 65 74    g...push.b...ret
000D50:  0D 0A 3B 0D 0A 3B 09 73 74 6F 72 65 20 31 36 2D    ..;..;.store 16-
000D60:  62 69 74 20 69 6E 74 65 67 65 72 20 61 74 20 6F    bit integer at o
000D70:  66 66 73 65 74 20 70 6C 75 73 20 73 74 61 63 6B    ffset plus stack
000D80:  20 0D 0A 3B 0D 0A 40 70 69 6E 74 73 73 3A 63 73     ..;..@pintss:cs
000D90:  65 63 74 0D 0A 09 78 63 68 67 0D 0A 09 70 6F 70    ect...xchg...pop
000DA0:  09 62 0D 0A 09 6C 64 61 78 09 62 0D 0A 09 6D 6F    .b...ldax.b...mo
000DB0:  76 09 6C 2C 61 0D 0A 09 6D 76 69 09 68 2C 30 0D    v.l,a...mvi.h,0.
000DC0:  0A 09 69 6E 78 09 62 0D 0A 09 64 61 64 09 73 70    ..inx.b...dad.sp
000DD0:  0D 0A 09 6D 6F 76 09 6D 2C 65 0D 0A 09 69 6E 78    ...mov.m,e...inx
000DE0:  09 68 0D 0A 09 6D 6F 76 09 6D 2C 64 0D 0A 09 78    .h...mov.m,d...x
000DF0:  63 68 67 0D 0A 09 70 75 73 68 09 62 0D 0A 09 72    chg...push.b...r
000E00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000E10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000E20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000E30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000E40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000E50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000E60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000E70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000E80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000E90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000EA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000EB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000EC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000ED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000EE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000EF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000F00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000F10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000F20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000F30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000F40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000F50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000F60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000F70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000F80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000F90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000FA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000FB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000FC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000FD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000FE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
000FF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
001000:  65 74 0D 0A 3B 0D 0A 3B 09 73 74 6F 72 65 20 61    et..;..;.store a
001010:  20 31 36 20 62 69 74 20 69 6E 74 65 67 65 72 20     16 bit integer 
001020:  69 6E 20 68 6C 20 61 74 20 73 74 61 63 6B 20 70    in hl at stack p
001030:  6C 75 73 20 6F 66 66 73 65 74 0D 0A 3B 0D 0A 40    lus offset..;..@
001040:  70 69 6E 74 73 6C 3A 63 73 65 63 74 0D 0A 09 78    pintsl:csect...x
001050:  63 68 67 0D 0A 09 70 6F 70 09 62 0D 0A 09 6C 64    chg...pop.b...ld
001060:  61 78 09 62 0D 0A 09 6D 6F 76 09 6C 2C 61 0D 0A    ax.b...mov.l,a..
001070:  09 69 6E 78 09 62 0D 0A 09 6C 64 61 78 09 62 0D    .inx.b...ldax.b.
001080:  0A 09 6D 6F 76 09 68 2C 61 0D 0A 09 69 6E 78 09    ..mov.h,a...inx.
001090:  62 0D 0A 09 64 61 64 09 73 70 0D 0A 09 6D 6F 76    b...dad.sp...mov
0010A0:  09 6D 2C 65 0D 0A 09 69 6E 78 09 68 0D 0A 09 6D    .m,e...inx.h...m
0010B0:  6F 76 09 6D 2C 64 0D 0A 09 70 75 73 68 09 62 0D    ov.m,d...push.b.
0010C0:  0A 09 78 63 68 67 0D 0A 09 72 65 74 0D 0A 3B 0D    ..xchg...ret..;.
0010D0:  0A 3B 09 73 74 6F 72 65 20 61 20 31 36 2D 62 69    .;.store a 16-bi
0010E0:  74 20 69 6E 74 65 67 65 72 20 69 6E 20 68 6C 20    t integer in hl 
0010F0:  61 74 20 74 68 65 20 61 64 64 72 65 73 73 20 69    at the address i
001100:  6E 20 64 65 0D 0A 3B 0D 0A 40 70 69 6E 74 3A 09    n de..;..@pint:.
001110:  63 73 65 63 74 0D 0A 09 6D 6F 76 09 61 2C 6C 0D    csect...mov.a,l.
001120:  0A 09 73 74 61 78 09 64 0D 0A 09 69 6E 78 09 64    ..stax.d...inx.d
001130:  0D 0A 09 6D 6F 76 09 61 2C 68 0D 0A 09 73 74 61    ...mov.a,h...sta
001140:  78 09 64 0D 0A 09 72 65 74 0D 0A 09 70 61 67 65    x.d...ret...page
001150:  0D 0A 40 69 6E 63 64 65 63 3A 63 73 65 63 74 0D    ..@incdec:csect.
001160:  0A 3B 0D 0A 3B 09 74 61 6B 65 20 74 68 65 20 61    .;..;.take the a
001170:  64 64 72 65 73 73 20 69 6E 20 68 6C 20 61 6E 64    ddress in hl and
001180:  20 61 64 64 20 76 61 6C 75 65 20 74 68 61 74 20     add value that 
001190:  66 6F 6C 6C 6F 77 20 61 6E 64 20 73 61 76 65 20    follow and save 
0011A0:  62 61 63 6B 0D 0A 3B 09 61 64 64 72 65 73 73 20    back..;.address 
0011B0:  69 6E 20 68 6C 0D 0A 3B 0D 0A 40 70 72 65 69 6E    in hl..;..@prein
0011C0:  63 3A 0D 0A 09 63 61 6C 6C 09 40 69 6E 63 64 65    c:...call.@incde
0011D0:  63 6C 0D 0A 09 63 61 6C 6C 09 40 69 6E 63 0D 0A    cl...call.@inc..
0011E0:  09 6E 6F 70 0D 0A 09 72 65 74 09 0D 0A 3B 0D 0A    .nop...ret...;..
0011F0:  3B 09 74 61 6B 65 20 74 68 65 20 61 64 64 72 65    ;.take the addre
001200:  09 74 69 74 6C 65 09 72 75 6E 74 69 6D 65 20 70    .title.runtime p
001210:  61 63 6B 61 67 65 20 66 6F 72 20 73 6D 61 6C 6C    ackage for small
001220:  20 22 43 22 0D 0A 0D 0A 72 61 6D 09 65 71 75 09     "C"....ram.equ.
001230:  30 09 09 3B 73 74 61 72 74 20 6F 66 20 72 61 6D    0..;start of ram
001240:  20 69 6E 20 73 79 73 74 65 6D 0D 0A 09 65 78 74     in system...ext
001250:  72 6E 09 6D 61 69 6E 0D 0A 0D 0A 3B 2A 2A 2A 2A    rn.main....;****
001260:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
001270:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
001280:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
001290:  2A 2A 2A 2A 0D 0A 3B 09 09 09 09 09 09 09 2A 0D    ****..;.......*.
0012A0:  0A 3B 09 72 75 6E 20 74 69 6D 65 20 6C 69 62 72    .;.run time libr
0012B0:  61 79 20 66 6F 72 20 73 6D 61 6C 6C 20 63 20 63    ay for small c c
0012C0:  6F 6D 70 69 6C 65 72 09 09 2A 0D 0A 3B 09 09 09    ompiler..*..;...
0012D0:  09 09 09 09 2A 0D 0A 3B 09 09 62 79 20 52 6F 6E    ....*..;..by Ron
0012E0:  20 43 61 69 6E 09 09 09 09 2A 0D 0A 3B 09 09 09     Cain....*..;...
0012F0:  09 09 09 09 2A 0D 0A 3B 2A 2A 2A 2A 2A 2A 2A 2A    ....*..;********
001300:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
001310:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
001320:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
001330:  0D 0A 3B 0D 0A 3B 09 66 65 74 63 68 20 61 20 73    ..;..;.fetch a s
001340:  69 6E 67 6C 65 20 62 79 74 65 20 66 72 6F 6D 20    ingle byte from 
001350:  73 74 61 63 6B 20 70 6F 69 6E 74 65 72 20 70 6C    stack pointer pl
001360:  75 73 0D 0A 3B 09 6F 66 66 73 65 74 20 6F 66 20    us..;.offset of 
001370:  62 79 74 65 20 66 6F 6C 6C 6F 77 69 6E 67 20 63    byte following c
001380:  61 6C 6C 20 61 6E 64 20 73 69 67 6E 20 65 78 74    all and sign ext
001390:  65 6E 64 0D 0A 3B 09 69 6E 74 6F 20 68 6C 0D 0A    end..;.into hl..
0013A0:  3B 0D 0A 40 67 63 68 61 72 73 73 3A 63 73 65 63    ;..@gcharss:csec
0013B0:  74 0D 0A 09 70 6F 70 09 62 09 0D 0A 09 6C 64 61    t...pop.b....lda
0013C0:  78 09 62 09 0D 0A 09 6D 6F 76 09 6C 2C 61 09 0D    x.b....mov.l,a..
0013D0:  0A 09 69 6E 78 09 62 09 0D 0A 09 6D 76 69 09 68    ..inx.b....mvi.h
0013E0:  2C 30 09 0D 0A 09 64 61 64 09 73 70 09 0D 0A 09    ,0....dad.sp....
0013F0:  70 75 73 68 09 62 09 0D 0A 09 6D 6F 76 09 61 2C    push.b....mov.a,
001400:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
001410:  01 00 01 00 02 09 52 E5 01 00 C1 02 00 00 00 02    ......R.........
001420:  01 00 C6 02 00 00 00 02 01 00 C2 02 00 00 00 02    ................
001430:  01 00 C7 02 00 00 00 02 01 00 C3 02 00 00 00 02    ................
001440:  01 00 C8 02 00 00 00 02 01 00 C4 02 00 00 00 02    ................
001450:  01 00 C9 02 00 00 00 02 01 00 C5 02 00 00 00 02    ................
001460:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
001470:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
001480:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
001490:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0014A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0014B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0014C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0014D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0014E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0014F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
001500:  73 73 20 69 6E 20 68 6C 20 61 6E 64 20 73 75 62    ss in hl and sub
001510:  20 76 61 6C 75 65 20 74 68 61 74 20 66 6F 6C 6C     value that foll
001520:  6F 77 20 61 6E 64 0D 0A 3B 09 73 61 76 65 20 69    ow and..;.save i
001530:  74 20 62 61 63 6B 20 69 6E 20 70 6C 61 63 65 0D    t back in place.
001540:  0A 3B 0D 0A 40 70 72 65 64 65 63 3A 0D 0A 09 63    .;..@predec:...c
001550:  61 6C 6C 09 40 69 6E 63 64 65 63 6C 0D 0A 09 63    all.@incdecl...c
001560:  61 6C 6C 09 40 64 65 63 0D 0A 09 6E 6F 70 0D 0A    all.@dec...nop..
001570:  09 72 65 74 0D 0A 3B 0D 0A 3B 09 74 61 6B 65 20    .ret..;..;.take 
001580:  74 68 65 20 61 64 64 72 65 73 73 20 69 6E 20 68    the address in h
001590:  6C 20 61 6E 64 20 73 75 62 20 76 61 6C 75 65 20    l and sub value 
0015A0:  74 68 61 74 20 66 6F 6C 6C 6F 77 20 61 6E 64 20    that follow and 
0015B0:  73 61 76 65 0D 0A 3B 09 62 61 63 6B 20 69 6E 20    save..;.back in 
0015C0:  61 64 64 72 65 73 73 20 69 6E 20 68 6C 20 61 6E    address in hl an
0015D0:  64 20 72 65 73 74 6F 72 65 20 76 61 6C 75 65 20    d restore value 
0015E0:  74 6F 20 70 72 65 20 69 6E 63 0D 0A 3B 0D 0A 40    to pre inc..;..@
0015F0:  70 6F 73 74 69 6E 63 3A 0D 0A 09 63 61 6C 6C 09    postinc:...call.
001600:  40 69 6E 63 64 65 63 6C 0D 0A 09 70 75 73 68 09    @incdecl...push.
001610:  64 0D 0A 09 63 61 6C 6C 09 40 69 6E 63 0D 0A 09    d...call.@inc...
001620:  70 6F 70 09 68 0D 0A 09 6E 6F 70 0D 0A 09 72 65    pop.h...nop...re
001630:  74 0D 0A 3B 0D 0A 3B 09 74 61 6B 65 20 74 68 65    t..;..;.take the
001640:  20 61 64 64 72 65 73 73 20 69 6E 20 68 6C 20 61     address in hl a
001650:  6E 64 20 61 64 64 20 76 61 6C 75 65 20 74 68 61    nd add value tha
001660:  74 20 66 6F 6C 6C 6F 77 20 61 6E 64 0D 0A 3B 09    t follow and..;.
001670:  73 61 76 65 20 62 61 63 6B 20 69 6E 20 61 64 64    save back in add
001680:  72 65 73 73 20 69 6E 20 68 6C 20 72 65 73 74 6F    ress in hl resto
001690:  72 65 20 76 61 6C 75 65 20 70 72 65 20 64 65 63    re value pre dec
0016A0:  0D 0A 3B 0D 0A 40 70 6F 73 74 64 65 63 3A 0D 0A    ..;..@postdec:..
0016B0:  09 63 61 6C 6C 09 40 69 6E 63 64 65 63 6C 0D 0A    .call.@incdecl..
0016C0:  09 70 75 73 68 09 64 0D 0A 09 63 61 6C 6C 09 40    .push.d...call.@
0016D0:  64 65 63 0D 0A 09 70 6F 70 09 68 0D 0A 09 6E 6F    dec...pop.h...no
0016E0:  70 0D 0A 09 72 65 74 09 0D 0A 3B 0D 0A 3B 09 6C    p...ret...;..;.l
0016F0:  6F 61 64 20 6E 65 65 64 65 64 20 76 61 6C 75 74    oad needed valut
001700:  69 09 62 2C 40 63 6F 6D 70 72 65 74 0D 0A 09 70    i.b,@compret...p
001710:  75 73 68 09 62 0D 0A 09 63 61 6C 6C 09 40 63 6D    ush.b...call.@cm
001720:  70 0D 0A 09 72 7A 0D 0A 09 72 6E 63 0D 0A 09 64    p...rz...rnc...d
001730:  63 78 09 68 0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B    cx.h...ret..;..;
001740:  09 74 65 73 74 20 69 66 20 64 65 20 6C 65 73 73    .test if de less
001750:  20 74 68 61 6E 20 6F 72 20 65 71 75 61 6C 20 74     than or equal t
001760:  6F 20 68 6C 20 28 73 69 67 6E 65 64 29 0D 0A 3B    o hl (signed)..;
001770:  0D 0A 40 6C 65 3A 0D 0A 09 70 6F 70 09 62 0D 0A    ..@le:...pop.b..
001780:  09 70 6F 70 09 64 0D 0A 09 70 75 73 68 09 62 0D    .pop.d...push.b.
001790:  0A 09 6C 78 69 09 62 2C 40 63 6F 6D 70 72 65 74    ..lxi.b,@compret
0017A0:  0D 0A 09 70 75 73 68 09 62 0D 0A 09 63 61 6C 6C    ...push.b...call
0017B0:  09 40 63 6D 70 0D 0A 09 72 7A 0D 0A 09 72 63 0D    .@cmp...rz...rc.
0017C0:  0A 09 64 63 78 09 68 0D 0A 09 72 65 74 0D 0A 09    ..dcx.h...ret...
0017D0:  70 61 67 65 0D 0A 3B 0D 0A 3B 09 74 65 73 74 20    page..;..;.test 
0017E0:  69 66 20 64 65 20 67 72 65 61 74 65 72 20 74 68    if de greater th
0017F0:  61 6E 20 68 6C 20 28 75 6E 73 69 67 6E 65 64 29    an hl (unsigned)
001800:  0D 0A 3B 0D 0A 40 75 67 74 3A 0D 0A 09 70 6F 70    ..;..@ugt:...pop
001810:  09 62 0D 0A 09 70 6F 70 09 64 0D 0A 09 70 75 73    .b...pop.d...pus
001820:  68 09 62 0D 0A 09 6C 78 69 09 62 2C 40 63 6F 6D    h.b...lxi.b,@com
001830:  70 72 65 74 0D 0A 09 70 75 73 68 09 62 0D 0A 09    pret...push.b...
001840:  78 63 68 67 0D 0A 09 63 61 6C 6C 09 40 75 63 6D    xchg...call.@ucm
001850:  70 0D 0A 09 72 63 0D 0A 09 64 63 78 09 68 0D 0A    p...rc...dcx.h..
001860:  09 72 65 74 0D 0A 3B 0D 0A 3B 09 74 65 73 74 20    .ret..;..;.test 
001870:  69 66 20 64 65 20 6C 65 73 73 20 74 68 61 6E 20    if de less than 
001880:  68 6C 28 75 6E 73 69 67 6E 65 64 29 0D 0A 3B 0D    hl(unsigned)..;.
001890:  0A 40 75 6C 74 3A 0D 0A 09 70 6F 70 09 62 0D 0A    .@ult:...pop.b..
0018A0:  09 70 6F 70 09 64 0D 0A 09 70 75 73 68 09 62 0D    .pop.d...push.b.
0018B0:  0A 09 6C 78 69 09 62 2C 40 63 6F 6D 70 72 65 74    ..lxi.b,@compret
0018C0:  0D 0A 09 70 75 73 68 09 62 0D 0A 09 63 61 6C 6C    ...push.b...call
0018D0:  09 40 75 63 6D 70 0D 0A 09 72 63 0D 0A 09 64 63    .@ucmp...rc...dc
0018E0:  78 09 68 0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09    x.h...ret..;..;.
0018F0:  74 65 73 74 20 69 66 20 64 65 20 67 72 65 61 74    test if de great
001900:  20 66 6F 72 20 69 6E 63 20 61 6E 64 20 64 65 63     for inc and dec
001910:  20 0D 0A 3B 0D 0A 40 69 6E 63 64 65 63 6C 3A 0D     ..;..@incdecl:.
001920:  0A 09 70 6F 70 09 64 0D 0A 09 70 6F 70 09 62 0D    ..pop.d...pop.b.
001930:  0A 09 6C 64 61 78 09 62 0D 0A 09 69 6E 78 09 62    ..ldax.b...inx.b
001940:  0D 0A 09 70 75 73 68 09 62 0D 0A 09 70 75 73 68    ...push.b...push
001950:  09 64 0D 0A 09 64 63 78 09 62 0D 0A 09 6F 72 61    .d...dcx.b...ora
001960:  09 61 0D 0A 09 6A 70 09 40 69 6E 63 64 65 63 31    .a...jp.@incdec1
001970:  0D 0A 09 6D 6F 76 09 65 2C 6D 0D 0A 09 69 6E 78    ...mov.e,m...inx
001980:  09 68 0D 0A 09 6D 6F 76 09 64 2C 6D 0D 0A 09 72    .h...mov.d,m...r
001990:  65 74 0D 0A 40 69 6E 63 64 65 63 31 3A 0D 0A 09    et..@incdec1:...
0019A0:  6D 6F 76 09 65 2C 6D 0D 0A 09 6D 6F 76 09 61 2C    mov.e,m...mov.a,
0019B0:  65 0D 0A 09 72 6C 63 0D 0A 09 73 62 62 09 61 0D    e...rlc...sbb.a.
0019C0:  0A 09 6D 6F 76 09 64 2C 61 0D 0A 09 72 65 74 0D    ..mov.d,a...ret.
0019D0:  0A 3B 0D 0A 3B 09 61 64 64 20 76 61 6C 75 65 20    .;..;.add value 
0019E0:  69 6E 20 61 20 74 6F 20 64 65 20 61 6E 64 20 73    in a to de and s
0019F0:  61 76 65 20 61 74 20 61 64 64 72 65 73 73 20 69    ave at address i
001A00:  6E 20 68 6C 0D 0A 3B 0D 0A 40 69 6E 63 3A 0D 0A    n hl..;..@inc:..
001A10:  09 61 6E 69 09 30 37 66 68 0D 0A 09 61 64 64 09    .ani.07fh...add.
001A20:  65 0D 0A 09 6D 6F 76 09 65 2C 61 0D 0A 09 6D 6F    e...mov.e,a...mo
001A30:  76 09 61 2C 64 0D 0A 09 61 63 69 09 30 0D 0A 09    v.a,d...aci.0...
001A40:  6D 6F 76 09 64 2C 61 0D 0A 09 6A 6D 70 09 40 69    mov.d,a...jmp.@i
001A50:  6E 63 64 65 63 73 0D 0A 3B 0D 0A 3B 09 73 75 62    ncdecs..;..;.sub
001A60:  74 72 61 63 74 20 76 61 6C 75 65 20 69 6E 20 61    tract value in a
001A70:  20 74 6F 20 64 65 20 61 6E 64 20 73 61 76 65 20     to de and save 
001A80:  61 74 20 61 64 64 72 65 73 73 20 69 6E 20 68 6C    at address in hl
001A90:  0D 0A 3B 0D 0A 40 64 65 63 3A 0D 0A 09 61 6E 69    ..;..@dec:...ani
001AA0:  09 30 37 66 68 0D 0A 09 63 6D 61 0D 0A 09 69 6E    .07fh...cma...in
001AB0:  72 09 61 0D 0A 09 61 64 64 09 65 0D 0A 09 6D 6F    r.a...add.e...mo
001AC0:  76 09 65 2C 61 0D 0A 09 6D 6F 76 09 61 2C 64 0D    v.e,a...mov.a,d.
001AD0:  0A 09 61 63 69 09 30 66 66 68 0D 0A 09 6D 6F 76    ..aci.0ffh...mov
001AE0:  09 64 2C 61 0D 0A 09 6A 6D 70 09 40 69 6E 63 64    .d,a...jmp.@incd
001AF0:  65 63 73 20 0D 0A 3B 0D 0A 3B 09 73 74 6F 72 65    ecs ..;..;.store
001B00:  65 72 20 74 68 61 6E 20 6F 72 20 65 71 75 61 6C    er than or equal
001B10:  20 74 6F 20 68 6C 20 28 75 6E 73 69 67 6E 65 64     to hl (unsigned
001B20:  29 0D 0A 3B 0D 0A 40 75 67 65 3A 0D 0A 09 70 6F    )..;..@uge:...po
001B30:  70 09 62 0D 0A 09 70 6F 70 09 64 0D 0A 09 70 75    p.b...pop.d...pu
001B40:  73 68 09 62 0D 0A 09 6C 78 69 09 62 2C 40 63 6F    sh.b...lxi.b,@co
001B50:  6D 70 72 65 74 0D 0A 09 70 75 73 68 09 62 0D 0A    mpret...push.b..
001B60:  09 63 61 6C 6C 09 40 75 63 6D 70 0D 0A 09 72 6E    .call.@ucmp...rn
001B70:  63 0D 0A 09 64 63 78 09 68 0D 0A 09 72 65 74 0D    c...dcx.h...ret.
001B80:  0A 3B 0D 0A 3B 09 74 65 73 74 20 69 66 20 64 65    .;..;.test if de
001B90:  20 6C 65 73 73 20 74 68 61 6E 20 6F 72 20 65 71     less than or eq
001BA0:  75 61 6C 20 74 6F 20 68 6C 20 28 75 6E 73 69 67    ual to hl (unsig
001BB0:  6E 65 64 29 0D 0A 3B 0D 0A 40 75 6C 65 3A 0D 0A    ned)..;..@ule:..
001BC0:  09 70 6F 70 09 62 0D 0A 09 70 6F 70 09 64 0D 0A    .pop.b...pop.d..
001BD0:  09 70 75 73 68 09 62 0D 0A 09 6C 78 69 09 62 2C    .push.b...lxi.b,
001BE0:  40 63 6F 6D 70 72 65 74 0D 0A 09 70 75 73 68 09    @compret...push.
001BF0:  62 0D 0A 09 63 61 6C 6C 09 40 75 63 6D 70 0D 0A    b...call.@ucmp..
001C00:  09 72 7A 0D 0A 09 72 63 0D 0A 09 64 63 78 09 68    .rz...rc...dcx.h
001C10:  0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 63 6F 6D    ...ret..;..;.com
001C20:  6D 6F 6E 20 72 6F 75 74 69 6E 65 20 74 6F 20 70    mon routine to p
001C30:  72 65 66 6F 72 6D 20 61 20 73 69 67 6E 65 64 20    reform a signed 
001C40:  63 6F 6D 70 61 72 65 20 6F 66 0D 0A 3B 09 64 65    compare of..;.de
001C50:  20 61 6E 64 20 68 6C 20 0D 0A 3B 0D 0A 3B 09 64     and hl ..;..;.d
001C60:  65 2D 68 6C 20 61 6E 64 20 73 65 74 73 20 74 68    e-hl and sets th
001C70:  65 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 3B    e conditions:..;
001C80:  09 09 63 61 72 72 79 20 73 65 74 20 6D 65 61 6E    ..carry set mean
001C90:  73 20 64 65 20 3C 20 68 6C 0D 0A 3B 09 09 7A 65    s de < hl..;..ze
001CA0:  72 6F 2F 6E 6F 6E 2D 7A 65 72 6F 20 73 65 74 20    ro/non-zero set 
001CB0:  61 63 63 6F 72 64 69 6E 67 20 74 6F 20 65 71 75    according to equ
001CC0:  61 6C 69 74 79 0D 0A 3B 0D 0A 40 63 6D 70 3A 0D    ality..;..@cmp:.
001CD0:  0A 09 6D 6F 76 09 61 2C 65 0D 0A 09 73 75 62 09    ..mov.a,e...sub.
001CE0:  6C 0D 0A 09 6D 6F 76 09 65 2C 61 0D 0A 09 6D 6F    l...mov.e,a...mo
001CF0:  76 09 61 2C 64 0D 0A 09 73 62 62 09 68 0D 0A 09    v.a,d...sbb.h...
001D00:  20 76 61 6C 75 65 20 69 6E 20 64 65 20 61 74 20     value in de at 
001D10:  61 64 64 72 65 73 73 20 69 6E 20 68 6C 0D 0A 3B    address in hl..;
001D20:  0D 0A 40 69 6E 63 64 65 63 73 3A 0D 0A 09 6C 64    ..@incdecs:...ld
001D30:  61 78 09 62 0D 0A 09 6F 72 61 09 61 0D 0A 09 6A    ax.b...ora.a...j
001D40:  70 09 40 69 6E 63 64 65 63 32 0D 0A 09 6D 6F 76    p.@incdec2...mov
001D50:  09 6D 2C 64 0D 0A 09 64 63 78 09 68 0D 0A 09 6D    .m,d...dcx.h...m
001D60:  6F 76 09 6D 2C 65 0D 0A 09 78 63 68 67 0D 0A 09    ov.m,e...xchg...
001D70:  6D 6F 76 09 61 2C 68 0D 0A 09 6F 72 61 09 6C 0D    mov.a,h...ora.l.
001D80:  0A 09 72 65 74 0D 0A 40 69 6E 63 64 65 63 32 3A    ..ret..@incdec2:
001D90:  0D 0A 09 6D 6F 76 09 6D 2C 65 0D 0A 09 78 63 68    ...mov.m,e...xch
001DA0:  67 0D 0A 09 6D 6F 76 09 61 2C 68 0D 0A 09 6F 72    g...mov.a,h...or
001DB0:  61 09 6C 0D 0A 09 72 65 74 09 0D 0A 09 70 61 67    a.l...ret....pag
001DC0:  65 0D 0A 3B 0D 0A 3B 09 69 6E 63 6C 75 73 69 76    e..;..;.inclusiv
001DD0:  65 20 22 6F 72 22 20 68 6C 20 61 6E 64 20 64 65    e "or" hl and de
001DE0:  20 69 6E 74 6F 20 68 6C 0D 0A 3B 0D 0A 40 6F 72     into hl..;..@or
001DF0:  3A 09 63 73 65 63 74 0D 0A 09 70 6F 70 09 62 0D    :.csect...pop.b.
001E00:  0A 09 70 6F 70 09 64 0D 0A 09 70 75 73 68 09 62    ..pop.d...push.b
001E10:  0D 0A 09 6D 6F 76 09 61 2C 6C 0D 0A 09 6F 72 61    ...mov.a,l...ora
001E20:  09 65 0D 0A 09 6D 6F 76 09 6C 2C 61 0D 0A 09 6D    .e...mov.l,a...m
001E30:  6F 76 09 61 2C 68 0D 0A 09 6F 72 61 09 64 0D 0A    ov.a,h...ora.d..
001E40:  09 6D 6F 76 09 68 2C 61 0D 0A 09 6F 72 61 09 6C    .mov.h,a...ora.l
001E50:  0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 65 78 63    ...ret..;..;.exc
001E60:  6C 75 73 65 69 76 65 20 22 6F 72 22 20 68 6C 20    luseive "or" hl 
001E70:  61 6E 64 20 64 65 20 69 6E 74 6F 20 68 6C 0D 0A    and de into hl..
001E80:  3B 0D 0A 40 78 6F 72 3A 09 63 73 65 63 74 0D 0A    ;..@xor:.csect..
001E90:  09 70 6F 70 09 62 0D 0A 09 70 6F 70 09 64 0D 0A    .pop.b...pop.d..
001EA0:  09 70 75 73 68 09 62 0D 0A 09 6D 6F 76 09 61 2C    .push.b...mov.a,
001EB0:  6C 0D 0A 09 78 72 61 09 65 0D 0A 09 6D 6F 76 09    l...xra.e...mov.
001EC0:  6C 2C 61 0D 0A 09 6D 6F 76 09 61 2C 68 0D 0A 09    l,a...mov.a,h...
001ED0:  78 72 61 09 64 0D 0A 09 6D 6F 76 09 68 2C 61 0D    xra.d...mov.h,a.
001EE0:  0A 09 6F 72 61 09 6C 0D 0A 09 72 65 74 0D 0A 3B    ..ora.l...ret..;
001EF0:  0D 0A 3B 09 22 61 6E 64 22 20 68 6C 20 61 6E 64    ..;."and" hl and
001F00:  6C 78 69 09 68 2C 31 0D 0A 09 6A 6D 09 40 63 6D    lxi.h,1...jm.@cm
001F10:  70 31 0D 0A 09 6F 72 61 09 65 0D 0A 09 72 65 74    p1...ora.e...ret
001F20:  0D 0A 40 63 6D 70 31 3A 0D 0A 09 6F 72 61 09 65    ..@cmp1:...ora.e
001F30:  0D 0A 09 73 74 63 0D 0A 09 72 65 74 0D 0A 3B 0D    ...stc...ret..;.
001F40:  0A 3B 09 63 6F 6D 6D 6F 6E 20 72 6F 75 74 69 6E    .;.common routin
001F50:  65 20 74 6F 20 70 65 72 66 6F 72 6D 20 75 6E 73    e to perform uns
001F60:  69 6E 67 65 64 20 63 6F 6D 70 61 72 65 0D 0A 3B    inged compare..;
001F70:  0D 0A 3B 09 63 61 72 72 79 20 73 65 74 20 69 66    ..;.carry set if
001F80:  20 64 65 20 6C 65 73 73 20 74 68 61 6E 20 68 6C     de less than hl
001F90:  0D 0A 3B 09 7A 65 72 6F 2F 6E 6F 6E 2D 7A 65 72    ..;.zero/non-zer
001FA0:  6F 20 73 65 74 20 61 63 63 6F 72 64 69 6E 67 6C    o set accordingl
001FB0:  79 20 68 6C 3D 64 65 0D 0A 3B 0D 0A 40 75 63 6D    y hl=de..;..@ucm
001FC0:  70 3A 0D 0A 09 6D 6F 76 09 61 2C 64 0D 0A 09 63    p:...mov.a,d...c
001FD0:  6D 70 09 68 0D 0A 09 6A 6E 7A 09 40 75 63 6D 70    mp.h...jnz.@ucmp
001FE0:  31 0D 0A 09 6D 6F 76 09 61 2C 65 0D 0A 09 63 6D    1...mov.a,e...cm
001FF0:  70 09 6C 0D 0A 40 75 63 6D 70 31 3A 0D 0A 09 6C    p.l..@ucmp1:...l
002000:  78 69 09 68 2C 31 0D 0A 09 72 65 74 0D 0A 3B 0D    xi.h,1...ret..;.
002010:  0A 3B 09 73 65 74 20 6D 61 63 68 69 6E 65 20 73    .;.set machine s
002020:  74 61 74 75 73 20 66 6F 72 20 61 6C 6C 20 63 6F    tatus for all co
002030:  6D 64 69 74 69 6F 6E 61 6C 20 6F 70 65 72 61 74    mditional operat
002040:  6F 72 73 0D 0A 3B 0D 0A 40 63 6F 6D 70 72 65 74    ors..;..@compret
002050:  3A 0D 0A 09 6D 6F 76 09 61 2C 68 0D 0A 09 6F 72    :...mov.a,h...or
002060:  61 09 6C 0D 0A 09 72 65 74 0D 0A 09 70 61 67 65    a.l...ret...page
002070:  0D 0A 3B 0D 0A 3B 09 73 68 69 66 74 20 64 65 20    ..;..;.shift de 
002080:  61 72 69 74 68 6D 65 74 69 63 61 6C 6C 79 20 72    arithmetically r
002090:  69 67 68 74 20 62 79 20 68 6C 20 72 65 74 75 72    ight by hl retur
0020A0:  6E 20 69 6E 20 68 6C 0D 0A 3B 0D 0A 40 61 73 72    n in hl..;..@asr
0020B0:  3A 09 63 73 65 63 74 0D 0A 09 70 6F 70 09 62 0D    :.csect...pop.b.
0020C0:  0A 09 70 6F 70 09 64 0D 0A 09 70 75 73 68 09 62    ..pop.d...push.b
0020D0:  0D 0A 40 61 73 72 31 3A 0D 0A 09 78 63 68 67 0D    ..@asr1:...xchg.
0020E0:  0A 09 6D 6F 76 09 61 2C 68 0D 0A 09 72 61 6C 0D    ..mov.a,h...ral.
0020F0:  0A 09 6D 6F 76 09 61 2C 68 0D 0A 09 72 61 72 0D    ..mov.a,h...rar.
002100:  20 64 65 20 69 6E 74 6F 20 68 6C 0D 0A 3B 0D 0A     de into hl..;..
002110:  40 61 6E 64 3A 09 63 73 65 63 74 0D 0A 09 70 6F    @and:.csect...po
002120:  70 09 62 0D 0A 09 70 6F 70 09 64 0D 0A 09 70 75    p.b...pop.d...pu
002130:  73 68 09 62 0D 0A 09 6D 6F 76 09 61 2C 6C 0D 0A    sh.b...mov.a,l..
002140:  09 61 6E 61 09 65 0D 0A 09 6D 6F 76 09 6C 2C 61    .ana.e...mov.l,a
002150:  0D 0A 09 6D 6F 76 09 61 2C 68 0D 0A 09 61 6E 61    ...mov.a,h...ana
002160:  09 64 0D 0A 09 6D 6F 76 09 68 2C 61 0D 0A 09 6F    .d...mov.h,a...o
002170:  72 61 09 6C 0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B    ra.l...ret..;..;
002180:  09 69 6E 20 61 6C 6C 20 74 68 65 20 66 6F 6C 6C    .in all the foll
002190:  6F 77 69 6E 67 20 63 6F 6D 70 61 72 65 20 72 6F    owing compare ro
0021A0:  75 74 69 6E 65 73 20 68 6C 20 69 73 20 73 65 74    utines hl is set
0021B0:  20 74 6F 20 31 20 0D 0A 3B 09 69 66 20 74 68 65     to 1 ..;.if the
0021C0:  20 63 6F 6E 64 69 74 69 6F 6E 20 69 73 20 74 72     condition is tr
0021D0:  75 65 2C 20 6F 74 68 65 72 77 69 73 65 20 69 74    ue, otherwise it
0021E0:  20 69 73 20 73 65 74 20 74 6F 20 30 20 0D 0A 3B     is set to 0 ..;
0021F0:  0D 0A 3B 09 6E 6F 74 20 63 75 72 72 65 6E 74 20    ..;.not current 
002200:  63 6F 6E 64 69 74 69 6F 6E 0D 0A 3B 0D 0A 40 6E    condition..;..@n
002210:  6C 6F 67 3A 09 63 73 65 63 74 0D 0A 09 6D 6F 76    log:.csect...mov
002220:  09 61 2C 68 0D 0A 09 6F 72 61 09 6C 0D 0A 09 6A    .a,h...ora.l...j
002230:  6E 7A 09 40 6E 6C 6F 67 31 0D 0A 09 6C 78 69 09    nz.@nlog1...lxi.
002240:  68 2C 31 0D 0A 09 6D 6F 76 09 61 2C 68 0D 0A 09    h,1...mov.a,h...
002250:  6F 72 61 09 6C 0D 0A 09 72 65 74 0D 0A 40 6E 6C    ora.l...ret..@nl
002260:  6F 67 31 3A 0D 0A 09 6C 78 69 09 68 2C 30 0D 0A    og1:...lxi.h,0..
002270:  09 6D 6F 76 09 61 2C 68 0D 0A 09 6F 72 61 09 6C    .mov.a,h...ora.l
002280:  0D 0A 09 72 65 74 0D 0A 09 70 61 67 65 0D 0A 40    ...ret...page..@
002290:  63 6F 6D 70 3A 09 63 73 65 63 74 0D 0A 3B 0D 0A    comp:.csect..;..
0022A0:  3B 09 74 65 73 74 20 69 66 20 68 6C 20 65 71 75    ;.test if hl equ
0022B0:  61 6C 20 74 6F 20 64 65 0D 0A 3B 0D 0A 40 65 71    al to de..;..@eq
0022C0:  3A 0D 0A 09 70 6F 70 09 62 0D 0A 09 70 6F 70 09    :...pop.b...pop.
0022D0:  64 0D 0A 09 70 75 73 68 09 62 0D 0A 09 6C 78 69    d...push.b...lxi
0022E0:  09 62 2C 40 63 6F 6D 70 72 65 74 0D 0A 09 70 75    .b,@compret...pu
0022F0:  73 68 09 62 0D 0A 09 63 61 6C 6C 09 40 63 6D 70    sh.b...call.@cmp
002300:  0A 09 6D 6F 76 09 68 2C 61 0D 0A 09 6D 6F 76 09    ..mov.h,a...mov.
002310:  61 2C 6C 0D 0A 09 72 61 72 0D 0A 09 6D 6F 76 09    a,l...rar...mov.
002320:  6C 2C 61 0D 0A 09 64 63 72 09 65 0D 0A 09 6A 6E    l,a...dcr.e...jn
002330:  7A 09 20 40 61 73 72 31 0D 0A 09 72 65 74 0D 0A    z. @asr1...ret..
002340:  3B 0D 0A 3B 09 73 68 69 66 74 20 64 65 20 61 72    ;..;.shift de ar
002350:  69 74 68 6D 65 74 69 63 61 6C 6C 79 20 6C 65 66    ithmetically lef
002360:  74 20 62 79 20 68 6C 20 61 6E 64 20 72 65 74 75    t by hl and retu
002370:  72 6E 20 69 6E 20 68 6C 0D 0A 3B 0D 0A 40 61 73    rn in hl..;..@as
002380:  6C 3A 09 63 73 65 63 74 0D 0A 09 70 6F 70 09 62    l:.csect...pop.b
002390:  0D 0A 09 70 6F 70 09 64 0D 0A 09 70 75 73 68 09    ...pop.d...push.
0023A0:  62 0D 0A 40 61 73 6C 31 3A 0D 0A 09 78 63 68 67    b..@asl1:...xchg
0023B0:  0D 0A 09 64 61 64 09 68 0D 0A 09 64 63 72 09 65    ...dad.h...dcr.e
0023C0:  0D 0A 09 6A 6E 7A 09 40 61 73 6C 31 0D 0A 09 72    ...jnz.@asl1...r
0023D0:  65 74 0D 0A 3B 0D 0A 3B 09 73 75 62 74 72 61 63    et..;..;.subtrac
0023E0:  74 20 68 6C 20 66 72 6F 6D 20 64 65 20 61 6E 64    t hl from de and
0023F0:  20 72 65 74 75 72 6E 20 69 6E 20 68 6C 0D 0A 3B     return in hl..;
002400:  0D 0A 40 73 75 62 3A 09 63 73 65 63 74 0D 0A 09    ..@sub:.csect...
002410:  70 6F 70 09 62 0D 0A 09 70 6F 70 09 64 0D 0A 09    pop.b...pop.d...
002420:  70 75 73 68 09 62 0D 0A 09 6D 6F 76 09 61 2C 65    push.b...mov.a,e
002430:  0D 0A 09 73 75 62 09 6C 0D 0A 09 6D 6F 76 09 6C    ...sub.l...mov.l
002440:  2C 61 0D 0A 09 6D 6F 76 09 61 2C 64 0D 0A 09 73    ,a...mov.a,d...s
002450:  62 62 09 68 0D 0A 09 6D 6F 76 09 68 2C 61 0D 0A    bb.h...mov.h,a..
002460:  09 72 65 74 0D 0A 3B 0D 0A 3B 09 66 72 6F 6D 20    .ret..;..;.from 
002470:  74 68 65 20 74 77 6F 27 73 20 63 6F 6D 70 6C 65    the two's comple
002480:  6D 65 6E 74 20 6F 66 20 68 6C 0D 0A 3B 09 0D 0A    ment of hl..;...
002490:  40 6E 65 67 3A 09 63 73 65 63 74 0D 0A 09 63 61    @neg:.csect...ca
0024A0:  6C 6C 09 40 63 6F 6D 0D 0A 09 69 6E 78 09 68 0D    ll.@com...inx.h.
0024B0:  0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 66 72 6F 6D    ..ret..;..;.from
0024C0:  20 74 68 65 20 6F 6E 65 27 73 20 63 6F 6D 70 6C     the one's compl
0024D0:  65 6D 65 6E 74 20 6F 66 20 68 6C 0D 0A 3B 0D 0A    ement of hl..;..
0024E0:  40 63 6F 6D 3A 09 63 73 65 63 74 0D 0A 09 6D 6F    @com:.csect...mo
0024F0:  76 09 61 2C 68 0D 0A 09 63 6D 61 0D 0A 09 6D 6F    v.a,h...cma...mo
002500:  0D 0A 09 72 7A 09 0D 0A 09 64 63 78 09 68 0D 0A    ...rz....dcx.h..
002510:  09 72 65 74 0D 0A 3B 0D 0A 3B 09 74 65 73 74 20    .ret..;..;.test 
002520:  69 66 20 64 65 20 74 6F 20 68 6C 20 66 6F 72 20    if de to hl for 
002530:  6E 6F 74 20 65 71 75 61 6C 0D 0A 3B 0D 0A 40 6E    not equal..;..@n
002540:  65 3A 0D 0A 09 70 6F 70 09 62 0D 0A 09 70 6F 70    e:...pop.b...pop
002550:  09 64 0D 0A 09 70 75 73 68 09 62 0D 0A 09 6C 78    .d...push.b...lx
002560:  69 09 62 2C 40 63 6F 6D 70 72 65 74 0D 0A 09 70    i.b,@compret...p
002570:  75 73 68 09 62 0D 0A 09 63 61 6C 6C 09 40 63 6D    ush.b...call.@cm
002580:  70 0D 0A 09 72 6E 7A 0D 0A 09 64 63 78 09 68 0D    p...rnz...dcx.h.
002590:  0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 74 65 73 74    ..ret..;..;.test
0025A0:  20 69 66 20 64 65 20 67 72 65 61 74 65 72 20 74     if de greater t
0025B0:  68 65 6E 20 68 6C 20 28 73 69 67 6E 65 64 29 0D    hen hl (signed).
0025C0:  0A 3B 0D 0A 40 67 74 3A 0D 0A 09 70 6F 70 09 62    .;..@gt:...pop.b
0025D0:  0D 0A 09 70 6F 70 09 64 0D 0A 09 70 75 73 68 09    ...pop.d...push.
0025E0:  62 0D 0A 09 6C 78 69 09 62 2C 40 63 6F 6D 70 72    b...lxi.b,@compr
0025F0:  65 74 0D 0A 09 70 75 73 68 09 62 0D 0A 09 78 63    et...push.b...xc
002600:  68 67 0D 0A 09 63 61 6C 6C 09 40 63 6D 70 0D 0A    hg...call.@cmp..
002610:  09 72 63 0D 0A 09 64 63 78 09 68 0D 0A 09 72 65    .rc...dcx.h...re
002620:  74 0D 0A 3B 0D 0A 3B 09 74 65 73 74 20 69 66 20    t..;..;.test if 
002630:  64 65 20 6C 65 73 73 20 74 68 65 6E 20 68 6C 20    de less then hl 
002640:  28 73 69 67 6E 65 64 29 0D 0A 3B 0D 0A 40 6C 74    (signed)..;..@lt
002650:  3A 0D 0A 09 70 6F 70 09 62 0D 0A 09 70 6F 70 09    :...pop.b...pop.
002660:  64 0D 0A 09 70 75 73 68 09 62 0D 0A 09 6C 78 69    d...push.b...lxi
002670:  09 62 2C 40 63 6F 6D 70 72 65 74 0D 0A 09 70 75    .b,@compret...pu
002680:  73 68 09 62 0D 0A 09 63 61 6C 6C 09 40 63 6D 70    sh.b...call.@cmp
002690:  0D 0A 09 72 63 0D 0A 09 64 63 78 09 68 0D 0A 09    ...rc...dcx.h...
0026A0:  72 65 74 0D 0A 3B 0D 0A 3B 09 74 65 73 74 20 69    ret..;..;.test i
0026B0:  66 20 64 65 20 67 72 65 61 74 65 72 20 74 68 65    f de greater the
0026C0:  6E 20 6F 72 20 65 71 75 61 6C 20 74 6F 20 68 6C    n or equal to hl
0026D0:  20 28 73 69 67 6E 65 64 29 0D 0A 3B 0D 0A 40 67     (signed)..;..@g
0026E0:  65 3A 0D 0A 09 70 6F 70 09 62 0D 0A 09 70 6F 70    e:...pop.b...pop
0026F0:  09 64 0D 0A 09 70 75 73 68 09 62 0D 0A 09 6C 78    .d...push.b...lx
002700:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
002710:  02 00 01 00 02 09 52 E5 02 00 C1 02 00 00 00 02    ......R.........
002720:  02 00 C6 02 00 00 00 02 02 00 C2 02 00 00 00 02    ................
002730:  02 00 C7 02 00 00 00 02 02 00 C3 02 00 00 00 02    ................
002740:  02 00 C8 02 00 00 00 02 02 00 C4 02 00 00 00 02    ................
002750:  02 00 C9 02 00 00 00 02 02 00 C5 02 00 00 00 02    ................
002760:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
002770:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
002780:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
002790:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0027A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0027B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0027C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0027D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0027E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0027F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
002800:  76 09 68 2C 61 0D 0A 09 6D 6F 76 09 61 2C 6C 0D    v.h,a...mov.a,l.
002810:  0A 09 63 6D 61 0D 0A 09 6D 6F 76 09 6C 2C 61 0D    ..cma...mov.l,a.
002820:  0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 6D 75 74 69    ..ret..;..;.muti
002830:  70 6C 79 20 64 65 20 62 79 20 68 6C 20 61 6E 64    ply de by hl and
002840:  20 72 65 74 75 72 6E 20 69 6E 20 68 6C 20 28 73     return in hl (s
002850:  69 67 6E 65 64 29 0D 0A 3B 0D 0A 40 6D 75 6C 74    igned)..;..@mult
002860:  3A 20 20 63 73 65 63 74 0D 0A 09 70 6F 70 09 62    :  csect...pop.b
002870:  0D 0A 09 70 6F 70 09 64 0D 0A 09 70 75 73 68 09    ...pop.d...push.
002880:  62 0D 0A 09 6D 6F 76 09 62 2C 68 0D 0A 09 6D 6F    b...mov.b,h...mo
002890:  76 09 63 2C 6C 0D 0A 09 6C 78 69 09 68 2C 30 0D    v.c,l...lxi.h,0.
0028A0:  0A 40 6D 75 6C 74 31 3A 0D 0A 09 6D 6F 76 09 61    .@mult1:...mov.a
0028B0:  2C 63 0D 0A 09 72 72 63 0D 0A 09 6A 6E 63 09 40    ,c...rrc...jnc.@
0028C0:  6D 75 6C 74 32 0D 0A 09 64 61 64 09 64 0D 0A 40    mult2...dad.d..@
0028D0:  6D 75 6C 74 32 3A 0D 0A 09 78 72 61 09 61 0D 0A    mult2:...xra.a..
0028E0:  09 6D 6F 76 09 61 2C 62 0D 0A 09 72 61 72 0D 0A    .mov.a,b...rar..
0028F0:  20 09 6D 6F 76 09 62 2C 61 0D 0A 09 6D 6F 76 09     .mov.b,a...mov.
002900:  61 2C 63 0D 0A 09 72 61 72 0D 0A 09 6D 6F 76 09    a,c...rar...mov.
002910:  63 2C 61 0D 0A 09 6F 72 61 09 62 0D 0A 09 72 7A    c,a...ora.b...rz
002920:  0D 0A 09 78 72 61 09 61 0D 0A 09 6D 6F 76 09 61    ...xra.a...mov.a
002930:  2C 65 0D 0A 09 72 61 6C 0D 0A 09 6D 6F 76 09 65    ,e...ral...mov.e
002940:  2C 61 0D 0A 09 6D 6F 76 09 61 2C 64 0D 0A 09 72    ,a...mov.a,d...r
002950:  61 6C 0D 0A 09 6D 6F 76 09 64 2C 61 0D 0A 09 6F    al...mov.d,a...o
002960:  72 61 09 65 0D 0A 09 72 7A 0D 0A 09 6A 6D 70 09    ra.e...rz...jmp.
002970:  40 6D 75 6C 74 31 0D 0A 3B 0D 0A 3B 09 64 69 76    @mult1..;..;.div
002980:  69 64 65 20 64 65 20 62 79 20 68 6C 20 61 6E 64    ide de by hl and
002990:  20 72 65 74 75 72 6E 20 71 75 6F 74 69 65 6E 74     return quotient
0029A0:  20 69 6E 20 68 6C 0D 0A 3B 09 20 72 65 74 75 72     in hl..;. retur
0029B0:  6E 20 72 65 6D 61 69 6E 64 65 72 20 69 6E 20 64    n remainder in d
0029C0:  65 20 28 73 69 67 6E 65 64 29 0D 0A 3B 0D 0A 40    e (signed)..;..@
0029D0:  64 69 76 3A 09 63 73 65 63 74 0D 0A 09 70 6F 70    div:.csect...pop
0029E0:  09 62 0D 0A 09 70 6F 70 09 64 0D 0A 09 70 75 73    .b...pop.d...pus
0029F0:  68 09 62 0D 0A 09 6D 6F 76 09 62 2C 68 0D 0A 09    h.b...mov.b,h...
002A00:  0A 3B 09 63 61 6C 6C 20 62 6F 64 73 20 74 6F 20    .;.call bods to 
002A10:  64 6F 20 61 20 63 70 6D 20 66 75 6E 63 74 69 6F    do a cpm functio
002A20:  6E 20 62 6F 64 73 28 63 2C 64 65 29 0D 0A 3B 0D    n bods(c,de)..;.
002A30:  0A 62 64 6F 73 3A 09 63 73 65 63 74 0D 0A 09 70    .bdos:.csect...p
002A40:  6F 70 09 68 0D 0A 09 70 6F 70 09 64 0D 0A 09 70    op.h...pop.d...p
002A50:  6F 70 09 62 0D 0A 09 70 75 73 68 09 62 0D 0A 09    op.b...push.b...
002A60:  70 75 73 68 09 64 0D 0A 09 70 75 73 68 09 68 0D    push.d...push.h.
002A70:  0A 09 6A 6D 70 09 35 0D 0A 3B 0D 0A 3B 09 65 78    ..jmp.5..;..;.ex
002A80:  69 74 20 62 61 63 6B 20 74 6F 20 73 79 73 74 65    it back to syste
002A90:  6D 0D 0A 3B 0D 0A 65 78 69 74 3A 09 63 73 65 63    m..;..exit:.csec
002AA0:  74 0D 0A 09 6D 76 69 09 63 2C 30 0D 0A 09 63 61    t...mvi.c,0...ca
002AB0:  6C 6C 09 35 0D 0A 3B 0D 0A 3B 09 74 61 6B 65 20    ll.5..;..;.take 
002AC0:  63 6F 6D 6D 61 6E 64 20 62 75 66 66 65 72 20 61    command buffer a
002AD0:  6E 64 20 62 75 69 6C 64 20 70 6F 69 6E 74 65 72    nd build pointer
002AE0:  20 6C 69 73 74 0D 0A 0D 0A 40 69 6E 69 74 3A 09     list....@init:.
002AF0:  63 73 65 63 74 0D 0A 09 6C 68 6C 64 09 36 2B 72    csect...lhld.6+r
002B00:  61 6D 09 09 09 3B 67 65 74 20 70 6F 69 6E 74 65    am...;get pointe
002B10:  72 20 74 6F 20 68 69 67 68 20 6D 65 6D 6F 72 79    r to high memory
002B20:  0D 0A 09 64 63 78 09 68 09 09 09 3B 6D 6F 76 65    ...dcx.h...;move
002B30:  20 74 6F 20 6A 75 73 74 20 62 65 6C 6F 77 20 62     to just below b
002B40:  64 6F 73 0D 0A 09 73 70 68 6C 09 09 09 09 3B 6D    dos...sphl....;m
002B50:  61 6B 65 20 69 74 20 63 75 72 72 65 6E 74 20 73    ake it current s
002B60:  74 61 63 6B 0D 0A 09 6C 78 69 09 68 2C 38 30 68    tack...lxi.h,80h
002B70:  2B 72 61 6D 09 09 3B 70 6F 69 6E 74 65 72 20 74    +ram..;pointer t
002B80:  6F 20 73 74 61 72 74 20 6F 66 20 63 6F 6D 6D 61    o start of comma
002B90:  6E 64 20 62 75 66 66 65 72 0D 0A 09 6D 6F 76 09    nd buffer...mov.
002BA0:  65 2C 6D 09 09 09 3B 6E 75 6D 62 65 72 20 6F 66    e,m...;number of
002BB0:  20 62 79 74 65 73 20 69 6E 20 63 6F 6D 6D 61 6E     bytes in comman
002BC0:  64 20 6C 69 6E 65 0D 0A 09 6D 76 69 09 64 2C 30    d line...mvi.d,0
002BD0:  09 09 09 3B 6D 61 6B 65 20 69 74 20 31 36 20 62    ...;make it 16 b
002BE0:  69 74 20 76 61 6C 75 65 0D 0A 09 64 61 64 09 64    it value...dad.d
002BF0:  09 09 09 3B 70 6F 69 6E 74 20 74 6F 20 65 6E 64    ...;point to end
002C00:  6D 6F 76 09 63 2C 6C 0D 0A 09 6D 6F 76 09 61 2C    mov.c,l...mov.a,
002C10:  64 0D 0A 09 78 72 61 09 62 0D 0A 09 70 75 73 68    d...xra.b...push
002C20:  09 70 73 77 0D 0A 09 6D 6F 76 09 61 2C 64 0D 0A    .psw...mov.a,d..
002C30:  09 6F 72 61 09 61 0D 0A 09 63 6D 09 40 64 65 6E    .ora.a...cm.@den
002C40:  65 67 0D 0A 09 6D 6F 76 09 61 2C 62 0D 0A 09 6F    eg...mov.a,b...o
002C50:  72 61 09 61 0D 0A 09 63 6D 09 40 62 63 6E 65 67    ra.a...cm.@bcneg
002C60:  0D 0A 09 6D 76 69 09 61 2C 31 36 0D 0A 09 70 75    ...mvi.a,16...pu
002C70:  73 68 09 70 73 77 0D 0A 09 78 63 68 67 0D 0A 09    sh.psw...xchg...
002C80:  6C 78 69 09 64 2C 30 0D 0A 40 64 69 76 31 3A 0D    lxi.d,0..@div1:.
002C90:  0A 09 64 61 64 09 68 0D 0A 09 63 61 6C 6C 09 40    ..dad.h...call.@
002CA0:  72 64 65 6C 0D 0A 09 6A 7A 09 40 64 69 76 32 0D    rdel...jz.@div2.
002CB0:  0A 09 63 61 6C 6C 09 40 63 6D 70 62 63 64 65 0D    ..call.@cmpbcde.
002CC0:  0A 09 6A 6D 09 40 64 69 76 32 0D 0A 09 6D 6F 76    ..jm.@div2...mov
002CD0:  09 61 2C 6C 0D 0A 09 6F 72 69 09 31 0D 0A 09 6D    .a,l...ori.1...m
002CE0:  6F 76 09 6C 2C 61 0D 0A 09 6D 6F 76 09 61 2C 65    ov.l,a...mov.a,e
002CF0:  0D 0A 09 73 75 62 09 63 0D 0A 09 6D 6F 76 09 65    ...sub.c...mov.e
002D00:  2C 61 0D 0A 09 6D 6F 76 09 61 2C 64 0D 0A 09 73    ,a...mov.a,d...s
002D10:  62 62 09 62 0D 0A 09 6D 6F 76 09 64 2C 61 0D 0A    bb.b...mov.d,a..
002D20:  40 64 69 76 32 3A 0D 0A 09 70 6F 70 09 70 73 77    @div2:...pop.psw
002D30:  0D 0A 09 64 63 72 09 61 0D 0A 09 6A 7A 09 40 64    ...dcr.a...jz.@d
002D40:  69 76 33 0D 0A 09 70 75 73 68 09 70 73 77 0D 0A    iv3...push.psw..
002D50:  09 6A 6D 70 09 40 64 69 76 31 0D 0A 40 64 69 76    .jmp.@div1..@div
002D60:  33 3A 0D 0A 09 70 6F 70 09 70 73 77 0D 0A 09 72    3:...pop.psw...r
002D70:  70 0D 0A 09 63 61 6C 6C 09 40 64 65 6E 65 67 0D    p...call.@deneg.
002D80:  0A 09 78 63 68 67 0D 0A 09 63 61 6C 6C 09 40 64    ..xchg...call.@d
002D90:  65 6E 65 67 0D 0A 09 78 63 68 67 0D 0A 09 72 65    eneg...xchg...re
002DA0:  74 0D 0A 3B 0D 0A 3B 09 6E 65 67 61 74 65 20 74    t..;..;.negate t
002DB0:  68 65 20 69 6E 74 65 67 65 72 20 69 6E 20 62 63    he integer in bc
002DC0:  20 28 75 73 65 64 20 62 79 20 64 69 76 69 64 65     (used by divide
002DD0:  20 6F 6E 6C 79 29 0D 0A 3B 0D 0A 40 64 65 6E 65     only)..;..@dene
002DE0:  67 3A 0D 0A 09 6D 6F 76 09 61 2C 64 0D 0A 09 63    g:...mov.a,d...c
002DF0:  6D 61 0D 0A 09 6D 6F 76 09 64 2C 61 0D 0A 09 6D    ma...mov.d,a...m
002E00:  20 6F 66 20 74 65 78 74 0D 0A 09 69 6E 78 09 68     of text...inx.h
002E10:  09 09 09 3B 6D 6F 76 65 20 70 61 73 74 20 65 6E    ...;move past en
002E20:  64 20 6F 66 20 62 75 66 66 65 72 0D 0A 09 6D 76    d of buffer...mv
002E30:  69 09 6D 2C 30 09 09 09 3B 6D 61 6B 65 20 65 6E    i.m,0...;make en
002E40:  64 20 6F 66 20 74 65 78 74 0D 0A 09 6C 78 69 09    d of text...lxi.
002E50:  64 2C 63 70 6F 69 6E 74 65 72 09 09 3B 70 6C 61    d,cpointer..;pla
002E60:  63 65 20 77 68 65 72 65 20 70 6F 69 6E 74 65 72    ce where pointer
002E70:  20 73 68 6F 75 6C 64 20 70 6C 61 63 65 0D 0A 09     should place...
002E80:  6C 78 69 09 68 2C 38 30 68 2B 72 61 6D 09 09 3B    lxi.h,80h+ram..;
002E90:  61 64 64 72 65 73 73 20 6F 66 20 74 65 78 74 20    address of text 
002EA0:  73 74 72 69 6E 67 0D 0A 09 6C 78 69 09 62 2C 31    string...lxi.b,1
002EB0:  09 09 09 3B 6E 75 6D 62 65 72 20 6F 66 20 61 72    ...;number of ar
002EC0:  67 0D 0A 40 69 6E 69 74 32 3A 0D 0A 09 69 6E 78    g..@init2:...inx
002ED0:  09 68 09 09 09 3B 6D 6F 76 65 20 70 6F 69 6E 74    .h...;move point
002EE0:  65 72 20 74 6F 20 6E 65 78 74 20 62 79 74 65 0D    er to next byte.
002EF0:  0A 09 6D 6F 76 09 61 2C 6D 09 09 09 3B 63 68 65    ..mov.a,m...;che
002F00:  63 6B 20 66 6F 72 20 65 6E 64 20 6F 66 20 62 75    ck for end of bu
002F10:  66 66 65 72 0D 0A 09 6F 72 61 09 61 09 09 09 3B    ffer...ora.a...;
002F20:  73 65 74 20 6D 61 63 68 69 6E 65 20 73 74 61 74    set machine stat
002F30:  75 73 0D 0A 09 6A 7A 09 40 69 6E 69 74 31 30 09    us...jz.@init10.
002F40:  09 09 3B 79 65 73 20 63 61 6C 6C 20 6D 61 69 6E    ..;yes call main
002F50:  20 6C 69 6E 65 0D 0A 09 63 70 69 09 27 20 27 09     line...cpi.' '.
002F60:  09 09 3B 69 73 20 74 68 65 72 65 20 61 20 6C 65    ..;is there a le
002F70:  61 64 69 6E 67 20 73 70 61 63 65 0D 0A 09 6A 7A    ading space...jz
002F80:  09 40 69 6E 69 74 32 09 09 09 3B 79 65 73 0D 0A    .@init2...;yes..
002F90:  09 6D 6F 76 09 61 2C 6C 09 09 09 3B 73 61 76 65    .mov.a,l...;save
002FA0:  20 70 6F 69 6E 74 65 72 20 76 61 6C 75 65 0D 0A     pointer value..
002FB0:  09 73 74 61 78 09 64 0D 0A 09 6D 6F 76 09 61 2C    .stax.d...mov.a,
002FC0:  68 0D 0A 09 69 6E 78 09 64 0D 0A 09 73 74 61 78    h...inx.d...stax
002FD0:  09 64 0D 0A 09 69 6E 78 09 64 09 09 09 0D 0A 09    .d...inx.d......
002FE0:  69 6E 72 09 63 09 09 09 3B 61 64 64 20 31 20 74    inr.c...;add 1 t
002FF0:  6F 20 61 72 67 20 63 6F 75 6E 74 0D 0A 40 69 6E    o arg count..@in
003000:  6F 76 09 61 2C 65 0D 0A 09 63 6D 61 0D 0A 09 6D    ov.a,e...cma...m
003010:  6F 76 09 65 2C 61 0D 0A 09 69 6E 78 09 64 0D 0A    ov.e,a...inx.d..
003020:  09 72 65 74 0D 0A 3B 0D 0A 3B 09 6E 65 67 61 74    .ret..;..;.negat
003030:  65 20 74 68 65 6E 20 69 6E 74 65 67 65 72 20 69    e then integer i
003040:  6E 20 62 63 20 28 75 73 65 64 20 62 79 20 64 69    n bc (used by di
003050:  76 69 64 65 20 6F 6E 6C 79 29 0D 0A 3B 0D 0A 40    vide only)..;..@
003060:  62 63 6E 65 67 3A 0D 0A 09 6D 6F 76 09 61 2C 62    bcneg:...mov.a,b
003070:  0D 0A 09 63 6D 61 0D 0A 09 6D 6F 76 09 62 2C 61    ...cma...mov.b,a
003080:  0D 0A 09 6D 6F 76 09 61 2C 63 0D 0A 09 63 6D 61    ...mov.a,c...cma
003090:  0D 0A 09 6D 6F 76 09 63 2C 61 0D 0A 09 69 6E 78    ...mov.c,a...inx
0030A0:  09 62 0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 72    .b...ret..;..;.r
0030B0:  6F 61 74 65 20 64 65 20 6C 65 66 74 20 6F 6E 65    oate de left one
0030C0:  20 62 69 74 20 28 75 73 65 64 20 62 79 20 64 69     bit (used by di
0030D0:  76 69 64 65 20 6F 6E 6C 79 29 0D 0A 3B 0D 0A 40    vide only)..;..@
0030E0:  72 64 65 6C 3A 0D 0A 09 6D 6F 76 09 61 2C 65 0D    rdel:...mov.a,e.
0030F0:  0A 09 72 61 6C 0D 0A 09 6D 6F 76 09 65 2C 61 0D    ..ral...mov.e,a.
003100:  0A 09 6D 6F 76 09 61 2C 64 0D 0A 09 72 61 6C 0D    ..mov.a,d...ral.
003110:  0A 09 6D 6F 76 09 64 2C 61 0D 0A 09 6F 72 61 09    ..mov.d,a...ora.
003120:  65 0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 63 6F    e...ret..;..;.co
003130:  6D 70 61 72 65 20 62 63 20 74 6F 20 64 65 20 28    mpare bc to de (
003140:  75 73 65 64 20 62 79 20 64 69 76 69 64 65 20 6F    used by divide o
003150:  6E 6C 79 29 0D 0A 3B 0D 0A 40 63 6D 70 62 63 64    nly)..;..@cmpbcd
003160:  65 3A 20 0D 0A 09 6D 6F 76 09 61 2C 65 0D 0A 09    e: ...mov.a,e...
003170:  73 75 62 09 63 0D 0A 09 6D 6F 76 09 61 2C 64 0D    sub.c...mov.a,d.
003180:  0A 09 73 62 62 09 62 0D 0A 09 72 65 74 0D 0A 3B    ..sbb.b...ret..;
003190:  0D 0A 3B 09 75 73 65 64 20 62 79 20 73 77 69 74    ..;.used by swit
0031A0:  63 68 20 74 6F 20 73 65 61 72 63 68 20 74 61 62    ch to search tab
0031B0:  6C 65 0D 0A 3B 09 63 61 6C 6C 69 6E 67 20 66 6F    le..;.calling fo
0031C0:  72 6D 61 74 20 66 6F 72 6D 20 63 6F 6D 70 69 6C    rmat form compil
0031D0:  65 72 0D 0A 3B 09 64 2D 70 6F 69 6E 74 65 72 20    er..;.d-pointer 
0031E0:  74 6F 20 74 61 62 6C 65 0D 0A 3B 09 68 2D 77 68    to table..;.h-wh
0031F0:  65 72 65 20 74 6F 20 67 6F 20 69 66 20 76 61 6C    ere to go if val
003200:  69 74 33 3A 0D 0A 09 69 6E 78 09 68 09 09 09 3B    it3:...inx.h...;
003210:  6D 6F 76 65 20 74 6F 20 6E 65 78 74 20 62 79 74    move to next byt
003220:  65 0D 0A 09 6D 6F 76 09 61 2C 6D 09 09 09 3B 67    e...mov.a,m...;g
003230:  65 74 20 62 79 74 65 20 69 6E 74 6F 20 61 0D 0A    et byte into a..
003240:  09 6F 72 61 09 61 09 09 09 3B 73 65 65 20 69 66    .ora.a...;see if
003250:  20 65 6E 64 20 6F 66 20 62 75 66 66 65 72 0D 0A     end of buffer..
003260:  09 6A 7A 09 40 69 6E 69 74 31 30 09 09 09 3B 79    .jz.@init10...;y
003270:  65 73 2E 2E 2E 0D 0A 09 63 70 69 09 27 20 27 09    es......cpi.' '.
003280:  09 09 3B 63 68 65 63 6B 20 66 6F 72 20 73 70 61    ..;check for spa
003290:  63 65 0D 0A 09 6A 6E 7A 09 40 69 6E 69 74 33 09    ce...jnz.@init3.
0032A0:  09 09 3B 6E 6F 20 6B 65 65 70 20 6C 6F 6F 6B 69    ..;no keep looki
0032B0:  6E 67 0D 0A 09 6D 76 69 09 6D 2C 30 09 09 09 3B    ng...mvi.m,0...;
0032C0:  6D 61 72 6B 20 61 73 20 65 6E 64 20 6F 66 20 70    mark as end of p
0032D0:  61 72 6D 0D 0A 09 6A 6D 70 09 40 69 6E 69 74 32    arm...jmp.@init2
0032E0:  09 09 09 3B 6C 6F 6F 70 20 66 6F 72 20 6E 65 78    ...;loop for nex
0032F0:  74 20 63 6F 6D 6D 61 6E 64 0D 0A 40 69 6E 69 74    t command..@init
003300:  31 30 3A 0D 0A 09 6C 78 69 09 68 2C 63 70 6F 69    10:...lxi.h,cpoi
003310:  6E 74 65 72 2D 32 09 09 3B 67 65 74 20 61 64 64    nter-2..;get add
003320:  72 65 73 73 20 6F 66 20 70 6F 69 6E 74 65 72 73    ress of pointers
003330:  0D 0A 09 70 75 73 68 09 62 09 09 09 3B 70 75 73    ...push.b...;pus
003340:  68 20 61 72 67 63 20 6F 6E 20 73 74 61 63 6B 0D    h argc on stack.
003350:  0A 09 70 75 73 68 09 68 09 09 09 3B 70 75 73 68    ..push.h...;push
003360:  20 61 72 67 76 20 6F 6E 20 73 74 61 63 6B 0D 0A     argv on stack..
003370:  09 63 61 6C 6C 09 6D 61 69 6E 09 09 09 3B 65 78    .call.main...;ex
003380:  65 63 75 74 65 20 6D 61 69 6E 20 6C 69 6E 65 0D    ecute main line.
003390:  0A 09 6A 6D 70 20 09 30 09 09 09 3B 69 74 20 6A    ..jmp .0...;it j
0033A0:  75 73 74 20 72 65 74 75 72 6E 20 66 72 6F 6D 20    ust return from 
0033B0:  6D 61 69 6E 20 65 78 69 74 20 74 6F 20 63 70 6D    main exit to cpm
0033C0:  0D 0A 09 64 77 09 40 63 63 6E 75 6C 6C 0D 0A 63    ...dw.@ccnull..c
0033D0:  70 6F 69 6E 74 65 72 3A 0D 0A 09 64 77 09 40 63    pointer:...dw.@c
0033E0:  63 6E 75 6C 6C 2C 40 63 63 6E 75 6C 6C 2C 40 63    cnull,@ccnull,@c
0033F0:  63 6E 75 6C 6C 2C 40 63 63 6E 75 6C 6C 2C 40 63    cnull,@ccnull,@c
003400:  75 65 20 6E 6F 74 20 69 6E 20 74 61 62 6C 65 0D    ue not in table.
003410:  0A 3B 09 62 2D 20 6E 75 6D 62 65 72 20 6F 66 20    .;.b- number of 
003420:  20 65 6E 74 72 79 20 69 6E 20 74 61 62 6C 65 0D     entry in table.
003430:  0A 3B 0D 0A 40 73 77 69 74 63 68 3A 63 73 65 63    .;..@switch:csec
003440:  74 0D 0A 09 78 74 68 6C 09 09 09 3B 67 65 74 20    t...xthl...;get 
003450:  76 61 6C 75 65 20 6F 66 20 65 78 70 72 65 73 73    value of express
003460:  74 69 6F 6E 20 74 6F 20 63 68 65 63 6B 0D 0A 09    tion to check...
003470:  78 63 68 67 09 09 09 3B 70 75 74 20 76 61 6C 75    xchg...;put valu
003480:  65 20 69 6E 20 64 65 0D 0A 40 73 77 69 74 63 68    e in de..@switch
003490:  31 3A 0D 0A 09 6D 6F 76 09 61 2C 65 0D 0A 09 63    1:...mov.a,e...c
0034A0:  6D 70 09 6D 09 09 3B 63 68 65 63 6B 20 74 6F 20    mp.m..;check to 
0034B0:  73 65 65 20 69 66 20 6C 6F 77 20 62 79 74 65 20    see if low byte 
0034C0:  6D 61 74 63 68 0D 0A 09 69 6E 78 09 68 09 09 3B    match...inx.h..;
0034D0:  6D 6F 76 65 20 70 6F 69 6E 74 65 72 20 74 6F 20    move pointer to 
0034E0:  6E 65 78 74 20 62 79 74 65 20 6F 66 20 64 61 74    next byte of dat
0034F0:  61 0D 0A 09 6A 6E 7A 09 40 73 77 69 74 63 68 32    a...jnz.@switch2
003500:  09 3B 6E 6F 20 6E 6F 76 20 74 6F 20 6E 65 78 74    .;no nov to next
003510:  20 65 6E 74 72 79 0D 0A 09 6D 6F 76 09 61 2C 64     entry...mov.a,d
003520:  09 09 3B 6D 6F 76 65 20 68 69 67 68 20 62 79 74    ..;move high byt
003530:  65 20 6F 66 20 64 61 74 61 0D 0A 09 63 6D 70 09    e of data...cmp.
003540:  6D 09 09 3B 63 68 65 63 6B 20 74 6F 20 73 65 65    m..;check to see
003550:  20 69 66 20 6D 61 74 63 68 0D 0A 09 6A 6E 7A 09     if match...jnz.
003560:  40 73 77 69 74 63 68 32 09 3B 79 65 73 20 6A 75    @switch2.;yes ju
003570:  6D 70 20 74 6F 20 61 64 64 72 65 73 73 0D 0A 09    mp to address...
003580:  69 6E 78 09 68 0D 0A 09 6D 6F 76 09 65 2C 6D 09    inx.h...mov.e,m.
003590:  09 3B 67 65 74 20 6C 6F 77 20 62 79 74 65 20 6F    .;get low byte o
0035A0:  66 20 61 64 64 72 65 73 73 0D 0A 09 69 6E 78 09    f address...inx.
0035B0:  68 0D 0A 09 6D 6F 76 09 64 2C 6D 09 09 3B 67 65    h...mov.d,m..;ge
0035C0:  74 20 68 69 67 68 20 62 79 74 65 20 6F 66 20 61    t high byte of a
0035D0:  64 64 72 65 73 73 0D 0A 09 78 63 68 67 09 09 09    ddress...xchg...
0035E0:  3B 70 75 74 20 61 64 64 72 65 73 73 20 69 6E 20    ;put address in 
0035F0:  68 6C 0D 0A 09 70 6F 70 09 62 09 09 3B 72 65 6D    hl...pop.b..;rem
003600:  63 6E 75 6C 6C 0D 0A 09 64 77 09 40 63 63 6E 75    cnull...dw.@ccnu
003610:  6C 6C 2C 40 63 63 6E 75 6C 6C 2C 40 63 63 6E 75    ll,@ccnull,@ccnu
003620:  6C 6C 2C 40 63 63 6E 75 6C 6C 2C 40 63 63 6E 75    ll,@ccnull,@ccnu
003630:  6C 6C 0D 0A 09 64 77 09 40 63 63 6E 75 6C 6C 2C    ll...dw.@ccnull,
003640:  40 63 63 6E 75 6C 6C 2C 40 63 63 6E 75 6C 6C 2C    @ccnull,@ccnull,
003650:  40 63 63 6E 75 6C 6C 2C 40 63 63 6E 75 6C 6C 0D    @ccnull,@ccnull.
003660:  0A 09 64 77 09 40 63 63 6E 75 6C 6C 2C 40 63 63    ..dw.@ccnull,@cc
003670:  6E 75 6C 6C 2C 40 63 63 6E 75 6C 6C 2C 40 63 63    null,@ccnull,@cc
003680:  6E 75 6C 6C 2C 40 63 63 6E 75 6C 6C 0D 0A 09 64    null,@ccnull...d
003690:  77 09 40 63 63 6E 75 6C 6C 2C 40 63 63 6E 75 6C    w.@ccnull,@ccnul
0036A0:  6C 2C 40 63 63 6E 75 6C 6C 2C 40 63 63 6E 75 6C    l,@ccnull,@ccnul
0036B0:  6C 2C 40 63 63 6E 75 6C 6C 0D 0A 40 63 63 6E 75    l,@ccnull..@ccnu
0036C0:  6C 6C 3A 0D 0A 09 64 62 09 27 6E 6F 6E 61 6D 65    ll:...db.'noname
0036D0:  27 2C 30 09 0D 0A 09 70 61 67 65 0D 0A 40 6F 65    ',0....page..@oe
0036E0:  71 09 65 71 75 09 40 65 71 2D 40 63 6F 6D 70 0D    q.equ.@eq-@comp.
0036F0:  0A 40 6F 6E 65 09 65 71 75 09 40 6E 65 2D 40 63    .@one.equ.@ne-@c
003700:  6F 6D 70 0D 0A 40 6F 67 74 09 65 71 75 09 40 67    omp..@ogt.equ.@g
003710:  74 2D 40 63 6F 6D 70 0D 0A 40 6F 6C 74 09 65 71    t-@comp..@olt.eq
003720:  75 09 40 6C 74 2D 40 63 6F 6D 70 0D 0A 40 6F 67    u.@lt-@comp..@og
003730:  65 09 65 71 75 09 40 67 65 2D 40 63 6F 6D 70 0D    e.equ.@ge-@comp.
003740:  0A 40 6F 6C 65 09 65 71 75 09 40 6C 65 2D 40 63    .@ole.equ.@le-@c
003750:  6F 6D 70 0D 0A 0D 0A 40 6F 75 67 74 09 65 71 75    omp....@ougt.equ
003760:  09 40 75 67 74 2D 40 63 6F 6D 70 0D 0A 40 6F 75    .@ugt-@comp..@ou
003770:  6C 74 09 65 71 75 09 40 75 6C 74 2D 40 63 6F 6D    lt.equ.@ult-@com
003780:  70 0D 0A 40 6F 75 67 65 09 65 71 75 09 40 75 67    p..@ouge.equ.@ug
003790:  65 2D 40 63 6F 6D 70 0D 0A 40 6F 75 6C 65 09 65    e-@comp..@oule.e
0037A0:  71 75 09 40 75 6C 65 2D 40 63 6F 6D 70 0D 0A 0D    qu.@ule-@comp...
0037B0:  0A 40 6F 70 72 65 69 09 65 71 75 09 40 70 72 65    .@oprei.equ.@pre
0037C0:  69 6E 63 2D 40 69 6E 63 64 65 63 0D 0A 40 6F 70    inc-@incdec..@op
0037D0:  72 65 64 09 65 71 75 09 40 70 72 65 64 65 63 2D    red.equ.@predec-
0037E0:  40 69 6E 63 64 65 63 0D 0A 40 6F 70 6F 73 69 09    @incdec..@oposi.
0037F0:  65 71 75 09 40 70 6F 73 74 69 6E 63 2D 40 69 6E    equ.@postinc-@in
003800:  6F 76 65 20 65 6E 74 72 79 20 66 72 6F 6D 20 73    ove entry from s
003810:  74 61 63 6B 0D 0A 09 70 63 68 6C 09 09 09 3B 6A    tack...pchl...;j
003820:  75 6D 70 20 74 6F 20 6E 65 65 64 65 64 20 63 61    ump to needed ca
003830:  73 65 20 73 74 61 74 65 6D 65 6E 74 0D 0A 40 73    se statement..@s
003840:  77 69 74 63 68 32 3A 0D 0A 09 69 6E 78 09 68 09    witch2:...inx.h.
003850:  09 3B 6D 6F 76 65 20 70 6F 69 6E 74 65 72 20 74    .;move pointer t
003860:  6F 20 6E 65 78 74 20 65 6E 74 72 79 0D 0A 09 69    o next entry...i
003870:  6E 78 09 68 0D 0A 09 69 6E 78 09 68 0D 0A 09 64    nx.h...inx.h...d
003880:  63 72 09 62 09 09 3B 63 68 65 63 6B 20 74 6F 20    cr.b..;check to 
003890:  73 65 65 20 69 66 20 64 6F 6E 65 20 77 69 74 68    see if done with
0038A0:  20 73 63 61 6E 0D 0A 09 6A 6E 7A 09 40 73 77 69     scan...jnz.@swi
0038B0:  74 63 68 31 0D 0A 09 78 74 68 6C 09 09 09 3B 67    tch1...xthl...;g
0038C0:  65 74 20 61 64 64 72 65 73 73 20 6F 66 20 77 68    et address of wh
0038D0:  65 72 65 20 74 6F 20 67 6F 20 77 68 65 6E 20 64    ere to go when d
0038E0:  6F 6E 65 0D 0A 09 70 6F 70 09 62 09 09 3B 72 65    one...pop.b..;re
0038F0:  6D 6F 76 65 20 65 6E 74 72 79 20 66 72 6F 6D 20    move entry from 
003900:  73 74 61 63 6B 0D 0A 09 70 63 68 6C 09 09 09 3B    stack...pchl...;
003910:  67 6F 20 74 68 65 72 65 0D 0A 3B 0D 0A 3B 09 63    go there..;..;.c
003920:  61 6C 6C 20 61 20 62 69 6F 73 20 72 6F 75 74 69    all a bios routi
003930:  6E 65 20 77 69 74 68 20 62 65 20 6C 6F 61 64 65    ne with be loade
003940:  64 0D 0A 3B 0D 0A 62 69 6F 73 3A 09 63 73 65 63    d..;..bios:.csec
003950:  74 0D 0A 09 70 6F 70 09 68 0D 0A 09 70 6F 70 09    t...pop.h...pop.
003960:  62 0D 0A 09 70 6F 70 09 64 0D 0A 09 70 75 73 68    b...pop.d...push
003970:  09 64 0D 0A 09 70 75 73 68 09 62 0D 0A 09 70 75    .d...push.b...pu
003980:  73 68 09 68 0D 0A 09 6C 68 6C 64 09 31 0D 0A 09    sh.h...lhld.1...
003990:  64 63 78 09 68 0D 0A 20 09 64 63 78 09 68 0D 0A    dcx.h.. .dcx.h..
0039A0:  09 64 63 78 09 68 0D 0A 09 6D 76 69 09 64 2C 30    .dcx.h...mvi.d,0
0039B0:  0D 0A 09 64 61 64 09 64 0D 0A 09 64 61 64 09 64    ...dad.d...dad.d
0039C0:  0D 0A 09 64 61 64 09 64 0D 0A 09 63 61 6C 6C 09    ...dad.d...call.
0039D0:  62 69 6F 73 31 0D 0A 09 6D 6F 76 09 6C 2C 61 0D    bios1...mov.l,a.
0039E0:  0A 09 6D 76 69 09 68 2C 30 0D 0A 09 72 65 74 0D    ..mvi.h,0...ret.
0039F0:  0A 62 69 6F 73 31 3A 09 70 63 68 6C 0D 0A 3B 0D    .bios1:.pchl..;.
003A00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
003A10:  03 00 01 00 02 09 52 E5 03 00 C1 02 00 00 00 02    ......R.........
003A20:  03 00 C6 02 00 00 00 02 03 00 C2 02 00 00 00 02    ................
003A30:  03 00 C7 02 00 00 00 02 03 00 C3 02 00 00 00 02    ................
003A40:  03 00 C8 02 00 00 00 02 03 00 C4 02 00 00 00 02    ................
003A50:  03 00 C9 02 00 00 00 02 03 00 C5 02 00 00 00 02    ................
003A60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003A70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003A80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003A90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003AA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003AB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003AC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003AD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003AE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003AF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003B00:  63 64 65 63 0D 0A 40 6F 70 6F 73 64 09 65 71 75    cdec..@oposd.equ
003B10:  09 40 70 6F 73 74 64 65 63 2D 40 69 6E 63 64 65    .@postdec-@incde
003B20:  63 0D 0A 0D 0A 09 65 6E 64 0D 0A 1A 1A 1A 1A 1A    c.....end.......
003B30:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
003B40:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
003B50:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
003B60:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
003B70:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
003B80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003B90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003BA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003BB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003BC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003BD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003BE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003BF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003C00:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003C10:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003C20:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003C30:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003C40:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003C50:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003C60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003C70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003C80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003C90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003CA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003CB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003CC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003CD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003CE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003CF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
003D00:  63 70 69 09 27 7A 27 2B 31 09 09 3B 69 73 20 69    cpi.'z'+1..;is i
003D10:  74 20 67 72 65 61 74 65 72 20 74 68 65 6E 20 27    t greater then '
003D20:  7A 27 0D 0A 09 6A 6E 63 09 69 73 6C 6F 77 77 65    z'...jnc.islowwe
003D30:  72 31 09 3B 79 65 73 2E 2E 2E 6E 6F 74 20 6C 6F    r1.;yes...not lo
003D40:  77 65 72 20 63 61 73 65 0D 0A 09 6C 78 69 09 68    wer case...lxi.h
003D50:  2C 74 72 75 65 09 09 3B 72 65 74 75 72 6E 20 74    ,true..;return t
003D60:  72 75 65 20 66 6F 72 20 6C 6F 77 77 65 72 20 63    rue for lowwer c
003D70:  61 73 65 0D 0A 09 72 65 74 0D 0A 69 73 6C 6F 77    ase...ret..islow
003D80:  77 65 72 31 3A 0D 0A 09 6C 78 69 09 68 2C 66 61    wer1:...lxi.h,fa
003D90:  6C 73 65 09 09 3B 72 65 74 75 72 6E 20 66 61 6C    lse..;return fal
003DA0:  73 65 20 66 6F 72 20 61 6E 79 74 68 69 6E 67 20    se for anything 
003DB0:  62 75 74 20 6C 6F 77 77 65 72 20 63 61 73 65 0D    but lowwer case.
003DC0:  0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 69 73 64 69    ..ret..;..;.isdi
003DD0:  67 69 74 0D 0A 3B 0D 0A 3B 09 66 75 6E 63 74 69    git..;..;.functi
003DE0:  6F 6E 3A 20 74 6F 20 63 68 65 63 6B 20 74 6F 20    on: to check to 
003DF0:  73 65 65 20 69 66 20 63 68 61 72 61 63 74 65 72    see if character
003E00:  20 69 73 20 64 69 67 69 74 20 30 2D 39 20 6F 6E     is digit 0-9 on
003E10:  6C 79 0D 0A 3B 0D 0A 3B 09 63 61 6C 6C 69 6E 67    ly..;..;.calling
003E20:  20 66 6F 72 6D 61 74 20 66 72 6F 6D 20 22 63 22     format from "c"
003E30:  0D 0A 3B 09 69 73 64 69 67 69 74 28 63 68 61 72    ..;.isdigit(char
003E40:  29 0D 0A 3B 0D 0A 69 73 64 69 67 69 74 3A 63 73    )..;..isdigit:cs
003E50:  65 63 74 0D 0A 09 6D 6F 76 09 61 2C 6C 09 09 3B    ect...mov.a,l..;
003E60:  67 65 74 20 63 68 61 72 61 63 74 65 72 20 74 6F    get character to
003E70:  20 74 65 73 74 0D 0A 09 63 70 69 09 27 30 27 09     test...cpi.'0'.
003E80:  09 3B 73 65 65 20 69 66 20 6C 65 73 73 20 74 68    .;see if less th
003E90:  65 6E 20 61 20 7A 65 72 6F 0D 0A 09 6A 63 09 69    en a zero...jc.i
003EA0:  73 64 69 67 69 74 31 09 3B 79 65 73 2E 2E 2E 6E    sdigit1.;yes...n
003EB0:  6F 74 20 61 20 76 61 69 6C 64 20 64 69 67 69 74    ot a vaild digit
003EC0:  0D 0A 09 63 70 69 09 27 39 27 2B 31 09 09 3B 69    ...cpi.'9'+1..;i
003ED0:  73 20 69 74 20 67 72 65 61 74 65 72 20 74 68 61    s it greater tha
003EE0:  6E 20 6E 69 6E 65 0D 0A 09 6A 6E 63 09 69 73 64    n nine...jnc.isd
003EF0:  69 67 69 74 31 09 3B 79 65 73 2E 2E 2E 6E 6F 74    igit1.;yes...not
003F00:  09 74 69 74 6C 65 09 73 6D 61 6C 6C 20 63 20 69    .title.small c i
003F10:  2F 6F 20 70 61 63 6B 61 67 65 0D 0A 09 65 78 74    /o package...ext
003F20:  72 6E 09 62 69 6F 73 0D 0A 62 64 6F 73 09 65 71    rn.bios..bdos.eq
003F30:  75 09 35 09 09 3B 61 64 64 72 65 73 73 20 6F 6E    u.5..;address on
003F40:  20 65 6E 74 72 79 20 61 64 64 72 65 73 73 20 66     entry address f
003F50:  6F 72 20 62 64 6F 73 0D 0A 63 70 6D 63 6D 64 20    or bdos..cpmcmd 
003F60:  20 65 71 75 09 38 30 68 09 09 3B 61 64 64 72 65     equ.80h..;addre
003F70:  73 73 20 6F 66 20 63 70 6D 20 63 6F 6D 6D 61 6E    ss of cpm comman
003F80:  64 20 6C 69 6E 65 0D 0A 74 72 75 65 09 65 71 75    d line..true.equ
003F90:  09 31 09 09 3B 76 61 6C 75 65 20 66 6F 72 20 74    .1..;value for t
003FA0:  72 75 65 0D 0A 66 61 6C 73 65 09 65 71 75 09 30    rue..false.equ.0
003FB0:  09 09 3B 76 61 6C 75 65 20 66 6F 72 20 66 61 6C    ..;value for fal
003FC0:  73 65 09 09 0D 0A 3B 0D 0A 3B 09 74 6F 75 70 70    se....;..;.toupp
003FD0:  65 72 0D 0A 3B 0D 0A 3B 09 66 75 6E 63 74 69 6F    er..;..;.functio
003FE0:  6E 3A 20 74 6F 20 73 68 69 66 74 20 6C 6F 77 65    n: to shift lowe
003FF0:  72 20 63 61 73 65 20 63 68 61 72 61 63 74 65 72    r case character
004000:  20 74 6F 20 75 70 70 65 72 0D 0A 3B 0D 0A 3B 09     to upper..;..;.
004010:  63 61 6C 6C 69 6E 67 20 66 6F 72 6D 61 74 20 66    calling format f
004020:  72 6F 6D 20 22 63 22 0D 0A 3B 09 74 6F 75 70 70    rom "c"..;.toupp
004030:  65 72 28 63 68 61 72 29 3B 0D 0A 3B 0D 0A 74 6F    er(char);..;..to
004040:  75 70 70 65 72 3A 63 73 65 63 74 0D 0A 09 6D 6F    upper:csect...mo
004050:  76 09 61 2C 6C 09 09 3B 67 65 74 20 63 68 61 72    v.a,l..;get char
004060:  61 63 74 65 72 20 74 6F 20 74 65 73 74 0D 0A 09    acter to test...
004070:  63 70 69 09 36 31 68 09 09 3B 63 68 65 63 6B 20    cpi.61h..;check 
004080:  74 6F 20 73 65 65 20 69 66 20 6C 65 73 73 20 74    to see if less t
004090:  68 65 6E 20 27 61 27 0D 0A 09 72 63 09 09 09 3B    hen 'a'...rc...;
0040A0:  79 65 73 20 72 65 74 75 72 6E 20 74 6F 20 63 61    yes return to ca
0040B0:  6C 6C 65 72 0D 0A 09 63 70 69 09 37 62 68 09 09    ller...cpi.7bh..
0040C0:  3B 63 68 65 63 6B 20 74 6F 20 73 65 65 20 69 66    ;check to see if
0040D0:  20 67 72 65 61 74 65 72 20 74 68 65 6E 20 27 7A     greater then 'z
0040E0:  27 0D 0A 09 72 6E 63 09 09 09 3B 79 65 73 2E 2E    '...rnc...;yes..
0040F0:  72 65 74 75 72 6E 20 74 6F 20 63 61 6C 6C 65 72    return to caller
004100:  20 61 20 76 61 69 6C 64 20 64 69 67 69 74 0D 0A     a vaild digit..
004110:  09 6C 78 69 09 68 2C 74 72 75 65 09 09 3B 69 73    .lxi.h,true..;is
004120:  20 61 20 76 61 69 6C 64 20 64 69 67 69 74 0D 0A     a vaild digit..
004130:  09 72 65 74 0D 0A 69 73 64 69 67 69 74 31 3A 0D    .ret..isdigit1:.
004140:  0A 09 6C 78 69 09 68 2C 66 61 6C 73 65 09 09 3B    ..lxi.h,false..;
004150:  6E 6F 74 20 61 20 76 61 69 6C 64 20 64 69 67 69    not a vaild digi
004160:  74 0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 69 73    t...ret..;..;.is
004170:  73 70 61 63 65 0D 0A 3B 0D 0A 3B 09 66 75 6E 63    space..;..;.func
004180:  74 69 6F 6E 3A 20 74 6F 20 63 68 65 63 6B 20 74    tion: to check t
004190:  6F 20 73 65 65 20 69 66 20 77 68 69 74 65 20 73    o see if white s
0041A0:  70 61 63 65 20 74 61 62 20 6F 72 20 62 6C 61 6E    pace tab or blan
0041B0:  6B 0D 0A 3B 0D 0A 3B 09 63 61 6C 6C 69 6E 67 20    k..;..;.calling 
0041C0:  66 6F 72 6D 61 74 20 66 72 6F 6D 20 22 63 22 0D    format from "c".
0041D0:  0A 3B 09 69 73 73 70 61 63 65 28 63 68 61 72 29    .;.isspace(char)
0041E0:  0D 0A 3B 0D 0A 69 73 73 70 61 63 65 3A 63 73 65    ..;..isspace:cse
0041F0:  63 74 0D 0A 09 6D 6F 76 09 61 2C 6C 09 09 3B 67    ct...mov.a,l..;g
004200:  65 74 20 63 68 61 72 61 63 74 65 72 20 74 6F 20    et character to 
004210:  63 68 65 63 6B 0D 0A 09 6C 78 69 09 68 2C 74 72    check...lxi.h,tr
004220:  75 65 09 09 3B 61 73 73 75 6D 65 20 74 72 75 65    ue..;assume true
004230:  0D 0A 09 63 70 69 09 27 20 27 09 09 3B 63 68 65    ...cpi.' '..;che
004240:  63 6B 20 66 6F 72 20 61 20 73 70 61 63 65 0D 0A    ck for a space..
004250:  09 72 7A 0D 0A 09 63 70 69 09 39 09 09 3B 63 68    .rz...cpi.9..;ch
004260:  65 63 6B 20 66 6F 72 20 61 20 74 61 62 0D 0A 09    eck for a tab...
004270:  72 7A 0D 0A 09 6C 78 69 09 68 2C 66 61 6C 73 65    rz...lxi.h,false
004280:  0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 73 74 72    ...ret..;..;.str
004290:  6C 65 6E 0D 0A 3B 0D 0A 3B 09 66 75 6E 63 74 69    len..;..;.functi
0042A0:  6F 6E 3A 20 74 6F 20 67 65 74 20 74 68 65 20 6C    on: to get the l
0042B0:  65 6E 67 68 74 20 6F 66 20 61 20 73 74 72 69 6E    enght of a strin
0042C0:  67 0D 0A 3B 0D 0A 3B 09 63 61 6C 6C 69 6E 67 20    g..;..;.calling 
0042D0:  66 6F 72 6D 61 74 20 69 6E 20 22 63 22 0D 0A 3B    format in "c"..;
0042E0:  09 6C 65 6E 3D 73 74 72 6C 65 6E 28 73 74 72 69    .len=strlen(stri
0042F0:  6E 67 29 3B 0D 0A 3B 0D 0A 73 74 72 6C 65 6E 3A    ng);..;..strlen:
004300:  0D 0A 09 61 6E 69 09 35 66 68 09 09 3B 6D 61 73    ...ani.5fh..;mas
004310:  6B 20 6F 66 66 20 6C 6F 77 77 65 72 20 63 61 73    k off lowwer cas
004320:  65 20 62 69 74 0D 0A 09 6D 6F 76 09 6C 2C 61 09    e bit...mov.l,a.
004330:  09 3B 70 75 74 20 69 74 20 69 6E 20 72 65 67 20    .;put it in reg 
004340:  66 6F 72 20 72 65 74 75 72 6E 0D 0A 09 72 65 74    for return...ret
004350:  09 09 09 3B 72 65 74 75 72 6E 20 74 6F 20 63 61    ...;return to ca
004360:  6C 6C 65 72 0D 0A 3B 0D 0A 3B 09 74 6F 6C 6F 77    ller..;..;.tolow
004370:  77 65 72 0D 0A 3B 0D 0A 3B 09 66 75 6E 63 74 69    wer..;..;.functi
004380:  6F 6E 3A 20 74 6F 20 63 6F 6E 76 65 72 74 20 63    on: to convert c
004390:  68 61 72 61 63 74 65 72 20 74 6F 20 6C 6F 77 77    haracter to loww
0043A0:  65 72 20 63 61 73 65 0D 0A 3B 0D 0A 3B 09 63 61    er case..;..;.ca
0043B0:  6C 6C 69 6E 67 20 66 6F 72 6D 61 74 20 66 72 6F    lling format fro
0043C0:  6D 20 22 63 22 0D 0A 3B 09 74 6F 6C 6F 77 77 65    m "c"..;.tolowwe
0043D0:  72 28 63 68 61 72 29 0D 0A 3B 0D 0A 74 6F 6C 6F    r(char)..;..tolo
0043E0:  77 77 65 72 3A 63 73 65 63 74 0D 0A 09 6D 6F 76    wwer:csect...mov
0043F0:  09 61 2C 6C 09 09 3B 67 65 74 20 63 68 61 72 61    .a,l..;get chara
004400:  63 74 65 72 20 74 6F 20 73 68 69 66 74 20 74 6F    cter to shift to
004410:  20 6C 6F 77 77 65 72 20 63 61 73 65 0D 0A 09 63     lowwer case...c
004420:  70 69 09 27 41 27 09 09 3B 73 65 65 20 69 66 20    pi.'A'..;see if 
004430:  6C 65 73 73 20 74 68 65 6E 20 27 41 27 0D 0A 09    less then 'A'...
004440:  72 63 09 09 09 3B 79 65 73 2E 2E 2E 72 65 74 75    rc...;yes...retu
004450:  72 6E 20 74 6F 20 63 61 6C 6C 65 72 0D 0A 09 63    rn to caller...c
004460:  70 69 09 27 5A 27 2B 31 09 09 3B 73 65 65 20 69    pi.'Z'+1..;see i
004470:  66 20 67 72 65 61 74 65 72 20 74 68 65 6E 20 27    f greater then '
004480:  5A 27 0D 0A 09 72 6E 63 09 09 09 3B 79 65 73 2E    Z'...rnc...;yes.
004490:  2E 2E 72 65 74 75 72 6E 20 74 6F 20 63 61 6C 6C    ..return to call
0044A0:  65 72 0D 0A 09 61 6E 69 09 30 62 66 68 09 09 3B    er...ani.0bfh..;
0044B0:  72 65 6D 6F 76 65 20 75 70 70 65 72 20 63 61 73    remove upper cas
0044C0:  65 20 62 69 74 0D 0A 09 6D 6F 76 09 6C 2C 61 09    e bit...mov.l,a.
0044D0:  09 3B 70 75 74 20 63 68 72 61 63 74 65 72 20 62    .;put chracter b
0044E0:  61 63 6B 20 69 6E 20 70 6C 61 63 65 0D 0A 09 72    ack in place...r
0044F0:  65 74 0D 0A 3B 0D 0A 3B 09 69 73 61 6C 70 68 61    et..;..;.isalpha
004500:  09 63 73 65 63 74 0D 0A 09 78 63 68 67 09 09 09    .csect...xchg...
004510:  3B 70 75 74 20 61 64 64 72 65 73 73 20 6F 66 20    ;put address of 
004520:  73 74 72 69 6E 67 20 69 6E 20 64 65 0D 0A 09 6C    string in de...l
004530:  78 69 09 68 2C 30 09 09 3B 6D 61 6B 65 20 73 74    xi.h,0..;make st
004540:  72 69 6E 67 20 6F 66 20 7A 65 72 6F 20 6C 65 6E    ring of zero len
004550:  67 68 74 0D 0A 73 74 72 6C 65 6E 31 3A 0D 0A 09    ght..strlen1:...
004560:  6C 64 61 78 09 64 09 09 3B 67 65 74 20 63 68 61    ldax.d..;get cha
004570:  72 61 63 74 65 72 20 66 72 6F 6D 20 73 74 72 69    racter from stri
004580:  6E 67 0D 0A 09 6F 72 61 09 61 09 09 3B 63 68 65    ng...ora.a..;che
004590:  63 6B 20 74 6F 20 73 65 65 20 69 66 20 65 6E 64    ck to see if end
0045A0:  20 6F 66 20 73 74 72 69 6E 67 0D 0A 09 72 7A 09     of string...rz.
0045B0:  09 09 3B 79 65 73 20 72 65 74 75 72 6E 20 74 6F    ..;yes return to
0045C0:  20 63 61 6C 6C 65 72 0D 0A 09 69 6E 78 09 68 09     caller...inx.h.
0045D0:  09 3B 61 64 64 20 31 20 74 6F 20 73 74 72 69 6E    .;add 1 to strin
0045E0:  67 20 6C 65 6E 67 68 74 0D 0A 09 69 6E 78 09 64    g lenght...inx.d
0045F0:  09 09 3B 6D 6F 76 65 20 74 6F 20 6E 65 78 74 20    ..;move to next 
004600:  63 68 61 72 61 63 74 65 72 0D 0A 09 6A 6D 70 09    character...jmp.
004610:  73 74 72 6C 65 6E 31 09 09 3B 6C 6F 6F 70 20 74    strlen1..;loop t
004620:  69 6C 6C 20 65 6E 64 20 6F 66 20 73 74 72 69 6E    ill end of strin
004630:  67 20 66 6F 75 6E 64 0D 0A 3B 0D 0A 3B 09 73 74    g found..;..;.st
004640:  72 63 70 79 0D 0A 3B 0D 0A 3B 09 66 75 6E 63 74    rcpy..;..;.funct
004650:  69 6F 6E 3A 20 74 6F 20 63 6F 70 79 20 66 69 72    ion: to copy fir
004660:  73 74 20 73 65 63 6F 6E 64 20 73 74 72 69 6E 67    st second string
004670:  20 74 6F 20 66 69 72 73 74 20 73 74 72 69 6E 67     to first string
004680:  0D 0A 3B 0D 0A 3B 09 63 61 6C 6C 69 6E 67 20 66    ..;..;.calling f
004690:  6F 72 6D 61 74 20 66 72 6F 6D 20 22 63 22 0D 0A    ormat from "c"..
0046A0:  3B 09 73 74 72 63 70 79 28 6F 62 6A 65 63 74 2C    ;.strcpy(object,
0046B0:  73 6F 75 72 63 65 29 3B 0D 0A 3B 0D 0A 73 74 72    source);..;..str
0046C0:  63 70 79 3A 09 63 73 65 63 74 0D 0A 09 70 6F 70    cpy:.csect...pop
0046D0:  09 62 09 09 3B 67 65 74 20 72 65 74 75 72 6E 20    .b..;get return 
0046E0:  61 64 64 72 65 73 73 20 66 72 6F 6D 20 73 74 61    address from sta
0046F0:  63 6B 0D 0A 09 70 6F 70 09 64 09 09 3B 67 65 74    ck...pop.d..;get
004700:  0D 0A 3B 0D 0A 3B 09 66 75 6E 63 74 69 6F 6E 20    ..;..;.function 
004710:  63 68 65 63 6B 20 74 6F 20 73 65 65 20 69 66 20    check to see if 
004720:  61 6C 70 68 61 20 63 68 61 72 61 63 74 65 72 20    alpha character 
004730:  61 2D 7A 20 6F 72 20 41 2D 5A 20 6F 6E 6C 79 0D    a-z or A-Z only.
004740:  0A 3B 0D 0A 3B 09 63 61 6C 6C 69 6E 67 20 66 6F    .;..;.calling fo
004750:  72 6D 61 74 20 66 72 6F 6D 20 22 63 22 0D 0A 3B    rmat from "c"..;
004760:  09 69 73 61 6C 70 68 61 28 63 68 61 72 29 0D 0A    .isalpha(char)..
004770:  3B 0D 0A 69 73 61 6C 70 68 61 3A 63 73 65 63 74    ;..isalpha:csect
004780:  0D 0A 09 70 75 73 68 09 68 09 09 3B 73 61 76 65    ...push.h..;save
004790:  20 63 61 6C 6C 69 6E 67 20 61 72 67 20 66 6F 72     calling arg for
0047A0:  20 6C 61 74 65 72 0D 0A 09 63 61 6C 6C 09 69 73     later...call.is
0047B0:  75 70 70 65 72 09 09 3B 63 68 65 63 6B 20 74 6F    upper..;check to
0047C0:  20 73 65 65 20 69 66 20 75 70 70 65 72 20 63 61     see if upper ca
0047D0:  73 65 0D 0A 09 78 63 68 67 09 09 09 3B 70 75 74    se...xchg...;put
0047E0:  20 61 6E 73 77 65 72 20 69 6E 20 64 65 0D 0A 09     answer in de...
0047F0:  70 6F 70 09 68 09 09 3B 67 65 74 20 63 68 61 72    pop.h..;get char
004800:  61 63 74 65 72 20 74 6F 20 74 65 73 74 20 62 61    acter to test ba
004810:  63 6B 0D 0A 09 63 61 6C 6C 09 69 73 6C 6F 77 77    ck...call.isloww
004820:  65 72 09 3B 63 68 65 63 6B 20 74 6F 20 73 65 65    er.;check to see
004830:  20 69 66 20 6C 6F 77 77 65 72 20 63 61 73 65 0D     if lowwer case.
004840:  0A 09 64 61 64 09 64 09 09 3B 61 64 64 20 69 73    ..dad.d..;add is
004850:  75 70 70 65 72 20 74 6F 20 69 73 20 6C 6F 77 77    upper to is loww
004860:  65 72 20 61 6E 73 77 65 72 0D 0A 09 72 65 74 0D    er answer...ret.
004870:  0A 0D 0A 3B 0D 0A 3B 09 69 73 75 70 70 65 72 0D    ...;..;.isupper.
004880:  0A 3B 0D 0A 3B 09 66 75 6E 63 74 69 6F 6E 3A 20    .;..;.function: 
004890:  74 6F 20 63 68 65 63 6B 20 74 6F 20 73 65 65 20    to check to see 
0048A0:  69 66 20 63 68 61 72 61 63 74 65 72 20 69 73 20    if character is 
0048B0:  75 70 70 65 72 20 63 61 73 65 0D 0A 3B 0D 0A 3B    upper case..;..;
0048C0:  09 63 61 6C 6C 69 6E 67 20 66 6F 72 6D 61 74 20    .calling format 
0048D0:  69 6E 20 22 63 22 0D 0A 3B 09 69 73 75 70 70 65    in "c"..;.isuppe
0048E0:  72 28 63 68 61 72 29 20 0D 0A 3B 0D 0A 69 73 75    r(char) ..;..isu
0048F0:  70 70 65 72 3A 63 73 65 63 74 0D 0A 09 6D 6F 76    pper:csect...mov
004900:  20 73 6F 75 72 63 65 20 61 64 64 72 65 73 73 0D     source address.
004910:  0A 09 70 6F 70 09 68 09 09 3B 67 65 74 20 6F 62    ..pop.h..;get ob
004920:  6A 65 63 74 20 61 64 64 72 65 73 73 0D 0A 09 70    ject address...p
004930:  75 73 68 09 68 09 09 3B 72 65 73 74 6F 72 65 20    ush.h..;restore 
004940:  6D 61 63 68 69 6E 65 20 73 74 61 63 6B 0D 0A 09    machine stack...
004950:  70 75 73 68 09 64 0D 0A 09 70 75 73 68 09 62 0D    push.d...push.b.
004960:  0A 09 70 75 73 68 09 68 0D 0A 73 74 72 63 70 79    ..push.h..strcpy
004970:  31 3A 0D 0A 09 6C 64 61 78 09 64 09 09 3B 67 65    1:...ldax.d..;ge
004980:  74 20 61 64 64 72 65 73 73 20 6F 66 20 73 6F 75    t address of sou
004990:  72 63 65 20 20 63 68 61 72 61 63 74 65 72 0D 0A    rce  character..
0049A0:  09 6D 6F 76 09 6D 2C 61 09 09 3B 73 74 6F 72 65    .mov.m,a..;store
0049B0:  20 63 68 61 72 61 63 74 65 72 20 69 6E 20 6F 62     character in ob
0049C0:  6A 65 63 74 20 73 74 72 69 6E 67 0D 0A 09 6F 72    ject string...or
0049D0:  61 09 61 09 09 3B 63 68 65 63 6B 20 74 6F 20 73    a.a..;check to s
0049E0:  65 65 20 69 66 20 65 6E 64 20 6F 66 20 73 74 72    ee if end of str
0049F0:  69 6E 67 0D 0A 09 6A 7A 09 73 74 72 63 70 79 32    ing...jz.strcpy2
004A00:  09 09 3B 65 6E 64 20 6F 66 20 73 74 72 69 6E 67    ..;end of string
004A10:  20 72 65 74 75 72 6E 20 74 6F 20 63 61 6C 6C 65     return to calle
004A20:  72 0D 0A 09 69 6E 78 09 68 0D 0A 09 69 6E 78 09    r...inx.h...inx.
004A30:  64 09 09 3B 6D 6F 76 65 20 70 6F 69 6E 74 65 72    d..;move pointer
004A40:  20 74 6F 20 6E 65 78 74 20 62 79 74 65 0D 0A 09     to next byte...
004A50:  6A 6D 70 09 73 74 72 63 70 79 31 09 09 3B 6C 6F    jmp.strcpy1..;lo
004A60:  6F 70 20 74 69 6C 6C 20 64 6F 6E 65 20 77 69 74    op till done wit
004A70:  68 20 63 6F 70 79 0D 0A 73 74 72 63 70 79 32 3A    h copy..strcpy2:
004A80:  0D 0A 09 70 6F 70 09 68 09 09 3B 72 65 74 75 72    ...pop.h..;retur
004A90:  6E 20 61 64 64 72 65 73 73 20 6F 66 20 6F 62 6A    n address of obj
004AA0:  65 63 74 20 73 74 72 69 6E 67 0D 0A 09 72 65 74    ect string...ret
004AB0:  0D 0A 3B 0D 0A 3B 09 73 74 72 63 61 74 0D 0A 3B    ..;..;.strcat..;
004AC0:  0D 0A 3B 09 66 75 6E 63 74 69 6F 6E 3A 20 74 6F    ..;.function: to
004AD0:  20 70 75 74 20 73 74 72 69 6E 67 32 20 61 74 20     put string2 at 
004AE0:  74 68 65 6E 20 65 6E 64 20 6F 66 20 73 74 72 69    then end of stri
004AF0:  6E 67 31 20 61 6E 64 20 72 65 74 75 72 6E 20 61    ng1 and return a
004B00:  09 61 2C 6C 09 09 3B 67 65 74 20 63 68 61 72 61    .a,l..;get chara
004B10:  63 74 65 72 20 74 6F 20 63 68 65 63 6B 0D 0A 09    cter to check...
004B20:  63 70 69 09 27 41 27 09 09 3B 73 65 65 20 69 66    cpi.'A'..;see if
004B30:  20 6C 65 73 73 20 74 68 65 6E 20 75 70 70 65 72     less then upper
004B40:  20 63 61 73 65 20 61 0D 0A 09 6A 63 09 69 73 75     case a...jc.isu
004B50:  70 70 65 72 31 09 3B 6E 6F 74 20 75 70 70 65 72    pper1.;not upper
004B60:  20 63 61 73 65 0D 0A 09 63 70 69 09 27 5A 27 2B     case...cpi.'Z'+
004B70:  31 09 09 3B 63 68 65 63 6B 20 74 6F 20 73 65 65    1..;check to see
004B80:  20 69 66 20 6C 65 73 73 20 74 68 65 6E 20 0D 0A     if less then ..
004B90:  09 6A 6E 63 09 69 73 75 70 70 65 72 31 09 3B 6E    .jnc.isupper1.;n
004BA0:  6F 20 75 70 70 65 72 20 63 61 73 65 0D 0A 09 6C    o upper case...l
004BB0:  78 69 09 68 2C 74 72 75 65 09 09 3B 79 65 73 20    xi.h,true..;yes 
004BC0:  69 74 20 69 73 20 75 70 70 65 72 20 63 61 73 65    it is upper case
004BD0:  0D 0A 09 72 65 74 0D 0A 69 73 75 70 70 65 72 31    ...ret..isupper1
004BE0:  3A 0D 0A 09 6C 78 69 09 68 2C 66 61 6C 73 65 09    :...lxi.h,false.
004BF0:  09 3B 6E 6F 74 20 75 70 70 65 72 20 63 61 73 65    .;not upper case
004C00:  0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 69 73 6C    ...ret..;..;.isl
004C10:  6F 77 77 65 72 0D 0A 3B 0D 0A 3B 09 66 75 6E 63    owwer..;..;.func
004C20:  74 69 6F 6E 3A 20 74 6F 20 63 68 65 63 6B 20 74    tion: to check t
004C30:  6F 20 73 65 65 20 69 66 20 63 68 61 72 61 63 74    o see if charact
004C40:  65 72 20 69 73 20 6C 6F 77 77 65 72 20 63 61 73    er is lowwer cas
004C50:  65 0D 0A 3B 0D 0A 3B 09 63 61 6C 6C 69 6E 67 20    e..;..;.calling 
004C60:  66 6F 72 6D 61 74 20 66 72 6F 6D 20 22 63 22 0D    format from "c".
004C70:  0A 3B 09 69 73 6C 6F 77 77 65 72 28 63 68 61 72    .;.islowwer(char
004C80:  29 0D 0A 3B 0D 0A 69 73 6C 6F 77 77 65 72 3A 63    )..;..islowwer:c
004C90:  73 65 63 74 0D 0A 09 6D 6F 76 09 61 2C 6C 09 09    sect...mov.a,l..
004CA0:  3B 67 65 74 20 63 68 61 72 61 63 74 65 72 20 74    ;get character t
004CB0:  6F 20 63 68 65 63 6B 0D 0A 09 63 70 69 09 27 61    o check...cpi.'a
004CC0:  27 09 09 3B 73 65 65 20 69 66 20 6C 65 73 73 20    '..;see if less 
004CD0:  74 68 65 6E 20 27 61 27 0D 0A 09 6A 63 09 69 73    then 'a'...jc.is
004CE0:  6C 6F 77 77 65 72 31 09 3B 79 65 73 2E 2E 2E 6E    lowwer1.;yes...n
004CF0:  6F 74 20 75 70 70 65 72 20 63 61 73 65 0D 0A 09    ot upper case...
004D00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
004D10:  04 00 01 00 02 09 52 E5 04 00 C1 02 00 00 00 02    ......R.........
004D20:  04 00 C6 02 00 00 00 02 04 00 C2 02 00 00 00 02    ................
004D30:  04 00 C7 02 00 00 00 02 04 00 C3 02 00 00 00 02    ................
004D40:  04 00 C8 02 00 00 00 02 04 00 C4 02 00 00 00 02    ................
004D50:  04 00 C9 02 00 00 00 02 04 00 C5 02 00 00 00 02    ................
004D60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
004D70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
004D80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
004D90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
004DA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
004DB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
004DC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
004DD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
004DE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
004DF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
004E00:  64 64 72 65 73 73 20 6F 66 20 0D 0A 3B 09 20 20    ddress of ..;.  
004E10:  20 20 20 20 09 20 20 73 74 72 69 6E 67 20 31 0D        .  string 1.
004E20:  0A 3B 0D 0A 3B 09 63 61 6C 6C 69 6E 67 20 66 6F    .;..;.calling fo
004E30:  72 6D 61 74 20 69 6E 20 22 63 22 0D 0A 3B 09 73    rmat in "c"..;.s
004E40:  74 72 63 61 74 28 73 74 72 69 6E 67 31 2C 73 74    trcat(string1,st
004E50:  72 69 6E 67 32 29 3B 0D 0A 3B 0D 0A 73 74 72 63    ring2);..;..strc
004E60:  61 74 3A 09 63 73 65 63 74 0D 0A 09 70 6F 70 09    at:.csect...pop.
004E70:  62 09 09 3B 67 65 74 20 72 65 74 75 72 6E 20 61    b..;get return a
004E80:  64 64 72 65 73 73 0D 0A 09 70 6F 70 09 64 09 09    ddress...pop.d..
004E90:  3B 67 65 74 20 61 64 64 72 65 73 73 20 6F 66 20    ;get address of 
004EA0:  73 74 72 69 6E 67 20 32 0D 0A 09 70 6F 70 09 68    string 2...pop.h
004EB0:  09 09 3B 67 65 74 20 61 64 64 72 65 73 73 20 6F    ..;get address o
004EC0:  66 20 73 74 72 69 6E 67 20 31 0D 0A 09 70 75 73    f string 1...pus
004ED0:  68 09 68 09 09 3B 72 65 74 6F 72 65 20 6D 61 63    h.h..;retore mac
004EE0:  68 69 6E 65 20 73 74 61 63 6B 0D 0A 09 70 75 73    hine stack...pus
004EF0:  68 09 64 0D 0A 09 70 75 73 68 09 62 0D 0A 09 70    h.d...push.b...p
004F00:  75 73 68 09 68 09 09 3B 73 61 76 65 20 61 64 64    ush.h..;save add
004F10:  72 65 73 73 20 6F 66 20 73 6F 75 72 63 65 20 73    ress of source s
004F20:  74 72 69 6E 67 0D 0A 73 74 72 63 61 74 31 3A 0D    tring..strcat1:.
004F30:  0A 09 6D 6F 76 09 61 2C 6D 09 09 3B 67 65 74 20    ..mov.a,m..;get 
004F40:  63 68 61 72 61 63 74 65 72 20 66 72 6F 6D 20 73    character from s
004F50:  6F 75 72 63 65 20 62 75 66 66 65 72 0D 0A 09 6F    ource buffer...o
004F60:  72 61 09 61 09 09 3B 63 68 65 63 6B 20 74 6F 20    ra.a..;check to 
004F70:  73 65 65 20 69 66 20 7A 65 72 6F 0D 0A 09 6A 7A    see if zero...jz
004F80:  09 73 74 72 63 61 74 32 09 09 3B 79 65 73 20 65    .strcat2..;yes e
004F90:  6E 64 20 6F 66 20 73 74 72 69 6E 67 20 66 6F 75    nd of string fou
004FA0:  6E 64 0D 0A 09 69 6E 78 09 68 09 09 3B 6D 6F 76    nd...inx.h..;mov
004FB0:  65 20 70 6F 69 6E 74 65 72 20 74 6F 20 6E 65 78    e pointer to nex
004FC0:  74 20 62 79 74 65 0D 0A 09 6A 6D 70 09 73 74 72    t byte...jmp.str
004FD0:  63 61 74 31 09 09 3B 6C 6F 6F 70 20 74 69 6C 6C    cat1..;loop till
004FE0:  20 65 6E 64 20 6F 66 20 73 74 72 69 6E 67 20 66     end of string f
004FF0:  6F 75 6E 64 0D 0A 73 74 72 63 61 74 32 3A 0D 0A    ound..strcat2:..
005000:  61 63 74 69 6F 6E 0D 0A 09 69 6E 78 09 64 09 09    action...inx.d..
005010:  3B 6D 6F 76 65 20 70 6F 69 6E 74 65 72 20 74 6F    ;move pointer to
005020:  20 6E 65 78 74 20 70 6F 69 6E 74 65 72 0D 0A 09     next pointer...
005030:  64 63 78 09 62 09 09 3B 73 75 62 74 72 61 63 74    dcx.b..;subtract
005040:  20 31 20 66 72 6F 6D 20 63 6F 75 6E 74 0D 0A 09     1 from count...
005050:  6A 6D 70 09 73 65 74 6D 65 6D 31 09 09 3B 6C 6F    jmp.setmem1..;lo
005060:  6F 70 20 74 69 6C 6C 20 61 6C 6C 20 62 79 74 65    op till all byte
005070:  73 20 73 65 74 0D 0A 3B 0D 0A 3B 09 6D 6F 76 6D    s set..;..;.movm
005080:  65 6D 0D 0A 3B 0D 0A 3B 09 66 75 6E 63 74 69 6F    em..;..;.functio
005090:  6E 3A 20 74 6F 20 6D 6F 76 65 20 73 6F 75 72 63    n: to move sourc
0050A0:  65 20 61 64 64 72 65 73 73 20 74 6F 20 6F 62 6A    e address to obj
0050B0:  65 63 74 20 61 64 64 72 65 73 73 20 66 6F 72 20    ect address for 
0050C0:  63 6F 75 6E 74 20 62 79 74 65 73 0D 0A 3B 0D 0A    count bytes..;..
0050D0:  3B 09 63 61 6C 6C 69 6E 67 20 66 6F 72 6D 61 74    ;.calling format
0050E0:  20 66 72 6F 6D 20 20 22 43 22 0D 0A 3B 09 6D 6F     from  "C"..;.mo
0050F0:  76 6D 65 6D 28 73 6F 75 72 63 65 2C 6F 62 6A 65    vmem(source,obje
005100:  63 74 2C 63 6F 75 6E 74 29 3B 0D 0A 3B 0D 0A 6D    ct,count);..;..m
005110:  6F 76 6D 65 6D 3A 09 63 73 65 63 74 0D 0A 09 63    ovmem:.csect...c
005120:  61 6C 6C 09 61 72 67 6C 6F 61 64 09 09 3B 67 65    all.argload..;ge
005130:  74 20 61 72 67 73 20 62 63 3D 31 2C 20 64 65 3D    t args bc=1, de=
005140:  32 2C 20 68 6C 3D 33 0D 0A 09 70 75 73 68 09 62    2, hl=3...push.b
005150:  09 09 3B 73 77 69 74 63 68 20 61 72 67 73 20 73    ..;switch args s
005160:  6F 20 74 68 61 74 20 0D 0A 09 70 75 73 68 09 64    o that ...push.d
005170:  09 09 3B 62 63 3D 63 6F 75 6E 74 0D 0A 09 70 75    ..;bc=count...pu
005180:  73 68 09 68 09 09 3B 64 65 3D 6F 62 6A 65 63 74    sh.h..;de=object
005190:  0D 0A 09 70 6F 70 09 62 09 09 3B 68 6C 3D 73 6F    ...pop.b..;hl=so
0051A0:  75 72 63 65 0D 0A 09 70 6F 70 09 68 0D 0A 09 70    urce...pop.h...p
0051B0:  6F 70 09 64 0D 0A 09 6D 6F 76 09 61 2C 62 09 09    op.d...mov.a,b..
0051C0:  3B 63 68 65 63 6B 20 74 6F 20 73 65 65 20 69 66    ;check to see if
0051D0:  20 63 6F 75 6E 74 20 3D 20 30 0D 0A 09 6F 72 61     count = 0...ora
0051E0:  09 63 0D 0A 09 72 7A 09 09 09 3B 7A 65 72 6F 20    .c...rz...;zero 
0051F0:  72 65 74 75 72 6E 20 74 6F 20 63 61 6C 6C 65 72    return to caller
005200:  09 6C 64 61 78 09 64 09 09 3B 67 65 74 20 63 68    .ldax.d..;get ch
005210:  61 72 61 63 74 65 72 20 66 72 6F 6D 20 73 74 72    aracter from str
005220:  69 6E 67 20 32 0D 0A 09 6D 6F 76 09 6D 2C 61 09    ing 2...mov.m,a.
005230:  09 3B 73 61 76 65 20 63 68 61 72 61 63 74 65 72    .;save character
005240:  20 69 6E 20 73 74 72 69 6E 67 31 0D 0A 09 6F 72     in string1...or
005250:  61 09 61 09 09 3B 63 68 65 63 6B 20 74 6F 20 73    a.a..;check to s
005260:  65 65 20 69 66 20 65 6E 64 20 6F 66 20 62 75 66    ee if end of buf
005270:  66 65 72 0D 0A 09 6A 7A 09 73 74 72 63 61 74 33    fer...jz.strcat3
005280:  09 09 3B 79 65 73 20 72 65 74 75 72 6E 20 74 6F    ..;yes return to
005290:  20 63 61 6C 6C 65 72 0D 0A 09 69 6E 78 09 68 09     caller...inx.h.
0052A0:  09 3B 6D 6F 76 65 20 6F 62 6A 65 63 74 20 70 6F    .;move object po
0052B0:  69 6E 74 65 72 20 75 70 20 31 0D 0A 09 69 6E 78    inter up 1...inx
0052C0:  09 64 09 09 3B 6D 6F 76 65 20 73 6F 75 72 63 65    .d..;move source
0052D0:  20 70 6F 69 6E 74 65 72 20 75 70 20 31 0D 0A 09     pointer up 1...
0052E0:  6A 6D 70 09 73 74 72 63 61 74 32 0D 0A 73 74 72    jmp.strcat2..str
0052F0:  63 61 74 33 3A 0D 0A 09 70 6F 70 09 68 09 09 3B    cat3:...pop.h..;
005300:  67 65 74 20 61 64 64 72 65 73 73 20 6F 66 20 73    get address of s
005310:  74 72 69 6E 67 31 0D 0A 09 72 65 74 0D 0A 3B 09    tring1...ret..;.
005320:  73 74 72 70 6F 73 0D 0A 3B 0D 0A 3B 09 66 75 6E    strpos..;..;.fun
005330:  63 74 69 6F 6E 3A 20 74 6F 20 6C 6F 6F 6B 20 66    ction: to look f
005340:  6F 72 20 73 74 72 69 6E 67 20 32 20 69 6E 20 73    or string 2 in s
005350:  74 72 69 6E 67 20 31 0D 0A 3B 0D 0A 3B 09 63 61    tring 1..;..;.ca
005360:  6C 6C 69 6E 67 20 66 6F 72 6D 61 74 20 69 6E 20    lling format in 
005370:  22 63 22 0D 0A 3B 09 73 74 72 70 6F 73 28 73 74    "c"..;.strpos(st
005380:  72 69 6E 67 31 2C 73 74 72 69 6E 67 32 29 3B 0D    ring1,string2);.
005390:  0A 3B 0D 0A 73 74 72 70 6F 73 3A 09 63 73 65 63    .;..strpos:.csec
0053A0:  74 0D 0A 09 63 61 6C 6C 09 61 72 67 6C 6F 61 64    t...call.argload
0053B0:  09 09 3B 67 65 74 20 61 72 67 73 20 6C 6F 61 64    ..;get args load
0053C0:  20 69 6E 74 6F 20 72 65 61 64 20 62 65 3D 31 20     into read be=1 
0053D0:  64 65 3D 32 20 68 6C 3D 33 0D 0A 09 70 75 73 68    de=2 hl=3...push
0053E0:  09 62 0D 0A 09 70 6F 70 09 68 0D 0A 09 6C 78 69    .b...pop.h...lxi
0053F0:  09 62 2C 31 09 09 3B 64 65 3D 73 74 72 69 6E 67    .b,1..;de=string
005400:  0D 0A 09 63 61 6C 6C 09 6D 6F 76 6D 65 6D 68 74    ...call.movmemht
005410:  09 3B 63 68 65 63 6B 20 74 6F 20 73 65 65 20 69    .;check to see i
005420:  66 20 73 6F 75 72 63 65 3C 64 65 73 74 0D 0A 09    f source<dest...
005430:  6A 63 09 6D 6F 76 6D 65 6D 74 09 09 3B 6D 6F 76    jc.movmemt..;mov
005440:  65 20 74 69 61 6C 20 66 69 72 73 74 0D 0A 09 6D    e tial first...m
005450:  76 69 09 61 2C 32 09 09 3B 63 68 65 63 6B 20 74    vi.a,2..;check t
005460:  6F 20 73 65 65 20 69 66 20 7A 38 30 0D 0A 09 69    o see if z80...i
005470:  6E 72 09 61 0D 0A 09 6A 70 65 09 6D 6F 76 6D 65    nr.a...jpe.movme
005480:  6D 66 38 09 3B 38 30 38 30 20 64 6F 20 61 20 62    mf8.;8080 do a b
005490:  79 74 65 20 62 79 20 62 79 74 65 20 6D 6F 76 65    yte by byte move
0054A0:  0D 0A 09 64 77 09 30 62 30 65 64 68 0D 0A 09 72    ...dw.0b0edh...r
0054B0:  65 74 0D 0A 6D 6F 76 6D 65 6D 66 38 3A 0D 0A 09    et..movmemf8:...
0054C0:  6D 6F 76 09 61 2C 6D 09 09 3B 67 65 74 20 73 6F    mov.a,m..;get so
0054D0:  75 72 63 65 20 62 79 74 65 0D 0A 09 73 74 61 78    urce byte...stax
0054E0:  09 64 09 09 3B 73 61 76 65 20 62 79 74 65 20 69    .d..;save byte i
0054F0:  6E 20 6F 62 6A 65 63 74 20 62 75 66 66 65 72 0D    n object buffer.
005500:  0A 09 69 6E 78 09 68 09 09 3B 6D 6F 76 65 20 6F    ..inx.h..;move o
005510:  62 6A 65 63 74 20 70 6F 69 6E 74 65 72 20 75 70    bject pointer up
005520:  20 31 0D 0A 09 69 6E 78 09 64 09 09 3B 6D 6F 76     1...inx.d..;mov
005530:  65 20 73 6F 75 72 63 65 20 70 6F 69 6E 74 65 72    e source pointer
005540:  20 75 70 20 31 20 62 79 74 65 0D 0A 09 64 63 78     up 1 byte...dcx
005550:  09 62 09 09 3B 73 75 62 74 72 61 63 74 20 31 20    .b..;subtract 1 
005560:  66 72 6F 6D 20 63 6F 75 6E 74 0D 0A 09 6D 6F 76    from count...mov
005570:  09 61 2C 62 09 09 3B 73 65 65 20 69 66 20 64 6F    .a,b..;see if do
005580:  6E 65 0D 0A 09 6F 72 61 09 63 0D 0A 09 6A 6E 7A    ne...ora.c...jnz
005590:  09 6D 6F 76 6D 65 6D 66 38 09 3B 6E 6F 20 6B 65    .movmemf8.;no ke
0055A0:  65 70 20 6F 6E 20 6C 6F 6F 70 69 6E 67 0D 0A 09    ep on looping...
0055B0:  72 65 74 0D 0A 6D 6F 76 6D 65 6D 74 3A 0D 0A 09    ret..movmemt:...
0055C0:  64 63 78 09 62 09 09 3B 74 61 69 6C 20 66 69 72    dcx.b..;tail fir
0055D0:  73 74 2E 20 63 6F 6D 70 75 74 65 20 6E 65 77 20    st. compute new 
0055E0:  73 6F 75 72 63 65 0D 0A 09 64 61 64 09 62 09 09    source...dad.b..
0055F0:  3B 61 6E 64 20 64 65 73 74 69 6E 61 74 69 6F 6E    ;and destination
005600:  32 2C 20 68 6C 3D 73 74 72 69 6E 67 31 20 62 63    2, hl=string1 bc
005610:  3D 30 0D 0A 09 78 63 68 67 0D 0A 73 74 72 70 6F    =0...xchg..strpo
005620:  73 31 3A 0D 0A 09 6C 64 61 78 09 64 09 09 3B 67    s1:...ldax.d..;g
005630:  65 74 20 63 68 61 72 61 63 74 65 72 20 74 6F 20    et character to 
005640:  63 68 65 63 6B 0D 0A 09 6F 72 61 09 61 09 09 3B    check...ora.a..;
005650:  63 68 65 63 6B 20 74 6F 20 73 65 65 20 69 66 20    check to see if 
005660:  65 6E 64 20 6F 66 20 73 74 72 69 6E 67 0D 0A 09    end of string...
005670:  6A 7A 09 73 74 72 70 6F 73 35 09 09 3B 65 6E 64    jz.strpos5..;end
005680:  20 6F 66 20 73 74 72 69 6E 67 31 20 73 74 72 69     of string1 stri
005690:  6E 67 20 32 20 6E 6F 74 20 66 6F 75 6E 64 20 69    ng 2 not found i
0056A0:  6E 20 73 74 72 69 6E 67 31 0D 0A 09 63 6D 70 09    n string1...cmp.
0056B0:  6D 09 09 3B 69 73 20 69 74 20 65 71 75 61 6C 20    m..;is it equal 
0056C0:  74 6F 20 73 74 72 69 6E 67 32 20 63 68 61 72 61    to string2 chara
0056D0:  63 74 65 72 20 31 0D 0A 09 6A 7A 09 73 74 72 70    cter 1...jz.strp
0056E0:  6F 73 32 09 09 3B 79 65 73 2E 2E 2E 0D 0A 09 69    os2..;yes......i
0056F0:  6E 78 09 64 09 09 3B 6E 6F 20 61 64 64 20 31 20    nx.d..;no add 1 
005700:  74 6F 20 73 74 72 69 6E 67 20 31 20 70 6F 69 6E    to string 1 poin
005710:  74 65 72 0D 0A 09 69 6E 78 09 62 09 09 3B 61 64    ter...inx.b..;ad
005720:  64 20 31 20 74 6F 20 6F 66 66 73 65 74 20 70 6F    d 1 to offset po
005730:  69 6E 74 65 72 0D 0A 09 6A 6D 70 09 73 74 72 70    inter...jmp.strp
005740:  6F 73 31 09 09 3B 6C 6F 6F 70 20 74 69 6C 6C 20    os1..;loop till 
005750:  65 6E 64 20 6F 66 20 73 74 72 69 6E 67 31 20 6F    end of string1 o
005760:  72 20 73 74 72 69 6E 67 32 20 66 6F 75 6E 64 0D    r string2 found.
005770:  0A 73 74 72 70 6F 73 32 3A 0D 0A 09 70 75 73 68    .strpos2:...push
005780:  09 68 09 09 3B 73 61 76 65 20 73 74 72 61 74 69    .h..;save strati
005790:  6E 67 20 61 64 64 72 65 73 73 20 6F 66 20 73 74    ng address of st
0057A0:  72 69 6E 67 20 32 31 0D 0A 09 70 75 73 68 09 64    ring 21...push.d
0057B0:  09 09 3B 73 61 76 65 20 63 75 72 72 65 6E 74 20    ..;save current 
0057C0:  61 64 64 72 65 73 73 20 6F 66 20 73 74 72 69 6E    address of strin
0057D0:  67 20 31 0D 0A 73 74 72 70 6F 73 33 3A 0D 0A 09    g 1..strpos3:...
0057E0:  69 6E 78 09 64 0D 0A 09 69 6E 78 09 68 0D 0A 09    inx.d...inx.h...
0057F0:  6D 6F 76 09 61 2C 6D 09 09 3B 67 65 74 20 63 68    mov.a,m..;get ch
005800:  20 61 64 64 72 65 73 73 0D 0A 09 78 63 68 67 0D     address...xchg.
005810:  0A 09 64 61 64 09 62 0D 0A 09 78 63 68 67 0D 0A    ..dad.b...xchg..
005820:  09 6D 76 69 09 61 2C 32 09 09 3B 63 68 65 63 6B    .mvi.a,2..;check
005830:  20 74 6F 20 73 65 65 20 69 66 20 7A 38 30 0D 0A     to see if z80..
005840:  09 69 6E 72 09 61 0D 0A 09 6A 70 65 09 6D 6F 76    .inr.a...jpe.mov
005850:  6D 65 6D 74 38 09 3B 38 30 38 30 20 64 6F 20 61    memt8.;8080 do a
005860:  20 62 79 74 65 20 62 79 20 62 79 74 65 20 6D 6F     byte by byte mo
005870:  76 65 0D 0A 09 64 77 09 30 62 38 65 64 68 0D 0A    ve...dw.0b8edh..
005880:  09 72 65 74 0D 0A 6D 6F 76 6D 65 6D 74 38 3A 0D    .ret..movmemt8:.
005890:  0A 09 6D 6F 76 09 61 2C 6D 09 09 3B 67 65 74 20    ..mov.a,m..;get 
0058A0:  73 6F 75 72 63 65 20 62 79 74 65 0D 0A 09 73 74    source byte...st
0058B0:  61 78 09 64 09 09 3B 73 61 76 65 20 6F 62 6A 65    ax.d..;save obje
0058C0:  63 74 20 62 79 74 65 0D 0A 09 64 63 78 09 68 09    ct byte...dcx.h.
0058D0:  09 3B 6D 6F 76 65 20 74 6F 20 6E 65 78 74 20 62    .;move to next b
0058E0:  79 74 65 20 6F 66 20 73 6F 75 72 63 65 20 62 75    yte of source bu
0058F0:  66 66 65 72 0D 0A 09 64 63 78 09 64 09 09 3B 6D    ffer...dcx.d..;m
005900:  6F 76 65 20 74 6F 20 6E 65 78 74 20 62 79 74 65    ove to next byte
005910:  20 6F 66 20 6F 62 6A 65 63 74 20 62 75 66 66 65     of object buffe
005920:  72 0D 0A 09 64 63 78 09 62 09 09 3B 73 75 62 74    r...dcx.b..;subt
005930:  72 61 63 74 20 31 20 66 72 6F 6D 20 63 6F 75 6E    ract 1 from coun
005940:  74 0D 0A 09 6D 6F 76 09 61 2C 62 09 09 3B 63 65    t...mov.a,b..;ce
005950:  68 63 6B 20 74 6F 20 73 65 65 20 69 66 20 61 6C    hck to see if al
005960:  6C 20 64 6F 6E 65 0D 0A 09 6F 72 61 09 63 0D 0A    l done...ora.c..
005970:  09 6A 6E 7A 09 6D 6F 76 6D 65 6D 74 38 09 3B 6E    .jnz.movmemt8.;n
005980:  6F 20 6B 65 65 70 20 6F 6E 20 6C 6F 6F 70 69 6E    o keep on loopin
005990:  67 0D 0A 09 72 65 74 0D 0A 6D 6F 76 6D 65 6D 68    g...ret..movmemh
0059A0:  74 3A 0D 0A 09 6D 6F 76 09 61 2C 68 0D 0A 09 63    t:...mov.a,h...c
0059B0:  6D 70 09 64 0D 0A 09 72 6E 7A 0D 0A 09 6D 6F 76    mp.d...rnz...mov
0059C0:  09 61 2C 6C 0D 0A 09 63 6D 70 09 65 0D 0A 09 72    .a,l...cmp.e...r
0059D0:  65 74 0D 0A 3B 0D 0A 3B 09 6F 75 74 70 0D 0A 3B    et..;..;.outp..;
0059E0:  0D 0A 3B 09 66 75 6E 63 74 69 6F 6E 3A 20 74 6F    ..;.function: to
0059F0:  20 6F 75 74 70 75 74 20 31 20 62 79 74 65 20 74     output 1 byte t
005A00:  61 72 61 63 74 65 72 20 66 72 6F 6D 20 73 74 72    aracter from str
005A10:  69 6E 67 20 32 0D 0A 09 6F 72 61 09 61 09 09 3B    ing 2...ora.a..;
005A20:  73 65 74 20 6D 61 63 68 69 6E 65 20 66 6C 61 67    set machine flag
005A30:  73 0D 0A 09 6A 7A 09 73 74 72 70 6F 73 34 09 09    s...jz.strpos4..
005A40:  3B 65 6E 64 20 6F 66 20 73 74 72 69 6E 67 32 20    ;end of string2 
005A50:  66 6F 75 6E 64 20 6D 75 73 74 20 62 65 20 61 20    found must be a 
005A60:  6D 61 74 68 63 0D 0A 09 6C 64 61 78 09 64 09 09    mathc...ldax.d..
005A70:  3B 67 65 74 20 61 72 67 31 0D 0A 09 63 6D 70 09    ;get arg1...cmp.
005A80:  6D 09 09 3B 69 73 20 74 68 69 73 20 63 68 61 72    m..;is this char
005A90:  61 63 74 65 72 20 61 20 6D 61 74 63 68 0D 0A 09    acter a match...
005AA0:  6A 7A 09 73 74 72 70 6F 73 33 20 0D 0A 09 70 6F    jz.strpos3 ...po
005AB0:  70 09 64 09 09 3B 72 65 73 74 6F 72 65 20 70 6F    p.d..;restore po
005AC0:  69 6E 74 65 72 20 66 6F 72 20 73 74 72 69 6E 67    inter for string
005AD0:  31 20 61 6E 64 20 73 74 72 69 6E 67 20 32 0D 0A    1 and string 2..
005AE0:  09 70 6F 70 09 68 0D 0A 09 69 6E 78 09 64 09 09    .pop.h...inx.d..
005AF0:  3B 61 64 64 20 31 20 74 6F 20 73 74 72 69 6E 67    ;add 1 to string
005B00:  20 70 6F 69 6E 74 65 72 0D 0A 09 69 6E 78 09 62     pointer...inx.b
005B10:  09 09 3B 61 64 64 20 31 20 74 6F 20 6F 66 66 73    ..;add 1 to offs
005B20:  65 74 20 69 6E 20 73 74 72 69 6E 67 31 0D 0A 09    et in string1...
005B30:  6A 6D 70 09 73 74 72 70 6F 73 31 09 09 3B 6C 6F    jmp.strpos1..;lo
005B40:  6F 70 20 74 69 6C 6C 20 65 6E 64 20 6F 66 20 73    op till end of s
005B50:  74 72 69 6E 67 20 31 0D 0A 73 74 72 70 6F 73 34    tring 1..strpos4
005B60:  3A 0D 0A 09 6D 6F 76 09 6C 2C 63 09 09 3B 73 74    :...mov.l,c..;st
005B70:  72 69 6E 67 20 66 6F 75 6E 64 20 72 65 74 75 72    ring found retur
005B80:  6E 20 6F 66 66 73 65 74 20 66 6F 72 20 63 61 6C    n offset for cal
005B90:  6C 65 72 0D 0A 09 6D 6F 76 09 68 2C 62 0D 0A 09    ler...mov.h,b...
005BA0:  70 6F 70 09 62 0D 0A 09 70 6F 70 09 62 0D 0A 09    pop.b...pop.b...
005BB0:  72 65 74 0D 0A 73 74 72 70 6F 73 35 3A 0D 0A 09    ret..strpos5:...
005BC0:  6C 78 69 09 68 2C 30 09 09 3B 73 74 72 69 6E 67    lxi.h,0..;string
005BD0:  20 6E 6F 74 20 66 6F 75 6E 64 0D 0A 09 72 65 74     not found...ret
005BE0:  0D 0A 3B 0D 0A 3B 09 73 65 74 6D 65 6D 0D 0A 3B    ..;..;.setmem..;
005BF0:  0D 0A 3B 09 66 75 6E 63 74 69 6F 6E 3A 20 74 6F    ..;.function: to
005C00:  6F 20 61 20 64 61 74 61 20 70 6F 72 74 0D 0A 3B    o a data port..;
005C10:  0D 0A 3B 09 63 61 6C 6C 69 6E 67 20 66 6F 72 6D    ..;.calling form
005C20:  61 74 20 66 72 6F 6D 20 22 43 22 0D 0A 3B 09 6F    at from "C"..;.o
005C30:  75 74 70 28 70 6F 72 74 2C 64 61 74 61 29 0D 0A    utp(port,data)..
005C40:  3B 0D 0A 6F 75 74 70 3A 09 63 73 65 63 74 0D 0A    ;..outp:.csect..
005C50:  09 70 6F 70 09 62 09 09 3B 67 65 74 20 72 65 74    .pop.b..;get ret
005C60:  75 72 6E 20 61 64 64 72 65 73 73 0D 0A 09 70 6F    urn address...po
005C70:  70 09 68 09 09 3B 67 65 74 20 64 61 74 61 20 66    p.h..;get data f
005C80:  6F 72 20 70 6F 72 74 0D 0A 09 70 6F 70 09 64 09    or port...pop.d.
005C90:  09 3B 67 65 74 20 70 6F 72 74 20 6E 75 6D 62 65    .;get port numbe
005CA0:  72 0D 0A 09 70 75 73 68 09 64 09 09 3B 72 65 73    r...push.d..;res
005CB0:  74 6F 72 65 20 6D 61 63 68 69 6E 65 20 73 74 61    tore machine sta
005CC0:  63 6B 0D 0A 09 70 75 73 68 09 68 0D 0A 09 70 75    ck...push.h...pu
005CD0:  73 68 09 62 0D 0A 09 6D 6F 76 09 61 2C 65 09 09    sh.b...mov.a,e..
005CE0:  3B 67 65 74 20 70 6F 72 74 20 6E 75 6D 62 65 72    ;get port number
005CF0:  0D 0A 09 73 74 61 09 6F 75 74 70 31 2B 31 09 09    ...sta.outp1+1..
005D00:  3B 73 61 76 65 20 70 6F 72 74 20 6E 75 6D 62 65    ;save port numbe
005D10:  72 0D 0A 09 6D 6F 76 09 61 2C 6C 09 09 3B 67 65    r...mov.a,l..;ge
005D20:  74 20 64 61 74 61 20 74 6F 20 73 65 6E 64 0D 0A    t data to send..
005D30:  6F 75 74 70 31 3A 0D 0A 09 6F 75 74 09 30 09 09    outp1:...out.0..
005D40:  3B 73 65 6E 64 20 64 61 74 61 20 74 6F 20 70 6F    ;send data to po
005D50:  72 74 0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 69    rt...ret..;..;.i
005D60:  6E 70 0D 0A 3B 0D 0A 3B 09 66 75 6E 63 74 69 6F    np..;..;.functio
005D70:  6E 3A 20 74 6F 20 69 6E 70 75 74 20 31 20 62 79    n: to input 1 by
005D80:  74 65 20 66 72 6F 6D 20 64 61 74 61 20 70 6F 72    te from data por
005D90:  74 20 61 6E 64 20 72 65 74 75 72 6E 20 74 6F 20    t and return to 
005DA0:  63 61 6C 6C 65 72 0D 0A 3B 0D 0A 3B 09 63 61 6C    caller..;..;.cal
005DB0:  6C 69 6E 67 20 66 6F 72 6D 61 74 20 69 6E 20 22    ling format in "
005DC0:  63 22 0D 0A 3B 09 64 61 74 61 3D 69 6E 70 28 70    c"..;.data=inp(p
005DD0:  6F 72 74 29 3B 0D 0A 3B 0D 0A 69 6E 70 3A 09 63    ort);..;..inp:.c
005DE0:  73 65 63 74 0D 0A 09 6D 6F 76 09 61 2C 6C 09 09    sect...mov.a,l..
005DF0:  3B 67 65 74 20 70 6F 72 74 20 6E 75 6D 62 65 72    ;get port number
005E00:  20 66 69 6C 6C 20 61 20 62 6C 6F 63 6B 20 6F 66     fill a block of
005E10:  20 6D 65 6D 6F 72 79 20 77 69 74 68 20 61 20 67     memory with a g
005E20:  69 76 65 6E 20 63 6F 6E 73 74 61 6E 74 0D 0A 3B    iven constant..;
005E30:  0D 0A 3B 09 63 61 6C 6C 69 6E 67 20 66 6F 72 6D    ..;.calling form
005E40:  61 74 20 69 6E 20 22 63 22 0D 0A 3B 09 73 65 74    at in "c"..;.set
005E50:  6D 65 6D 28 61 64 64 72 65 73 73 2C 63 6F 75 6E    mem(address,coun
005E60:  74 2C 63 6F 6E 73 74 61 6E 74 29 3B 0D 0A 3B 0D    t,constant);..;.
005E70:  0A 73 65 74 6D 65 6D 3A 09 63 73 65 63 74 0D 0A    .setmem:.csect..
005E80:  09 70 6F 70 09 62 09 09 3B 67 65 74 20 72 65 74    .pop.b..;get ret
005E90:  75 72 6E 20 61 64 64 72 65 73 73 0D 0A 09 70 6F    urn address...po
005EA0:  70 09 68 09 09 3B 67 65 74 20 63 6F 6E 73 74 61    p.h..;get consta
005EB0:  6E 74 0D 0A 09 6D 6F 76 09 61 2C 6C 09 09 3B 70    nt...mov.a,l..;p
005EC0:  75 74 20 63 6F 6E 73 74 61 6E 74 20 69 6E 20 61    ut constant in a
005ED0:  0D 0A 09 70 6F 70 09 62 09 09 3B 67 65 74 20 63    ...pop.b..;get c
005EE0:  6F 75 6E 74 0D 0A 09 70 6F 70 09 64 09 09 3B 67    ount...pop.d..;g
005EF0:  65 74 20 61 64 64 72 65 73 73 0D 0A 09 6C 78 69    et address...lxi
005F00:  09 68 2C 38 09 09 3B 6F 66 66 73 65 74 20 69 6E    .h,8..;offset in
005F10:  20 74 6F 20 70 75 74 20 73 74 61 63 6B 20 62 61     to put stack ba
005F20:  63 6B 0D 0A 09 64 61 64 09 73 70 0D 0A 09 73 70    ck...dad.sp...sp
005F30:  68 6C 09 09 09 3B 72 65 73 74 6F 72 65 20 73 74    hl...;restore st
005F40:  61 63 6B 20 70 6F 69 6E 74 65 72 0D 0A 09 6D 6F    ack pointer...mo
005F50:  76 09 6C 2C 61 09 09 3B 70 6C 61 63 65 20 74 6F    v.l,a..;place to
005F60:  20 73 61 76 65 20 63 6F 6E 73 74 61 6E 74 0D 0A     save constant..
005F70:  73 65 74 6D 65 6D 31 3A 0D 0A 09 6D 6F 76 09 61    setmem1:...mov.a
005F80:  2C 62 09 09 3B 63 68 65 63 6B 20 74 6F 20 73 65    ,b..;check to se
005F90:  65 20 69 66 20 63 6F 75 6E 74 20 69 73 20 7A 65    e if count is ze
005FA0:  72 6F 0D 0A 09 6F 72 61 09 63 0D 0A 09 72 7A 09    ro...ora.c...rz.
005FB0:  09 09 3B 61 6C 6C 20 64 6F 6E 65 20 77 69 74 68    ..;all done with
005FC0:  20 6D 6F 76 65 0D 0A 09 6D 6F 76 09 61 2C 6C 09     move...mov.a,l.
005FD0:  09 3B 67 65 74 20 63 6F 6E 73 74 61 6E 74 20 74    .;get constant t
005FE0:  6F 20 73 74 6F 72 65 0D 0A 09 73 74 61 78 09 64    o store...stax.d
005FF0:  09 09 3B 73 65 74 20 6D 65 6D 6F 72 79 20 6C 6F    ..;set memory lo
006000:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
006010:  05 00 01 00 02 09 52 E5 05 00 C1 02 00 00 00 02    ......R.........
006020:  05 00 C6 02 00 00 00 02 05 00 C2 02 00 00 00 02    ................
006030:  05 00 C7 02 00 00 00 02 05 00 C3 02 00 00 00 02    ................
006040:  05 00 C8 02 00 00 00 02 05 00 C4 02 00 00 00 02    ................
006050:  05 00 C9 02 00 00 00 02 05 00 C5 02 00 00 00 02    ................
006060:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
006070:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
006080:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
006090:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0060A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0060B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0060C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0060D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0060E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0060F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
006100:  0D 0A 09 73 74 61 09 69 6E 70 31 2B 31 09 09 3B    ...sta.inp1+1..;
006110:  73 61 76 65 20 70 6F 72 74 20 6E 75 6D 62 65 72    save port number
006120:  20 66 6F 72 20 69 6E 70 75 74 0D 0A 69 6E 70 31     for input..inp1
006130:  3A 0D 0A 09 69 6E 09 30 09 09 3B 69 6E 70 75 74    :...in.0..;input
006140:  20 64 61 74 61 20 66 72 6F 6D 20 70 6F 72 74 0D     data from port.
006150:  0A 09 6D 76 69 09 68 2C 30 09 09 3B 7A 65 72 6F    ..mvi.h,0..;zero
006160:  20 68 69 67 68 20 62 79 74 65 20 6F 66 20 6E 75     high byte of nu
006170:  6D 62 65 72 0D 0A 09 6D 6F 76 09 6C 2C 61 09 09    mber...mov.l,a..
006180:  3B 70 75 74 20 64 61 74 61 20 69 6E 20 72 65 67    ;put data in reg
006190:  20 66 6F 72 20 22 63 22 0D 0A 09 72 65 74 0D 0A     for "c"...ret..
0061A0:  3B 09 0D 0A 3B 09 70 75 74 73 0D 0A 3B 0D 0A 3B    ;...;.puts..;..;
0061B0:  09 66 75 6E 63 74 69 6F 6E 3A 20 74 6F 20 70 72    .function: to pr
0061C0:  69 6E 74 20 61 20 73 74 72 69 6E 67 20 74 6F 20    int a string to 
0061D0:  63 6F 6E 73 6F 6C 65 20 65 6E 64 69 6E 67 20 77    console ending w
0061E0:  69 74 68 20 61 20 6E 75 6C 6C 0D 0A 3B 0D 0A 3B    ith a null..;..;
0061F0:  09 63 61 6C 6C 20 66 6F 72 6D 61 74 20 66 72 6F    .call format fro
006200:  6D 20 22 43 22 0D 0A 3B 0D 0A 3B 09 70 75 74 73    m "C"..;..;.puts
006210:  28 73 74 72 69 6E 67 29 3B 0D 0A 3B 0D 0A 70 75    (string);..;..pu
006220:  74 73 3A 09 63 73 65 63 74 0D 0A 09 70 75 73 68    ts:.csect...push
006230:  09 68 09 09 3B 73 61 76 65 20 63 61 6C 6C 69 6E    .h..;save callin
006240:  67 20 61 64 64 72 65 73 73 20 69 6E 20 73 74 61    g address in sta
006250:  63 6B 0D 0A 70 75 74 73 31 3A 20 20 6D 6F 76 09    ck..puts1:  mov.
006260:  61 2C 6D 09 09 3B 67 65 74 20 63 68 61 72 61 63    a,m..;get charac
006270:  74 65 72 20 74 6F 20 70 72 69 6E 74 0D 0A 09 6F    ter to print...o
006280:  72 61 09 61 09 09 3B 63 68 65 63 6B 20 66 6F 72    ra.a..;check for
006290:  20 7A 65 72 6F 0D 0A 09 6A 7A 09 70 75 74 73 32     zero...jz.puts2
0062A0:  09 09 3B 69 66 20 64 6F 6E 65 20 72 65 74 75 72    ..;if done retur
0062B0:  6E 0D 0A 09 70 75 73 68 09 68 09 09 3B 73 61 76    n...push.h..;sav
0062C0:  65 20 70 6F 69 6E 74 65 72 20 66 6F 72 20 6C 61    e pointer for la
0062D0:  74 65 72 20 75 73 65 72 0D 0A 09 6D 6F 76 09 6C    ter user...mov.l
0062E0:  2C 61 09 09 3B 70 75 74 20 63 68 61 72 61 63 74    ,a..;put charact
0062F0:  65 72 20 69 6E 20 72 65 67 20 66 6F 72 20 70 75    er in reg for pu
006300:  6D 62 65 72 20 6F 66 20 63 68 61 72 61 63 74 65    mber of characte
006310:  72 20 69 6E 20 73 74 72 69 6E 67 0D 0A 09 69 6E    r in string...in
006320:  78 09 64 0D 0A 67 65 74 73 31 3A 0D 0A 09 6C 64    x.d..gets1:...ld
006330:  61 78 09 64 09 09 3B 67 65 74 20 63 68 61 72 61    ax.d..;get chara
006340:  63 74 65 72 20 66 72 6F 6D 20 69 6E 70 75 74 20    cter from input 
006350:  62 75 66 66 65 72 0D 0A 09 6D 6F 76 09 6D 2C 61    buffer...mov.m,a
006360:  09 09 3B 73 61 76 65 20 63 68 61 72 61 63 74 65    ..;save characte
006370:  72 20 69 6E 20 62 75 66 66 65 72 0D 0A 09 69 6E    r in buffer...in
006380:  78 09 68 09 09 3B 6D 6F 76 65 20 70 6F 69 6E 74    x.h..;move point
006390:  65 72 20 74 6F 20 6E 65 78 74 20 62 79 74 65 0D    er to next byte.
0063A0:  0A 09 69 6E 78 09 64 09 0D 0A 09 64 63 72 09 62    ..inx.d....dcr.b
0063B0:  09 09 3B 73 65 65 20 69 66 20 61 6C 6C 20 64 6F    ..;see if all do
0063C0:  6E 65 20 77 69 74 68 20 6D 6F 76 65 0D 0A 09 6A    ne with move...j
0063D0:  6E 7A 09 67 65 74 73 31 20 20 20 20 20 09 3B 6E    nz.gets1     .;n
0063E0:  6F 20 6B 65 65 70 20 6F 6E 20 6C 6F 6F 70 69 6E    o keep on loopin
0063F0:  67 0D 0A 67 65 74 73 32 3A 0D 0A 09 6D 76 69 09    g..gets2:...mvi.
006400:  6D 2C 30 09 09 3B 70 75 74 20 65 6E 64 69 6E 67    m,0..;put ending
006410:  20 7A 65 72 6F 20 69 6E 20 73 74 72 69 6E 67 6F     zero in stringo
006420:  0D 0A 09 6D 76 69 09 63 2C 32 09 09 3B 63 70 6D    ...mvi.c,2..;cpm
006430:  20 6F 75 74 70 75 74 20 63 68 61 72 61 63 74 65     output characte
006440:  72 20 66 75 6E 63 74 69 6F 6E 0D 0A 09 6D 76 69    r function...mvi
006450:  09 65 2C 30 61 68 09 09 3B 63 68 61 72 61 63 74    .e,0ah..;charact
006460:  65 72 20 74 6F 20 6F 75 74 70 75 74 0D 0A 09 63    er to output...c
006470:  61 6C 6C 09 62 64 6F 73 09 09 3B 6F 75 74 70 75    all.bdos..;outpu
006480:  74 20 61 20 6C 69 6E 65 66 65 65 64 0D 0A 09 70    t a linefeed...p
006490:  6F 70 09 68 09 09 3B 67 65 74 20 61 64 64 72 65    op.h..;get addre
0064A0:  73 73 20 6F 66 20 69 70 75 74 20 73 74 72 69 6E    ss of iput strin
0064B0:  67 0D 0A 09 72 65 74 09 09 09 3B 61 6C 6C 20 64    g...ret...;all d
0064C0:  6F 6E 65 20 72 65 74 75 72 6E 20 74 6F 20 63 61    one return to ca
0064D0:  6C 6C 65 72 75 0D 0A 3B 0D 0A 3B 09 6B 62 73 74    lleru..;..;.kbst
0064E0:  61 74 0D 0A 3B 0D 0A 3B 09 66 75 6E 74 69 6F 6E    at..;..;.funtion
0064F0:  3A 20 74 6F 20 67 65 74 20 73 74 61 74 75 73 20    : to get status 
006500:  73 68 0D 0A 09 63 61 6C 6C 09 70 75 74 63 68 09    sh...call.putch.
006510:  09 3B 70 72 69 6E 74 20 63 68 61 72 61 63 74 65    .;print characte
006520:  72 20 6F 6E 20 63 6F 6E 73 6F 6C 65 0D 0A 09 70    r on console...p
006530:  6F 70 09 68 09 09 3B 67 65 74 20 61 64 64 72 65    op.h..;get addre
006540:  73 73 20 6F 66 20 63 68 61 72 61 63 74 65 72 20    ss of character 
006550:  62 61 63 6B 0D 0A 09 69 6E 78 09 68 09 09 3B 6D    back...inx.h..;m
006560:  6F 76 65 20 74 6F 20 6E 65 78 74 20 63 68 61 72    ove to next char
006570:  61 63 74 65 72 0D 0A 09 6A 6D 70 09 70 75 74 73    acter...jmp.puts
006580:  31 09 09 3B 6C 6F 6F 70 20 74 69 6C 6C 20 64 6F    1..;loop till do
006590:  6E 65 20 77 69 74 68 20 73 74 72 69 6E 67 0D 0A    ne with string..
0065A0:  70 75 74 73 32 3A 0D 0A 09 70 6F 70 09 68 09 09    puts2:...pop.h..
0065B0:  3B 67 65 74 20 61 64 64 72 65 73 73 20 6F 66 20    ;get address of 
0065C0:  73 74 61 72 74 20 6F 66 20 73 74 72 69 6E 67 0D    start of string.
0065D0:  0A 09 72 65 74 09 09 09 3B 72 65 74 75 72 6E 20    ..ret...;return 
0065E0:  74 6F 20 63 61 6C 6C 65 72 0D 0A 3B 0D 0A 3B 09    to caller..;..;.
0065F0:  63 6F 6E 73 6F 6C 65 20 69 2F 6F 20 66 75 6E 63    console i/o func
006600:  74 69 6F 6E 73 0D 0A 3B 0D 0A 3B 09 70 75 74 63    tions..;..;.putc
006610:  68 0D 0A 3B 0D 0A 3B 09 6F 75 74 70 75 74 20 31    h..;..;.output 1
006620:  20 63 68 61 72 61 63 74 65 72 20 74 6F 20 63 6F     character to co
006630:  6E 73 6F 6C 65 20 61 6E 64 20 64 6F 20 6E 6F 74    nsole and do not
006640:  20 63 68 65 63 6B 20 0D 0A 3B 09 74 6F 20 73 65     check ..;.to se
006650:  65 20 69 66 20 63 68 61 72 61 63 74 65 72 20 69    e if character i
006660:  73 20 72 65 61 64 79 20 61 74 20 63 6F 6E 73 6F    s ready at conso
006670:  6C 65 20 69 6E 70 75 74 0D 0A 3B 0D 0A 3B 09 63    le input..;..;.c
006680:  61 6C 6C 69 6E 67 20 66 6F 72 6D 61 74 20 66 72    alling format fr
006690:  6F 6D 20 22 43 22 0D 0A 3B 09 70 75 74 63 68 28    om "C"..;.putch(
0066A0:  63 29 0D 0A 3B 0D 0A 70 75 74 63 68 3A 09 63 73    c)..;..putch:.cs
0066B0:  65 63 74 0D 0A 09 6D 6F 76 09 61 2C 6C 09 09 3B    ect...mov.a,l..;
0066C0:  67 65 74 20 63 68 61 72 61 63 74 65 72 20 74 6F    get character to
0066D0:  20 70 72 69 6E 74 0D 0A 09 63 70 69 09 30 61 68     print...cpi.0ah
0066E0:  09 09 3B 63 68 65 63 6B 20 66 6F 72 20 6C 69 6E    ..;check for lin
0066F0:  65 20 66 65 65 64 0D 0A 09 6A 6E 7A 09 70 75 74    e feed...jnz.put
006700:  6F 66 20 63 70 6D 20 63 6F 6E 73 6F 6C 65 20 72    of cpm console r
006710:  65 74 75 72 6E 73 0D 0A 3B 09 74 72 75 65 20 6F    eturns..;.true o
006720:  72 20 31 20 69 66 20 63 6F 6E 73 6F 6C 65 20 63    r 1 if console c
006730:  68 61 72 61 63 74 65 72 20 69 73 20 72 65 61 64    haracter is read
006740:  79 20 6F 72 0D 0A 3B 09 30 20 69 66 20 63 68 61    y or..;.0 if cha
006750:  72 61 63 74 65 72 20 69 73 20 6E 6F 74 20 72 65    racter is not re
006760:  61 64 79 0D 0A 3B 0D 0A 3B 09 63 61 6C 6C 20 66    ady..;..;.call f
006770:  6F 72 6D 61 74 20 66 6F 72 20 63 0D 0A 3B 09 6B    ormat for c..;.k
006780:  62 73 74 61 74 28 29 0D 0A 3B 0D 0A 6B 62 73 74    bstat()..;..kbst
006790:  61 74 3A 20 63 73 65 63 74 0D 0A 09 6D 76 69 09    at: csect...mvi.
0067A0:  63 2C 32 09 09 3B 63 70 6D 20 66 75 6E 63 74 69    c,2..;cpm functi
0067B0:  6F 6E 20 6E 75 6D 62 65 72 20 66 6F 72 20 73 74    on number for st
0067C0:  61 74 75 73 20 63 68 65 63 6B 0D 0A 09 70 75 73    atus check...pus
0067D0:  68 09 62 09 09 3B 73 65 6E 64 20 6A 75 6D 70 20    h.b..;send jump 
0067E0:  6E 75 6D 62 65 72 20 6F 75 74 0D 0A 09 70 75 73    number out...pus
0067F0:  68 09 62 09 09 3B 61 72 67 0D 0A 09 63 61 6C 6C    h.b..;arg...call
006800:  09 62 69 6F 73 09 09 3B 63 61 6C 6C 20 62 69 6F    .bios..;call bio
006810:  73 20 63 6F 6E 73 2D 73 74 61 74 0D 0A 09 70 6F    s cons-stat...po
006820:  70 09 62 09 09 3B 72 65 6D 6F 76 65 20 61 72 67    p.b..;remove arg
006830:  73 20 66 72 6F 6D 20 73 74 61 63 6B 0D 0A 09 70    s from stack...p
006840:  6F 70 09 62 0D 0A 09 6D 6F 76 09 61 2C 6C 09 09    op.b...mov.a,l..
006850:  3B 67 65 74 20 72 65 74 75 72 6E 20 73 74 61 74    ;get return stat
006860:  75 73 20 66 72 6F 6D 20 62 69 6F 73 0D 0A 09 6F    us from bios...o
006870:  72 61 09 61 09 09 3B 73 65 74 20 6D 61 63 68 69    ra.a..;set machi
006880:  6E 65 20 73 74 61 74 75 73 20 72 65 67 2E 0D 0A    ne status reg...
006890:  09 6C 78 69 09 68 2C 30 09 09 3B 6D 61 6B 65 20    .lxi.h,0..;make 
0068A0:  69 74 20 66 61 6C 73 65 20 28 6B 65 79 62 6F 61    it false (keyboa
0068B0:  72 64 20 6E 6F 74 20 72 65 61 64 79 29 0D 0A 09    rd not ready)...
0068C0:  72 7A 09 09 09 3B 72 65 74 75 72 6E 20 74 6F 20    rz...;return to 
0068D0:  63 61 6C 6C 65 72 20 6B 65 79 62 6F 61 72 64 20    caller keyboard 
0068E0:  6E 6F 74 20 72 65 61 64 79 0D 0A 09 6C 78 69 09    not ready...lxi.
0068F0:  68 2C 31 09 09 3B 6B 65 79 62 6F 61 72 64 20 72    h,1..;keyboard r
006900:  63 68 31 09 09 3B 6E 6F 2E 2E 2E 2E 2E 0D 0A 09    ch1..;no........
006910:  6D 76 69 09 65 2C 30 64 68 09 09 3B 70 72 69 6E    mvi.e,0dh..;prin
006920:  74 20 72 65 74 75 72 6E 20 0D 0A 09 6D 76 69 09    t return ...mvi.
006930:  63 2C 32 09 09 3B 63 70 6D 20 70 72 69 6E 74 20    c,2..;cpm print 
006940:  6E 75 6D 62 65 72 20 66 75 6E 63 74 69 6F 6E 0D    number function.
006950:  0A 09 63 61 6C 6C 09 62 64 6F 73 09 09 3B 70 72    ..call.bdos..;pr
006960:  69 6E 74 20 63 68 61 72 61 72 63 65 72 20 74 6F    int chararcer to
006970:  20 63 6F 6E 73 6F 6C 65 0D 0A 09 6D 76 69 09 6C     console...mvi.l
006980:  2C 30 61 68 09 09 3B 70 72 69 6E 74 20 6C 69 6E    ,0ah..;print lin
006990:  65 20 66 65 65 64 0D 0A 70 75 74 63 68 31 3A 0D    e feed..putch1:.
0069A0:  0A 09 6D 6F 76 09 65 2C 6C 09 09 3B 70 75 74 20    ..mov.e,l..;put 
0069B0:  63 68 61 72 61 63 74 65 72 20 69 6E 20 63 6F 72    character in cor
0069C0:  72 65 63 74 20 72 65 67 20 66 6F 72 20 63 61 6C    rect reg for cal
0069D0:  6C 0D 0A 09 6D 76 69 09 63 2C 32 09 09 3B 63 70    l...mvi.c,2..;cp
0069E0:  6D 20 6F 75 74 70 75 74 20 66 75 6E 63 74 69 6F    m output functio
0069F0:  6E 0D 0A 09 63 61 6C 6C 09 62 64 6F 73 09 09 3B    n...call.bdos..;
006A00:  70 72 69 6E 74 20 63 68 61 72 61 63 74 65 72 20    print character 
006A10:  74 6F 20 63 6F 6E 73 6F 6C 65 0D 0A 09 72 65 74    to console...ret
006A20:  0D 0A 3B 0D 0A 3B 09 66 75 6E 63 74 69 6F 6E 3A    ..;..;.function:
006A30:  20 74 6F 20 67 65 74 20 31 20 63 68 61 72 61 63     to get 1 charac
006A40:  74 65 72 20 66 72 6F 6D 20 63 70 6D 20 63 6F 6E    ter from cpm con
006A50:  73 6F 6C 65 20 61 6E 64 20 72 65 74 75 72 6E 0D    sole and return.
006A60:  0A 3B 09 09 20 20 63 68 61 72 61 63 74 65 72 20    .;..  character 
006A70:  74 6F 20 63 61 6C 6C 65 72 0D 0A 3B 0D 0A 3B 09    to caller..;..;.
006A80:  63 61 6C 6C 69 6E 67 20 66 6F 72 6D 61 74 20 69    calling format i
006A90:  6E 20 22 43 22 0D 0A 3B 09 63 68 3D 67 65 74 63    n "C"..;.ch=getc
006AA0:  68 28 29 3B 0D 0A 3B 0D 0A 67 65 74 63 68 3A 20    h();..;..getch: 
006AB0:  20 63 73 65 63 74 0D 0A 09 6D 76 69 09 63 2C 31     csect...mvi.c,1
006AC0:  09 09 09 3B 63 70 6D 20 66 75 6E 63 74 69 6F 6E    ...;cpm function
006AD0:  20 6E 75 6D 62 65 72 20 66 6F 72 20 67 65 74 63     number for getc
006AE0:  68 0D 0A 09 63 61 6C 6C 09 62 64 6F 73 09 09 09    h...call.bdos...
006AF0:  3B 67 65 74 20 63 68 61 72 61 63 74 65 72 20 66    ;get character f
006B00:  65 61 64 79 0D 0A 09 72 65 74 09 09 09 3B 61 6C    eady...ret...;al
006B10:  6C 20 64 6F 6E 65 20 72 65 74 75 72 6E 20 74 6F    l done return to
006B20:  20 63 61 6C 6C 65 72 0D 0A 3B 0D 0A 3B 0D 0A 3B     caller..;..;..;
006B30:  09 6F 70 65 6E 0D 0A 3B 0D 0A 3B 09 66 75 6E 63    .open..;..;.func
006B40:  74 69 6F 6E 20 74 6F 20 62 75 69 6C 64 20 66 63    tion to build fc
006B50:  62 20 61 6E 64 20 74 72 79 20 74 6F 20 6F 70 65    b and try to ope
006B60:  6E 20 66 69 6C 65 0D 0A 3B 09 61 64 64 72 65 73    n file..;.addres
006B70:  73 20 6F 66 20 66 63 62 20 69 6E 20 64 65 20 77    s of fcb in de w
006B80:  68 69 6C 65 20 6E 61 6D 65 20 69 6E 20 68 6C 2E    hile name in hl.
006B90:  20 69 66 20 66 69 6C 65 0D 0A 3B 09 69 73 20 6F     if file..;.is o
006BA0:  70 65 6E 20 6F 6B 20 74 68 65 6E 20 30 20 69 73    pen ok then 0 is
006BB0:  20 72 65 74 75 72 6E 20 65 6C 73 65 20 2D 31 20     return else -1 
006BC0:  69 73 20 72 65 74 75 72 6E 0D 0A 3B 0D 0A 3B 09    is return..;..;.
006BD0:  63 61 6C 6C 69 6E 67 20 66 6F 72 6D 61 74 20 66    calling format f
006BE0:  72 6F 6D 20 22 43 22 0D 0A 3B 09 6F 70 65 6E 28    rom "C"..;.open(
006BF0:  66 63 62 2C 66 69 6C 65 6E 61 6D 65 29 0D 0A 3B    fcb,filename)..;
006C00:  0D 0A 6F 70 65 6E 3A 09 63 73 65 63 74 0D 0A 09    ..open:.csect...
006C10:  70 6F 70 09 62 09 09 3B 67 65 74 20 72 65 74 75    pop.b..;get retu
006C20:  72 6E 20 61 64 64 65 73 73 0D 0A 09 70 6F 70 09    rn addess...pop.
006C30:  68 09 09 3B 67 65 74 20 61 64 64 72 65 73 73 20    h..;get address 
006C40:  6F 66 20 66 69 6C 65 20 6E 61 6D 65 0D 0A 09 70    of file name...p
006C50:  6F 70 09 64 09 09 3B 61 64 64 72 65 73 73 20 6F    op.d..;address o
006C60:  66 20 66 63 62 0D 0A 09 70 75 73 68 09 64 09 09    f fcb...push.d..
006C70:  3B 70 75 74 20 64 61 74 61 20 62 61 63 6B 20 6F    ;put data back o
006C80:  6E 20 73 74 61 63 6B 0D 0A 09 70 75 73 68 09 68    n stack...push.h
006C90:  0D 0A 09 70 75 73 68 09 62 0D 0A 09 70 75 73 68    ...push.b...push
006CA0:  09 64 09 09 3B 70 75 74 20 61 64 64 72 65 73 73    .d..;put address
006CB0:  20 6F 66 20 66 63 62 20 69 6E 20 73 74 61 63 6B     of fcb in stack
006CC0:  0D 0A 09 70 75 73 68 09 68 09 09 3B 70 75 74 20    ...push.h..;put 
006CD0:  61 64 64 72 65 73 73 20 6F 66 20 66 69 6C 65 20    address of file 
006CE0:  6E 61 6D 65 20 69 6E 20 73 74 61 63 6B 0D 0A 09    name in stack...
006CF0:  63 61 6C 6C 09 73 65 74 66 63 62 09 09 3B 74 72    call.setfcb..;tr
006D00:  72 6F 6D 20 63 6F 6E 73 6F 6C 65 0D 0A 09 63 70    rom console...cp
006D10:  69 09 30 64 68 09 09 09 3B 63 68 65 63 6B 20 74    i.0dh...;check t
006D20:  6F 20 73 65 65 20 69 66 20 61 20 72 65 74 75 72    o see if a retur
006D30:  6E 0D 0A 09 6A 6E 7A 09 67 65 74 63 68 31 20 20    n...jnz.getch1  
006D40:  09 09 3B 6E 6F 20 63 68 65 63 6B 20 66 6F 72 20    ..;no check for 
006D50:  61 20 5E 7A 20 65 6E 64 20 6F 66 20 66 69 6C 65    a ^z end of file
006D60:  0D 0A 09 6D 76 69 09 64 2C 30 61 68 09 09 09 3B    ...mvi.d,0ah...;
006D70:  73 65 6E 64 20 61 20 6C 66 20 74 6F 20 63 6F 6E    send a lf to con
006D80:  73 6F 6C 65 0D 0A 09 70 75 73 68 09 63 09 09 09    sole...push.c...
006D90:  3B 70 75 74 20 69 74 20 73 74 61 63 6B 20 66 6F    ;put it stack fo
006DA0:  72 20 70 75 74 63 68 0D 0A 09 63 61 6C 6C 09 70    r putch...call.p
006DB0:  75 74 63 68 09 09 09 3B 70 72 69 6E 74 20 63 68    utch...;print ch
006DC0:  61 72 61 63 74 65 72 20 6F 6E 20 63 6F 6E 73 6F    aracter on conso
006DD0:  6C 65 0D 0A 09 6C 78 69 09 68 2C 31 30 09 09 09    le...lxi.h,10...
006DE0:  3B 61 6E 64 20 72 65 74 75 72 6E 20 6C 66 20 28    ;and return lf (
006DF0:  6E 65 77 20 6C 69 6E 65 29 0D 0A 09 72 65 74 0D    new line)...ret.
006E00:  0A 67 65 74 63 68 31 3A 0D 0A 09 63 70 69 09 32    .getch1:...cpi.2
006E10:  36 09 09 09 3B 63 68 65 63 6B 20 74 6F 20 73 65    6...;check to se
006E20:  65 20 69 66 20 65 6E 64 20 6F 66 20 66 69 6C 65    e if end of file
006E30:  0D 0A 09 6A 6E 7A 09 67 65 74 63 68 32 20 20 09    ...jnz.getch2  .
006E40:  09 3B 6E 6F 74 20 61 20 65 6E 64 20 6F 66 20 66    .;not a end of f
006E50:  69 6C 65 20 72 65 74 75 72 6E 20 63 68 61 72 2E    ile return char.
006E60:  0D 0A 09 6C 78 69 09 68 2C 2D 31 09 09 09 3B 72    ...lxi.h,-1...;r
006E70:  65 74 75 72 6E 20 65 6E 64 20 6F 66 20 66 69 6C    eturn end of fil
006E80:  65 20 6D 61 6B 65 72 0D 0A 09 72 65 74 09 09 09    e maker...ret...
006E90:  09 3B 61 6C 6C 20 64 6F 6E 65 20 72 65 74 75 72    .;all done retur
006EA0:  6E 20 74 6F 20 63 61 6C 6C 65 72 0D 0A 67 65 74    n to caller..get
006EB0:  63 68 32 3A 0D 0A 09 6D 6F 76 09 6C 2C 61 09 09    ch2:...mov.l,a..
006EC0:  09 3B 6D 6F 76 65 20 63 68 61 72 61 63 74 65 72    .;move character
006ED0:  20 74 6F 20 72 65 74 75 72 6E 20 72 65 67 2E 0D     to return reg..
006EE0:  0A 09 6D 76 69 09 68 2C 30 09 09 09 3B 7A 65 72    ..mvi.h,0...;zer
006EF0:  6F 20 68 69 67 68 20 62 79 74 65 20 6F 66 20 72    o high byte of r
006F00:  79 20 74 6F 20 73 63 61 6E 20 66 6F 72 20 61 20    y to scan for a 
006F10:  66 63 62 0D 0A 09 70 6F 70 09 64 09 09 3B 72 65    fcb...pop.d..;re
006F20:  6D 6F 76 65 20 61 64 64 72 65 73 73 20 6F 66 20    move address of 
006F30:  66 69 6C 65 20 6E 61 6D 65 20 66 72 6F 6D 20 73    file name from s
006F40:  74 61 63 6B 0D 0A 09 70 6F 70 09 64 09 09 3B 72    tack...pop.d..;r
006F50:  65 6D 6F 76 65 20 61 64 64 72 65 73 73 20 6F 66    emove address of
006F60:  20 66 63 62 20 66 72 6F 6D 20 73 74 61 63 6B 0D     fcb from stack.
006F70:  0A 09 69 6E 72 09 6C 09 09 3B 63 68 65 63 6B 20    ..inr.l..;check 
006F80:  74 6F 20 73 65 65 20 69 66 20 76 61 69 6C 64 20    to see if vaild 
006F90:  72 65 74 75 72 6E 20 63 6F 64 65 0D 0A 09 6A 7A    return code...jz
006FA0:  09 6F 70 65 6E 31 30 09 09 3B 65 72 72 6F 72 20    .open10..;error 
006FB0:  69 6E 76 61 69 6C 64 20 66 69 6C 65 20 6E 61 6D    invaild file nam
006FC0:  65 0D 0A 09 6D 76 69 09 63 2C 31 35 09 09 3B 63    e...mvi.c,15..;c
006FD0:  70 6D 20 66 75 6E 63 74 69 6F 6E 20 74 6F 20 6F    pm function to o
006FE0:  70 65 6E 20 61 20 66 69 6C 65 0D 0A 09 63 61 6C    pen a file...cal
006FF0:  6C 09 62 64 6F 73 09 09 3B 65 78 65 63 75 74 65    l.bdos..;execute
007000:  20 63 70 6D 20 6F 70 65 6E 20 66 75 6E 63 74 69     cpm open functi
007010:  6F 6E 0D 0A 09 69 6E 72 09 61 09 09 3B 73 65 65    on...inr.a..;see
007020:  20 69 66 20 65 72 72 6F 72 20 6F 70 65 6E 69 6E     if error openin
007030:  67 20 66 69 6C 65 0D 0A 09 6A 7A 09 6F 70 65 6E    g file...jz.open
007040:  31 30 09 09 3B 65 72 72 6F 72 20 66 69 6C 65 20    10..;error file 
007050:  6E 6F 74 20 66 6F 75 6E 64 0D 0A 09 6C 78 69 09    not found...lxi.
007060:  68 2C 30 09 09 3B 73 65 74 20 72 65 74 75 72 6E    h,0..;set return
007070:  20 63 6F 64 65 20 74 6F 20 7A 65 72 6F 0D 0A 09     code to zero...
007080:  72 65 74 09 09 09 3B 72 65 74 75 72 6E 20 74 6F    ret...;return to
007090:  20 63 61 6C 6C 65 72 0D 0A 6F 70 65 6E 31 30 3A     caller..open10:
0070A0:  0D 0A 09 6C 78 69 09 68 2C 2D 31 09 09 3B 65 72    ...lxi.h,-1..;er
0070B0:  72 6F 72 20 72 65 74 75 72 6E 20 63 6F 64 65 0D    ror return code.
0070C0:  0A 09 72 65 74 09 09 09 3B 72 65 74 75 72 6E 20    ..ret...;return 
0070D0:  74 6F 20 63 61 6C 6C 65 72 0D 0A 3B 0D 0A 3B 09    to caller..;..;.
0070E0:  63 72 65 61 74 65 0D 0A 3B 0D 0A 3B 09 66 75 6E    create..;..;.fun
0070F0:  63 74 69 6F 6E 20 74 6F 20 62 75 69 6C 64 20 66    ction to build f
007100:  65 75 74 72 6E 0D 0A 09 72 65 74 0D 0A 3B 0D 0A    eutrn...ret..;..
007110:  3B 09 67 65 74 73 0D 0A 3B 0D 0A 3B 09 66 75 6E    ;.gets..;..;.fun
007120:  63 74 69 6F 6E 3A 20 74 6F 20 67 65 74 20 61 20    ction: to get a 
007130:  73 74 72 69 6E 67 20 66 72 6F 6D 20 63 6F 6E 73    string from cons
007140:  6F 6C 65 20 61 6E 64 20 72 65 74 75 72 6E 20 61    ole and return a
007150:  64 64 72 65 73 73 0D 0A 3B 09 20 20 20 20 20 20    ddress..;.      
007160:  20 20 20 20 6F 66 20 69 6E 70 75 74 20 73 74 72        of input str
007170:  69 6E 67 0D 0A 3B 0D 0A 3B 09 63 61 6C 6C 69 6E    ing..;..;.callin
007180:  67 20 66 6F 72 6D 61 74 20 66 72 6F 6D 20 22 43    g format from "C
007190:  22 0D 0A 3B 09 67 65 74 73 28 73 74 72 69 6E 67    "..;.gets(string
0071A0:  29 3B 0D 0A 3B 0D 0A 67 65 74 73 3A 09 63 73 65    );..;..gets:.cse
0071B0:  63 74 0D 0A 09 70 75 73 68 09 68 09 09 3B 73 61    ct...push.h..;sa
0071C0:  76 65 20 61 64 64 72 65 73 73 20 6F 66 20 73 74    ve address of st
0071D0:  72 69 6E 67 0D 0A 09 70 75 73 68 09 68 0D 0A 09    ring...push.h...
0071E0:  6D 76 69 09 6D 2C 32 35 30 09 09 3B 73 61 76 65    mvi.m,250..;save
0071F0:  20 66 6F 72 20 62 64 6F 73 20 63 61 6C 6C 0D 0A     for bdos call..
007200:  09 6D 76 69 09 63 2C 31 30 09 09 3B 63 70 6D 20    .mvi.c,10..;cpm 
007210:  72 65 61 64 20 73 74 72 69 6E 67 20 66 75 6E 63    read string func
007220:  74 69 6F 6E 0D 0A 09 78 63 68 67 09 09 09 3B 70    tion...xchg...;p
007230:  75 74 20 61 64 64 72 65 73 73 20 6F 66 20 73 74    ut address of st
007240:  72 69 6E 67 20 69 6E 20 64 65 20 66 6F 72 20 63    ring in de for c
007250:  70 6D 0D 0A 09 63 61 6C 6C 09 62 64 6F 73 09 09    pm...call.bdos..
007260:  3B 63 61 6C 6C 20 63 70 6D 20 74 6F 20 72 65 61    ;call cpm to rea
007270:  64 20 73 74 72 69 6E 67 20 69 6E 0D 0A 09 70 6F    d string in...po
007280:  70 09 64 09 09 3B 67 65 74 20 61 64 64 72 65 73    p.d..;get addres
007290:  73 20 6F 66 20 69 6E 70 75 74 20 73 74 72 69 6E    s of input strin
0072A0:  67 20 62 61 63 6B 0D 0A 09 6D 6F 76 09 68 2C 64    g back...mov.h,d
0072B0:  09 09 3B 70 75 74 20 61 64 64 72 65 73 73 20 69    ..;put address i
0072C0:  6E 20 68 6C 0D 0A 09 6D 6F 76 09 6C 2C 65 0D 0A    n hl...mov.l,e..
0072D0:  09 69 6E 78 09 64 09 09 3B 6D 6F 76 65 20 74 6F    .inx.d..;move to
0072E0:  20 6C 65 6E 67 68 74 20 63 6F 75 6E 74 0D 0A 09     lenght count...
0072F0:  6D 6F 76 09 62 2C 6D 09 09 3B 67 65 74 20 6E 75    mov.b,m..;get nu
007300:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
007310:  06 00 01 00 02 09 52 E5 06 00 C1 02 00 00 00 02    ......R.........
007320:  06 00 C6 02 00 00 00 02 06 00 C2 02 00 00 00 02    ................
007330:  06 00 C7 02 00 00 00 02 06 00 C3 02 00 00 00 02    ................
007340:  06 00 C8 02 00 00 00 02 06 00 C4 02 00 00 00 02    ................
007350:  06 00 C9 02 00 00 00 02 06 00 C5 02 00 00 00 02    ................
007360:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
007370:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
007380:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
007390:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0073A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0073B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0073C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0073D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0073E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0073F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
007400:  63 62 20 61 6E 64 20 64 65 6C 65 74 65 20 66 69    cb and delete fi
007410:  6C 65 20 74 68 65 6E 0D 0A 3B 09 74 72 79 20 74    le then..;.try t
007420:  6F 20 63 72 65 61 74 65 20 66 69 6C 65 20 61 64    o create file ad
007430:  64 72 65 73 73 20 6F 66 20 66 63 62 20 69 6E 20    dress of fcb in 
007440:  64 65 20 0D 0A 3B 09 77 68 69 6C 65 20 6E 61 6D    de ..;.while nam
007450:  65 20 69 6E 20 68 6C 2E 20 69 66 20 66 69 6C 65    e in hl. if file
007460:  20 69 73 20 63 72 65 61 74 65 64 20 6F 6B 0D 0A     is created ok..
007470:  3B 09 30 20 69 73 20 72 65 74 75 72 6E 20 65 6C    ;.0 is return el
007480:  73 65 20 2D 31 20 69 73 20 72 65 74 75 72 6E 0D    se -1 is return.
007490:  0A 3B 0D 0A 3B 09 63 61 6C 6C 69 6E 67 20 66 6F    .;..;.calling fo
0074A0:  72 6D 61 74 20 66 72 6F 6D 20 22 43 22 0D 0A 3B    rmat from "C"..;
0074B0:  09 63 72 65 61 74 65 28 66 63 62 2C 66 69 6C 65    .create(fcb,file
0074C0:  6E 61 6D 65 29 0D 0A 3B 0D 0A 63 72 65 61 74 65    name)..;..create
0074D0:  3A 09 63 73 65 63 74 0D 0A 09 70 6F 70 09 62 09    :.csect...pop.b.
0074E0:  09 3B 67 65 74 20 72 65 74 75 72 6E 20 61 64 64    .;get return add
0074F0:  72 65 73 73 0D 0A 09 70 6F 70 09 68 09 09 3B 67    ress...pop.h..;g
007500:  65 74 20 61 64 64 72 65 73 73 20 6F 66 20 66 69    et address of fi
007510:  6C 65 20 6E 61 6D 65 0D 0A 09 70 6F 70 09 64 09    le name...pop.d.
007520:  09 3B 67 65 74 20 61 64 64 72 65 73 73 20 6F 66    .;get address of
007530:  20 66 63 62 0D 0A 20 09 70 75 73 68 09 64 09 09     fcb.. .push.d..
007540:  3B 70 75 74 20 64 61 74 61 20 62 61 63 6B 20 6F    ;put data back o
007550:  6E 20 73 74 61 63 6B 0D 0A 09 70 75 73 68 09 68    n stack...push.h
007560:  0D 0A 09 70 75 73 68 09 62 0D 0A 09 70 75 73 68    ...push.b...push
007570:  09 64 09 09 3B 73 65 74 20 75 70 20 61 72 67 20    .d..;set up arg 
007580:  6C 69 73 74 20 66 6F 72 20 73 65 74 66 63 62 0D    list for setfcb.
007590:  0A 09 70 75 73 68 09 68 0D 0A 09 63 61 6C 6C 09    ..push.h...call.
0075A0:  73 65 74 66 63 62 09 09 3B 74 72 79 20 74 6F 73    setfcb..;try tos
0075B0:  63 61 6E 20 61 6E 64 20 62 75 69 6C 64 20 66 63    can and build fc
0075C0:  62 0D 0A 09 70 6F 70 09 64 09 09 3B 72 65 6D 6F    b...pop.d..;remo
0075D0:  76 65 20 61 72 67 20 66 6F 72 20 73 65 74 66 63    ve arg for setfc
0075E0:  62 20 66 72 6F 6D 20 73 74 61 63 6B 0D 0A 09 70    b from stack...p
0075F0:  6F 70 09 64 0D 0A 09 69 6E 72 09 6C 09 09 3B 73    op.d...inr.l..;s
007600:  31 31 3A 0D 0A 09 6C 78 69 09 68 2C 33 36 09 09    11:...lxi.h,36..
007610:  3B 6E 75 6D 62 65 72 20 6F 66 20 62 79 74 65 20    ;number of byte 
007620:  74 6F 20 6D 6F 76 65 20 62 61 63 6B 0D 0A 09 64    to move back...d
007630:  61 64 09 73 70 09 09 3B 61 64 64 20 74 6F 20 63    ad.sp..;add to c
007640:  75 72 72 65 6E 74 20 73 74 61 63 6B 20 70 6F 69    urrent stack poi
007650:  6E 74 65 72 0D 0A 09 73 70 68 6C 09 09 09 3B 70    nter...sphl...;p
007660:  75 74 20 6E 65 77 20 76 61 6C 75 65 20 69 6E 20    ut new value in 
007670:  73 74 61 63 6B 20 70 6F 69 6E 74 65 72 0D 0A 09    stack pointer...
007680:  78 63 68 67 09 09 09 3B 70 75 74 20 72 65 74 75    xchg...;put retu
007690:  72 6E 20 63 6F 64 65 20 69 6E 20 68 6C 0D 0A 09    rn code in hl...
0076A0:  72 65 74 09 09 09 3B 61 6C 6C 20 64 6F 6E 65 20    ret...;all done 
0076B0:  72 65 74 75 72 6E 20 74 6F 20 63 61 6C 6C 65 72    return to caller
0076C0:  0D 0A 3B 0D 0A 3B 09 72 65 61 64 0D 0A 3B 0D 0A    ..;..;.read..;..
0076D0:  3B 09 66 75 6E 63 74 69 6F 6E 20 74 6F 20 72 65    ;.function to re
0076E0:  61 64 20 78 20 72 65 63 6F 72 64 20 66 72 6F 6D    ad x record from
0076F0:  20 64 69 73 6B 20 61 6E 64 20 72 65 74 75 72 6E     disk and return
007700:  0D 0A 3B 09 6E 75 6D 62 65 72 20 6F 66 20 72 65    ..;.number of re
007710:  63 6F 72 64 20 72 65 61 64 20 6F 72 20 2D 31 0D    cord read or -1.
007720:  0A 3B 0D 0A 3B 09 63 61 6C 6C 69 6E 67 20 66 6F    .;..;.calling fo
007730:  72 6D 61 74 20 66 72 6F 6D 20 22 43 22 0D 0A 3B    rmat from "C"..;
007740:  09 72 65 61 64 28 66 63 62 2C 62 75 66 66 65 72    .read(fcb,buffer
007750:  2C 63 6F 75 6E 74 29 3B 0D 0A 3B 0D 0A 72 65 61    ,count);..;..rea
007760:  64 3A 09 63 73 65 63 74 0D 0A 09 6C 78 69 09 68    d:.csect...lxi.h
007770:  2C 32 09 09 3B 6F 66 66 73 65 74 20 69 6E 20 73    ,2..;offset in s
007780:  74 61 63 6B 20 74 69 6C 6C 20 63 6F 75 6E 74 0D    tack till count.
007790:  0A 09 64 61 64 09 73 70 09 09 3B 67 65 74 20 61    ..dad.sp..;get a
0077A0:  64 64 72 65 73 73 20 6F 66 20 6E 75 6D 62 65 72    ddress of number
0077B0:  20 6F 66 20 72 65 63 6F 72 64 20 74 6F 20 72 65     of record to re
0077C0:  61 64 0D 0A 09 6D 6F 76 09 61 2C 6D 09 09 3B 67    ad...mov.a,m..;g
0077D0:  65 74 20 6C 6F 77 20 62 79 74 65 20 6F 66 20 63    et low byte of c
0077E0:  6F 75 6E 74 0D 0A 09 6D 6F 76 09 65 2C 6D 09 09    ount...mov.e,m..
0077F0:  3B 73 61 76 65 20 66 6F 72 20 6C 61 74 65 72 20    ;save for later 
007800:  65 65 20 69 66 20 65 72 72 6F 72 20 69 6E 20 66    ee if error in f
007810:  69 6C 65 20 6E 61 6D 65 0D 0A 09 6A 7A 09 63 72    ile name...jz.cr
007820:  65 61 74 65 31 30 09 3B 65 72 72 6F 72 20 69 6E    eate10.;error in
007830:  20 66 69 6C 65 20 6E 61 6D 65 0D 0A 09 70 75 73     file name...pus
007840:  68 09 64 09 09 3B 73 61 76 65 20 61 64 64 72 65    h.d..;save addre
007850:  73 73 20 6F 66 20 66 63 62 0D 0A 09 6D 76 69 09    ss of fcb...mvi.
007860:  63 2C 31 39 09 09 3B 63 70 6D 20 66 75 6E 63 74    c,19..;cpm funct
007870:  69 6F 6E 20 74 6F 20 64 65 6C 65 74 65 20 61 20    ion to delete a 
007880:  66 69 6C 65 0D 0A 09 63 61 6C 6C 09 62 64 6F 73    file...call.bdos
007890:  09 09 3B 63 61 6C 6C 20 62 64 6F 73 20 74 6F 20    ..;call bdos to 
0078A0:  64 6F 20 6E 65 65 64 65 64 20 66 75 6E 63 74 69    do needed functi
0078B0:  6F 6E 0D 0A 09 70 6F 70 09 64 09 09 3B 72 65 73    on...pop.d..;res
0078C0:  74 6F 72 65 20 61 64 64 72 65 73 73 20 6F 66 20    tore address of 
0078D0:  66 63 62 20 74 6F 20 63 72 65 61 74 65 0D 0A 09    fcb to create...
0078E0:  6D 76 69 09 63 2C 32 32 09 09 3B 63 70 6D 20 66    mvi.c,22..;cpm f
0078F0:  75 6E 63 74 69 6F 6E 20 74 6F 20 6D 61 6B 65 20    unction to make 
007900:  66 69 6C 65 0D 0A 09 63 61 6C 6C 09 62 64 6F 73    file...call.bdos
007910:  09 09 3B 63 61 6C 6C 20 62 6F 64 73 20 74 6F 20    ..;call bods to 
007920:  64 6F 20 6E 65 65 64 65 64 20 66 75 6E 63 74 69    do needed functi
007930:  6F 6E 0D 0A 09 69 6E 72 09 61 09 09 3B 63 68 65    on...inr.a..;che
007940:  63 6B 20 74 6F 20 73 65 65 20 69 66 20 65 72 72    ck to see if err
007950:  6F 72 0D 0A 09 6A 7A 09 63 72 65 61 74 65 31 30    or...jz.create10
007960:  09 3B 65 72 72 6F 72 20 75 6E 61 62 6C 65 20 74    .;error unable t
007970:  6F 20 63 72 65 61 74 20 66 69 6C 65 0D 0A 09 6C    o creat file...l
007980:  78 69 09 68 2C 30 09 09 3B 65 76 65 72 79 20 74    xi.h,0..;every t
007990:  68 69 6E 67 20 6F 6B 20 73 65 74 20 72 65 74 75    hing ok set retu
0079A0:  72 6E 20 63 6F 64 65 20 74 6F 20 7A 65 72 6F 0D    rn code to zero.
0079B0:  0A 09 72 65 74 09 09 09 3B 72 65 74 75 72 6E 20    ..ret...;return 
0079C0:  74 6F 20 63 61 6C 6C 65 72 0D 0A 63 72 65 61 74    to caller..creat
0079D0:  65 31 30 3A 0D 0A 09 6C 78 69 09 68 2C 2D 31 09    e10:...lxi.h,-1.
0079E0:  09 3B 65 72 72 6F 72 20 73 65 74 20 72 65 74 75    .;error set retu
0079F0:  72 6E 20 63 6F 64 65 20 74 6F 20 2D 31 0D 0A 09    rn code to -1...
007A00:  75 73 65 0D 0A 09 69 6E 78 09 68 09 09 3B 6D 6F    use...inx.h..;mo
007A10:  76 65 20 74 6F 20 68 69 67 68 20 62 79 74 65 20    ve to high byte 
007A20:  6F 66 20 63 6F 75 6E 74 0D 0A 09 6F 72 61 09 6D    of count...ora.m
007A30:  09 09 3B 73 65 65 20 69 66 20 31 36 20 62 69 74    ..;see if 16 bit
007A40:  20 63 6F 75 6E 74 20 69 73 20 7A 65 72 6F 0D 0A     count is zero..
007A50:  09 6D 6F 76 09 64 2C 6D 09 09 3B 67 65 74 20 68    .mov.d,m..;get h
007A60:  69 67 68 20 62 79 74 65 20 6F 66 20 63 6F 75 6E    igh byte of coun
007A70:  74 20 0D 0A 09 6A 7A 09 72 65 61 64 31 09 09 3B    t ...jz.read1..;
007A80:  79 65 73 20 64 6F 20 6E 6F 74 20 72 65 61 64 20    yes do not read 
007A90:  61 6E 79 20 6D 6F 72 65 20 72 65 63 6F 72 64 73    any more records
007AA0:  0D 0A 09 64 63 78 09 64 09 09 3B 73 75 62 74 72    ...dcx.d..;subtr
007AB0:  61 63 74 20 31 20 66 72 6F 6D 20 63 6F 75 6E 74    act 1 from count
007AC0:  0D 0A 09 6D 6F 76 09 6D 2C 64 09 09 3B 70 75 74    ...mov.m,d..;put
007AD0:  20 68 69 67 68 20 62 79 74 65 20 62 61 63 6B 0D     high byte back.
007AE0:  0A 09 64 63 78 09 68 09 09 3B 70 6F 69 6E 74 20    ..dcx.h..;point 
007AF0:  74 6F 20 68 69 67 68 20 62 79 74 65 0D 0A 09 6D    to high byte...m
007B00:  6F 76 09 6D 2C 65 09 09 3B 73 61 76 65 20 6C 6F    ov.m,e..;save lo
007B10:  77 20 62 79 74 65 0D 0A 09 69 6E 78 09 68 09 09    w byte...inx.h..
007B20:  3B 6D 6F 76 65 20 74 6F 20 62 75 66 66 65 72 20    ;move to buffer 
007B30:  61 64 64 72 65 73 73 0D 0A 09 69 6E 78 09 68 0D    address...inx.h.
007B40:  0A 09 6D 6F 76 09 65 2C 6D 09 09 3B 67 65 74 20    ..mov.e,m..;get 
007B50:  61 64 64 72 65 73 73 20 6F 66 20 62 75 66 66 65    address of buffe
007B60:  72 0D 0A 09 69 6E 78 09 68 09 09 3B 6D 6F 76 65    r...inx.h..;move
007B70:  20 74 6F 20 68 69 67 68 20 62 79 74 65 20 6F 66     to high byte of
007B80:  20 61 64 64 72 65 73 73 0D 0A 09 70 75 73 68 09     address...push.
007B90:  68 09 09 3B 73 61 76 65 20 63 75 72 72 65 6E 74    h..;save current
007BA0:  20 70 6F 69 6E 74 65 72 20 6F 6E 20 73 74 61 63     pointer on stac
007BB0:  6B 0D 0A 09 6D 6F 76 09 64 2C 6D 09 09 3B 67 65    k...mov.d,m..;ge
007BC0:  74 20 68 69 67 68 20 62 79 74 65 20 6F 66 20 61    t high byte of a
007BD0:  64 64 72 65 73 73 0D 0A 09 6D 76 69 09 63 2C 32    ddress...mvi.c,2
007BE0:  36 09 09 3B 73 65 74 20 64 6D 61 20 61 64 64 72    6..;set dma addr
007BF0:  65 73 73 0D 0A 09 63 61 6C 6C 09 62 64 6F 73 09    ess...call.bdos.
007C00:  72 65 74 0D 0A 3B 0D 0A 3B 09 63 6C 6F 73 65 0D    ret..;..;.close.
007C10:  0A 3B 0D 0A 3B 09 66 75 6E 63 74 69 6F 6E 20 74    .;..;.function t
007C20:  6F 20 63 6C 6F 73 65 20 61 20 66 69 6C 65 20 74    o close a file t
007C30:  68 61 74 20 69 73 20 63 75 72 72 65 6E 74 20 6F    hat is current o
007C40:  70 65 6E 2E 0D 0A 3B 09 61 64 64 72 65 73 73 20    pen...;.address 
007C50:  6F 66 20 66 63 62 20 69 6E 20 64 65 2E 20 69 66    of fcb in de. if
007C60:  20 61 62 6C 65 20 74 6F 20 63 6C 6F 73 65 20 66     able to close f
007C70:  69 6C 65 20 6F 20 69 73 0D 0A 3B 09 69 73 20 72    ile o is..;.is r
007C80:  65 74 75 72 6E 20 6F 72 20 2D 31 20 69 66 20 75    eturn or -1 if u
007C90:  6E 61 62 6C 65 20 74 6F 20 63 6C 6F 73 65 0D 0A    nable to close..
007CA0:  3B 0D 0A 3B 09 63 61 6C 6C 69 6E 67 20 66 6F 72    ;..;.calling for
007CB0:  6D 61 74 20 66 72 6F 6D 20 22 43 22 0D 0A 3B 09    mat from "C"..;.
007CC0:  63 6C 6F 73 65 28 66 63 62 29 0D 0A 3B 0D 0A 63    close(fcb)..;..c
007CD0:  6C 6F 73 65 3A 09 63 73 65 63 74 0D 0A 09 70 6F    lose:.csect...po
007CE0:  70 09 62 09 09 3B 72 65 74 75 72 6E 20 61 64 64    p.b..;return add
007CF0:  72 65 73 73 0D 0A 09 70 6F 70 09 64 09 09 3B 61    ress...pop.d..;a
007D00:  64 64 72 65 73 73 20 6F 66 20 66 63 62 0D 0A 09    ddress of fcb...
007D10:  70 75 73 68 09 64 09 09 3B 70 75 74 20 64 61 74    push.d..;put dat
007D20:  61 20 62 61 63 6B 20 69 6E 20 73 74 61 63 6B 0D    a back in stack.
007D30:  0A 09 70 75 73 68 09 62 0D 0A 09 6D 76 69 09 63    ..push.b...mvi.c
007D40:  2C 31 36 09 09 3B 63 70 6D 20 66 75 6E 63 74 69    ,16..;cpm functi
007D50:  6F 6E 20 74 6F 20 63 6C 6F 73 65 20 61 20 66 69    on to close a fi
007D60:  6C 65 0D 0A 09 63 61 6C 6C 09 62 64 6F 73 09 09    le...call.bdos..
007D70:  3B 63 61 6C 6C 20 63 70 6D 20 74 6F 20 64 6F 20    ;call cpm to do 
007D80:  6E 65 65 64 65 64 20 66 75 6E 63 74 69 6F 6E 0D    needed function.
007D90:  0A 09 69 6E 72 09 61 09 09 3B 63 68 65 63 6B 20    ..inr.a..;check 
007DA0:  66 6F 72 20 65 72 72 6F 72 73 0D 0A 09 6A 7A 09    for errors...jz.
007DB0:  63 6C 6F 73 65 31 30 09 09 3B 65 72 72 6F 72 20    close10..;error 
007DC0:  75 6E 61 62 6C 65 20 74 6F 20 63 6C 6F 73 65 20    unable to close 
007DD0:  66 69 6C 65 0D 0A 09 6C 78 69 09 68 2C 30 09 09    file...lxi.h,0..
007DE0:  3B 65 76 65 72 79 20 74 68 69 6E 67 20 69 73 20    ;every thing is 
007DF0:  6F 6B 20 73 65 74 20 72 65 74 75 72 6E 20 63 6F    ok set return co
007E00:  09 3B 63 61 6C 6C 20 63 70 6D 20 74 6F 20 73 65    .;call cpm to se
007E10:  74 20 62 75 66 66 65 72 20 61 64 64 72 65 73 73    t buffer address
007E20:  0D 0A 09 70 6F 70 09 68 09 09 3B 72 65 6D 6F 76    ...pop.h..;remov
007E30:  65 20 63 75 72 72 65 6E 74 20 70 6F 69 6E 74 65    e current pointe
007E40:  72 20 66 72 6F 6D 20 73 74 61 63 6B 0D 0A 09 69    r from stack...i
007E50:  6E 78 09 68 09 09 3B 6D 6F 76 65 20 74 6F 20 61    nx.h..;move to a
007E60:  64 64 72 65 73 73 20 6F 66 20 66 63 62 0D 0A 09    ddress of fcb...
007E70:  70 75 73 68 09 68 09 09 3B 70 75 74 20 63 75 72    push.h..;put cur
007E80:  72 65 6E 74 20 70 6F 69 6E 74 65 72 20 62 61 63    rent pointer bac
007E90:  6B 20 6F 6E 20 73 74 61 63 6B 0D 0A 09 6D 6F 76    k on stack...mov
007EA0:  09 65 2C 6D 09 09 3B 67 65 74 20 6C 6F 77 20 62    .e,m..;get low b
007EB0:  79 74 65 20 6F 66 20 66 63 62 20 61 64 64 72 65    yte of fcb addre
007EC0:  73 73 0D 0A 09 69 6E 78 09 68 09 09 3B 6D 6F 76    ss...inx.h..;mov
007ED0:  65 20 74 6F 20 68 69 67 68 20 62 79 74 65 20 6F    e to high byte o
007EE0:  66 20 61 64 64 72 65 73 73 0D 0A 09 6D 6F 76 09    f address...mov.
007EF0:  64 2C 6D 09 09 3B 67 65 74 20 68 69 67 68 20 61    d,m..;get high a
007F00:  64 64 72 65 73 73 20 6F 66 20 66 63 62 0D 0A 09    ddress of fcb...
007F10:  6D 76 69 09 63 2C 32 30 09 09 3B 72 65 61 64 20    mvi.c,20..;read 
007F20:  72 65 63 6F 72 64 20 66 72 6F 6D 20 64 73 69 6B    record from dsik
007F30:  0D 0A 09 63 61 6C 6C 09 62 64 6F 73 09 09 3B 63    ...call.bdos..;c
007F40:  61 6C 6C 20 63 70 6D 20 74 6F 20 64 6F 20 69 74    all cpm to do it
007F50:  0D 0A 09 70 6F 70 09 68 09 09 3B 67 65 74 20 63    ...pop.h..;get c
007F60:  75 72 72 65 6E 74 20 70 6F 69 6E 74 65 72 20 62    urrent pointer b
007F70:  61 63 6B 0D 0A 09 6F 72 61 09 61 09 09 3B 63 68    ack...ora.a..;ch
007F80:  65 63 6B 20 66 6F 72 20 65 72 72 6F 72 73 0D 0A    eck for errors..
007F90:  09 6A 6E 7A 09 72 65 61 64 32 09 09 3B 65 72 72    .jnz.read2..;err
007FA0:  6F 72 20 72 65 61 64 69 6E 67 20 66 69 6C 65 20    or reading file 
007FB0:  66 72 6F 6D 20 64 69 73 6B 0D 0A 09 64 63 78 09    from disk...dcx.
007FC0:  68 09 09 3B 6D 6F 76 65 20 74 6F 20 61 64 64 72    h..;move to addr
007FD0:  65 73 73 20 6F 66 20 62 75 66 66 65 72 0D 0A 09    ess of buffer...
007FE0:  6D 6F 76 09 64 2C 6D 09 09 3B 67 65 74 20 68 69    mov.d,m..;get hi
007FF0:  67 68 20 62 79 74 65 20 6F 66 20 61 64 64 72 65    gh byte of addre
008000:  64 65 20 74 6F 20 7A 65 72 6F 0D 0A 09 72 65 74    de to zero...ret
008010:  09 09 09 3B 72 65 74 75 72 6E 20 74 6F 20 63 61    ...;return to ca
008020:  6C 6C 65 72 0D 0A 63 6C 6F 73 65 31 30 3A 0D 0A    ller..close10:..
008030:  09 6C 78 69 09 68 2C 2D 31 09 09 3B 65 72 72 6F    .lxi.h,-1..;erro
008040:  72 20 73 65 74 20 72 65 74 75 72 6E 20 63 6F 64    r set return cod
008050:  65 20 74 6F 20 65 72 72 6F 72 0D 0A 09 72 65 74    e to error...ret
008060:  0D 0A 3B 0D 0A 3B 09 75 6E 6C 69 6E 6B 0D 0A 3B    ..;..;.unlink..;
008070:  0D 0A 3B 09 66 75 6E 63 74 69 6F 6E 20 74 6F 20    ..;.function to 
008080:  62 75 69 6C 64 20 66 63 62 20 61 6E 64 20 74 72    build fcb and tr
008090:  79 20 74 6F 20 64 65 6C 65 74 65 0D 0A 3B 09 64    y to delete..;.d
0080A0:  65 6C 65 74 65 20 66 69 6C 65 2E 20 69 66 20 6F    elete file. if o
0080B0:  6B 20 72 65 74 75 72 6E 20 30 20 65 6C 73 65 20    k return 0 else 
0080C0:  2D 31 0D 0A 3B 0D 0A 3B 09 63 61 6C 6C 69 6E 67    -1..;..;.calling
0080D0:  20 66 6F 72 6D 61 74 20 66 72 6F 6D 20 22 43 22     format from "C"
0080E0:  0D 0A 3B 09 75 6E 6C 69 6E 6B 28 66 69 6C 65 6E    ..;.unlink(filen
0080F0:  61 6D 65 29 0D 0A 3B 0D 0A 75 6E 6C 69 6E 6B 3A    ame)..;..unlink:
008100:  09 63 73 65 63 74 0D 0A 09 70 6F 70 09 62 09 09    .csect...pop.b..
008110:  3B 67 65 74 20 72 65 74 75 72 6E 20 61 64 64 72    ;get return addr
008120:  65 73 73 0D 0A 09 70 6F 70 09 64 09 09 3B 67 65    ess...pop.d..;ge
008130:  74 20 61 64 64 72 65 73 73 20 6F 66 20 66 69 6C    t address of fil
008140:  65 20 6E 61 6D 65 0D 0A 09 70 75 73 68 09 64 09    e name...push.d.
008150:  09 3B 70 75 74 20 64 61 74 61 20 62 61 63 6B 20    .;put data back 
008160:  69 6E 20 73 74 61 63 6B 0D 0A 09 70 75 73 68 09    in stack...push.
008170:  62 0D 0A 09 6C 78 69 09 68 2C 2D 33 36 09 09 3B    b...lxi.h,-36..;
008180:  70 75 74 20 73 74 61 63 6B 20 70 6F 69 6E 74 65    put stack pointe
008190:  72 20 69 6E 20 68 6C 0D 0A 09 64 61 64 09 73 70    r in hl...dad.sp
0081A0:  09 09 3B 61 64 64 72 65 73 73 20 6F 66 20 73 74    ..;address of st
0081B0:  61 63 6B 20 69 6E 20 68 6C 0D 0A 09 73 70 68 6C    ack in hl...sphl
0081C0:  09 09 09 3B 73 65 74 20 6E 65 77 20 61 64 64 72    ...;set new addr
0081D0:  65 73 73 20 6F 66 20 73 74 61 63 6B 20 70 6F 69    ess of stack poi
0081E0:  6E 74 65 72 0D 0A 09 6C 78 69 09 62 2C 33 36 09    nter...lxi.b,36.
0081F0:  09 3B 67 65 74 20 61 64 64 72 65 73 73 20 6F 66    .;get address of
008200:  73 73 0D 0A 09 64 63 78 09 68 09 09 3B 6D 6F 76    ss...dcx.h..;mov
008210:  65 20 74 6F 20 6C 6F 77 20 20 62 79 74 65 20 6F    e to low  byte o
008220:  66 20 61 64 64 72 65 73 73 0D 0A 09 6D 6F 76 09    f address...mov.
008230:  65 2C 6D 09 09 3B 67 65 74 20 6C 6F 77 20 62 79    e,m..;get low by
008240:  74 65 20 6F 66 20 61 64 64 72 65 73 73 0D 0A 09    te of address...
008250:  78 63 68 67 09 09 09 3B 70 75 74 20 61 64 64 72    xchg...;put addr
008260:  65 73 73 20 69 6E 20 68 6C 20 61 6E 64 20 76 61    ess in hl and va
008270:  72 62 6C 65 20 61 64 64 72 65 73 73 20 69 6E 20    rble address in 
008280:  68 6C 0D 0A 09 6C 78 69 09 62 2C 38 30 68 09 09    hl...lxi.b,80h..
008290:  3B 6C 65 6E 67 68 74 20 6F 66 20 31 20 72 65 63    ;lenght of 1 rec
0082A0:  6F 72 64 20 6F 6E 20 64 69 73 6B 0D 0A 09 64 61    ord on disk...da
0082B0:  64 09 62 09 09 3B 61 64 64 20 73 65 63 74 6F 72    d.b..;add sector
0082C0:  20 6C 65 6E 67 68 74 20 74 6F 20 62 75 66 66 65     lenght to buffe
0082D0:  72 20 61 64 64 72 65 73 73 0D 0A 09 78 63 68 67    r address...xchg
0082E0:  09 09 09 3B 70 75 74 20 62 75 66 66 65 72 20 61    ...;put buffer a
0082F0:  64 64 72 65 73 73 20 62 61 63 6B 20 69 6E 20 64    ddress back in d
008300:  65 0D 0A 09 6D 6F 76 09 6D 2C 65 09 09 3B 73 61    e...mov.m,e..;sa
008310:  76 65 20 6E 65 77 20 6C 6F 77 20 62 79 74 65 20    ve new low byte 
008320:  6F 66 20 61 64 64 72 65 73 73 0D 0A 09 69 6E 78    of address...inx
008330:  09 68 09 09 3B 6D 6F 76 65 20 74 6F 20 68 69 67    .h..;move to hig
008340:  68 20 62 79 74 65 20 6F 66 20 61 64 64 72 65 73    h byte of addres
008350:  73 0D 0A 09 6D 6F 76 09 6D 2C 64 09 09 3B 73 61    s...mov.m,d..;sa
008360:  76 65 20 68 69 67 68 20 62 79 74 65 20 6F 66 20    ve high byte of 
008370:  61 64 64 72 65 73 73 0D 0A 09 6A 6D 70 09 72 65    address...jmp.re
008380:  61 64 09 09 3B 73 65 65 20 69 74 20 74 69 6D 65    ad..;see it time
008390:  20 74 6F 20 72 65 61 64 20 6E 65 78 74 20 72 65     to read next re
0083A0:  63 6F 72 64 0D 0A 72 65 61 64 31 3A 0D 0A 09 6C    cord..read1:...l
0083B0:  78 69 09 68 2C 30 09 09 3B 65 76 65 72 79 20 74    xi.h,0..;every t
0083C0:  68 69 6E 67 20 69 73 20 6F 6B 20 72 65 74 75 72    hing is ok retur
0083D0:  6E 20 74 6F 20 63 61 6C 6C 65 72 0D 0A 09 6A 6D    n to caller...jm
0083E0:  70 09 72 65 61 64 33 09 09 3B 73 65 74 20 64 6D    p.read3..;set dm
0083F0:  61 20 61 64 64 72 65 73 73 20 74 6F 20 74 62 75    a address to tbu
008400:  20 66 63 62 20 66 6F 72 20 64 65 6C 65 74 65 0D     fcb for delete.
008410:  0A 09 64 61 64 09 62 09 09 3B 61 64 64 20 74 6F    ..dad.b..;add to
008420:  20 67 65 74 20 62 61 73 65 20 66 6F 72 20 66 63     get base for fc
008430:  62 0D 0A 09 70 75 73 68 09 68 09 09 3B 73 65 74    b...push.h..;set
008440:  20 75 70 20 61 72 67 20 66 6F 72 20 73 65 74 66     up arg for setf
008450:  63 62 0D 0A 09 70 75 73 68 09 64 0D 0A 09 63 61    cb...push.d...ca
008460:  6C 6C 09 73 65 74 66 63 62 09 09 3B 74 72 79 20    ll.setfcb..;try 
008470:  74 6F 20 62 75 69 6C 64 20 66 63 62 0D 0A 09 70    to build fcb...p
008480:  6F 70 09 64 09 09 3B 72 65 6D 6F 76 65 20 61 72    op.d..;remove ar
008490:  67 20 66 6F 72 20 73 65 74 66 63 62 0D 0A 09 70    g for setfcb...p
0084A0:  6F 70 09 64 0D 0A 09 69 6E 72 09 6C 09 09 3B 73    op.d...inr.l..;s
0084B0:  65 65 20 69 66 20 65 72 72 6F 72 0D 0A 09 6A 7A    ee if error...jz
0084C0:  09 75 6E 6C 69 6E 6B 31 30 09 3B 65 72 72 6F 72    .unlink10.;error
0084D0:  20 6E 6F 74 20 61 20 76 61 69 6C 64 20 66 69 6C     not a vaild fil
0084E0:  65 20 6E 61 6D 65 0D 0A 09 6D 76 69 09 63 2C 31    e name...mvi.c,1
0084F0:  39 09 09 3B 66 75 6E 63 74 69 6F 6E 20 6E 75 6D    9..;function num
008500:  62 65 72 20 74 6F 20 64 65 6C 65 74 65 20 61 20    ber to delete a 
008510:  66 69 6C 65 0D 0A 09 63 61 6C 6C 09 62 64 6F 73    file...call.bdos
008520:  09 09 3B 63 61 6C 6C 20 63 70 6D 20 74 6F 20 64    ..;call cpm to d
008530:  65 6C 65 74 65 20 66 69 6C 65 20 66 72 6F 6D 20    elete file from 
008540:  73 79 73 74 65 6D 0D 0A 09 69 6E 72 09 61 09 09    system...inr.a..
008550:  3B 63 68 65 63 6B 20 74 6F 20 73 65 65 20 69 66    ;check to see if
008560:  20 69 6E 20 65 72 72 6F 72 0D 0A 09 6A 7A 09 75     in error...jz.u
008570:  6E 6C 69 6E 6B 31 30 09 3B 65 72 72 6F 72 20 75    nlink10.;error u
008580:  6E 61 62 6C 65 20 74 6F 20 64 65 6C 65 74 65 20    nable to delete 
008590:  66 69 6C 65 0D 0A 09 6C 78 69 09 64 2C 30 09 09    file...lxi.d,0..
0085A0:  3B 72 65 74 75 72 6E 20 63 6F 64 65 0D 0A 09 6A    ;return code...j
0085B0:  6D 70 09 75 6E 6C 69 6E 6B 31 31 09 3B 72 65 73    mp.unlink11.;res
0085C0:  65 74 20 73 74 61 63 6B 20 70 6F 69 6E 74 65 72    et stack pointer
0085D0:  0D 0A 75 6E 6C 69 6E 6B 31 30 3A 0D 0A 09 6C 78    ..unlink10:...lx
0085E0:  69 09 64 2C 2D 31 09 09 3B 73 65 74 20 65 72 72    i.d,-1..;set err
0085F0:  6F 72 20 63 6F 64 65 20 0D 0A 75 6E 6C 69 6E 6B    or code ..unlink
008600:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
008610:  07 00 01 00 02 09 52 E5 07 00 C1 02 00 00 00 02    ......R.........
008620:  07 00 C6 02 00 00 00 02 07 00 C2 02 00 00 00 02    ................
008630:  07 00 C7 02 00 00 00 02 07 00 C3 02 00 00 00 02    ................
008640:  07 00 C8 02 00 00 00 02 07 00 C4 02 00 00 00 02    ................
008650:  07 00 C9 02 00 00 00 02 07 00 C5 02 00 00 00 02    ................
008660:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
008670:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
008680:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
008690:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0086A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0086B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0086C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0086D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0086E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0086F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
008700:  66 20 61 6E 64 20 72 65 74 75 72 6E 0D 0A 72 65    f and return..re
008710:  61 64 32 3A 0D 0A 09 6C 78 69 09 68 2C 2D 31 09    ad2:...lxi.h,-1.
008720:  09 3B 65 72 72 6F 72 20 72 65 61 64 69 6E 67 20    .;error reading 
008730:  66 69 6C 65 0D 0A 72 65 61 64 33 3A 0D 0A 09 70    file..read3:...p
008740:  75 73 68 09 68 09 09 3B 73 61 76 65 20 72 65 74    ush.h..;save ret
008750:  75 72 6E 20 63 6F 64 65 0D 0A 09 6C 78 69 09 64    urn code...lxi.d
008760:  2C 63 70 6D 63 6D 64 09 3B 61 64 64 72 65 73 73    ,cpmcmd.;address
008770:  20 6F 66 20 74 65 6D 70 20 62 75 66 66 0D 0A 09     of temp buff...
008780:  6D 76 69 09 63 2C 32 36 09 09 3B 73 65 74 20 64    mvi.c,26..;set d
008790:  6D 61 20 61 64 64 72 65 73 73 20 66 75 6E 63 74    ma address funct
0087A0:  69 6F 6E 0D 0A 09 63 61 6C 6C 09 62 64 6F 73 09    ion...call.bdos.
0087B0:  09 3B 63 61 6C 6C 20 63 70 6D 20 74 6F 20 64 6F    .;call cpm to do
0087C0:  20 6E 65 65 64 65 64 20 66 75 6E 74 69 6F 6E 0D     needed funtion.
0087D0:  0A 09 70 6F 70 09 68 09 09 3B 67 65 74 20 72 65    ..pop.h..;get re
0087E0:  74 75 72 6E 20 63 6F 64 65 20 66 72 6F 6D 20 73    turn code from s
0087F0:  74 61 63 6B 0D 0A 09 72 65 74 09 09 09 3B 61 6C    tack...ret...;al
008800:  6C 20 64 6F 6E 65 20 72 65 74 75 72 6E 20 74 6F    l done return to
008810:  20 63 61 6C 6C 65 72 0D 0A 3B 0D 0A 3B 09 66 75     caller..;..;.fu
008820:  6E 63 74 69 6F 6E 20 74 6F 20 77 72 69 74 65 20    nction to write 
008830:  78 20 72 65 63 6F 72 64 20 66 72 6F 6D 09 64 69    x record from.di
008840:  73 6B 20 61 6E 64 20 72 65 74 75 72 6E 0D 0A 3B    sk and return..;
008850:  09 66 61 6C 73 65 20 69 66 20 6E 6F 20 65 72 72    .false if no err
008860:  6F 72 73 20 6F 72 20 74 72 75 65 20 69 66 20 65    ors or true if e
008870:  72 72 6F 72 0D 0A 3B 0D 0A 3B 09 63 61 6C 6C 69    rror..;..;.calli
008880:  6E 67 20 66 6F 72 6D 61 74 20 66 72 6F 6D 20 22    ng format from "
008890:  43 22 0D 0A 3B 09 77 72 69 74 65 28 66 63 62 2C    C"..;.write(fcb,
0088A0:  62 75 66 66 65 72 2C 63 6F 75 6E 74 29 3B 0D 0A    buffer,count);..
0088B0:  3B 0D 0A 77 72 69 74 65 3A 09 63 73 65 63 74 0D    ;..write:.csect.
0088C0:  0A 09 6C 78 69 09 68 2C 32 09 09 3B 6F 66 66 73    ..lxi.h,2..;offs
0088D0:  65 74 20 69 6E 20 73 74 61 63 6B 20 74 69 6C 6C    et in stack till
0088E0:  20 63 6F 75 6E 74 0D 0A 09 64 61 64 09 73 70 09     count...dad.sp.
0088F0:  09 3B 67 65 74 20 61 64 64 72 65 73 73 20 6F 66    .;get address of
008900:  66 63 62 28 66 63 62 2C 66 69 6C 65 6E 61 6D 65    fcb(fcb,filename
008910:  29 3B 0D 0A 3B 0D 0A 73 65 74 66 63 62 3A 09 63    );..;..setfcb:.c
008920:  73 65 63 74 0D 0A 09 70 6F 70 09 62 09 09 3B 67    sect...pop.b..;g
008930:  65 74 20 72 65 74 75 72 6E 20 61 64 64 72 65 73    et return addres
008940:  73 0D 0A 09 70 6F 70 09 68 09 09 3B 61 64 64 72    s...pop.h..;addr
008950:  65 73 73 20 6F 66 20 66 69 6C 65 20 6E 61 6D 65    ess of file name
008960:  0D 0A 09 70 6F 70 09 64 09 09 3B 61 64 64 72 65    ...pop.d..;addre
008970:  73 73 20 6F 66 20 66 63 62 0D 0A 09 70 75 73 68    ss of fcb...push
008980:  09 64 09 09 3B 70 75 74 20 64 61 74 61 20 62 61    .d..;put data ba
008990:  63 6B 20 6F 6E 20 73 74 61 63 6B 0D 0A 09 70 75    ck on stack...pu
0089A0:  73 68 09 68 0D 0A 09 70 75 73 68 09 62 0D 0A 09    sh.h...push.b...
0089B0:  64 63 78 09 68 09 09 3B 73 65 74 20 70 6F 69 6E    dcx.h..;set poin
0089C0:  74 65 72 20 62 61 63 6B 20 31 20 62 65 66 6F 72    ter back 1 befor
0089D0:  65 20 66 69 6C 65 20 6E 61 6D 65 0D 0A 73 65 74    e file name..set
0089E0:  66 63 62 31 3A 0D 0A 09 69 6E 78 09 68 09 09 3B    fcb1:...inx.h..;
0089F0:  6D 6F 76 65 20 70 6F 69 6E 74 65 72 20 74 6F 20    move pointer to 
008A00:  6E 65 78 74 20 63 68 72 61 63 74 65 72 0D 0A 09    next chracter...
008A10:  6D 6F 76 09 61 2C 6D 09 09 3B 67 65 74 20 63 68    mov.a,m..;get ch
008A20:  61 72 61 63 74 65 72 20 66 72 6F 6D 20 62 75 66    aracter from buf
008A30:  66 65 72 0D 0A 09 6F 72 61 09 61 09 09 3B 63 68    fer...ora.a..;ch
008A40:  65 63 6B 20 66 6F 72 20 65 6E 64 20 6F 66 20 62    eck for end of b
008A50:  75 66 66 65 72 0D 0A 09 6A 7A 09 73 65 74 66 63    uffer...jz.setfc
008A60:  62 36 09 09 3B 65 72 72 6F 72 20 6E 75 6C 6C 20    b6..;error null 
008A70:  66 69 6C 65 20 6E 61 6D 65 0D 0A 09 63 70 69 09    file name...cpi.
008A80:  27 20 27 09 09 3B 73 65 65 20 69 66 20 6C 65 61    ' '..;see if lea
008A90:  64 69 6E 67 20 73 70 61 63 65 20 0D 0A 09 6A 7A    ding space ...jz
008AA0:  09 73 65 74 66 63 62 31 09 09 3B 79 65 73 20 6D    .setfcb1..;yes m
008AB0:  6F 76 65 20 74 6F 20 6E 65 78 74 20 63 68 61 72    ove to next char
008AC0:  61 63 74 65 72 0D 0A 09 70 75 73 68 09 68 09 09    acter...push.h..
008AD0:  3B 73 61 76 65 20 73 74 61 72 74 69 6E 67 20 61    ;save starting a
008AE0:  64 64 72 65 73 73 20 6F 66 20 66 69 6C 65 20 6E    ddress of file n
008AF0:  61 6D 65 0D 0A 73 65 74 66 63 62 31 61 3A 0D 0A    ame..setfcb1a:..
008B00:  20 6E 75 6D 62 65 72 20 6F 66 20 72 65 63 6F 72     number of recor
008B10:  64 20 74 6F 20 72 65 61 64 0D 0A 09 6D 6F 76 09    d to read...mov.
008B20:  61 2C 6D 09 09 3B 67 65 74 20 6C 6F 77 20 62 79    a,m..;get low by
008B30:  74 65 20 6F 66 20 63 6F 75 6E 74 0D 0A 09 6D 6F    te of count...mo
008B40:  76 09 65 2C 6D 09 09 3B 73 61 76 65 20 66 6F 72    v.e,m..;save for
008B50:  20 6C 61 74 65 72 20 75 73 65 0D 0A 09 69 6E 78     later use...inx
008B60:  09 68 09 09 3B 6D 6F 76 65 20 74 6F 20 68 69 67    .h..;move to hig
008B70:  68 20 62 79 74 65 20 6F 66 20 63 6F 75 6E 74 0D    h byte of count.
008B80:  0A 09 6F 72 61 09 6D 09 09 3B 73 65 65 20 69 66    ..ora.m..;see if
008B90:  20 31 36 20 62 69 74 20 63 6F 75 6E 74 20 69 73     16 bit count is
008BA0:  20 7A 65 72 6F 0D 0A 09 6D 6F 76 09 64 2C 6D 09     zero...mov.d,m.
008BB0:  09 3B 67 65 74 20 68 69 67 68 20 62 79 74 65 20    .;get high byte 
008BC0:  6F 66 20 63 6F 75 6E 74 20 0D 0A 09 6A 7A 09 77    of count ...jz.w
008BD0:  72 69 74 65 31 09 09 3B 79 65 73 20 64 6F 09 6E    rite1..;yes do.n
008BE0:  6F 74 20 77 72 69 74 65 20 61 6E 79 20 6D 6F 72    ot write any mor
008BF0:  65 20 72 65 63 6F 72 64 73 0D 0A 09 64 63 78 09    e records...dcx.
008C00:  64 09 09 3B 73 75 62 74 72 61 63 74 20 31 20 66    d..;subtract 1 f
008C10:  72 6F 6D 20 63 6F 75 6E 74 0D 0A 09 6D 6F 76 09    rom count...mov.
008C20:  6D 2C 64 09 09 3B 70 75 74 20 68 69 67 68 20 62    m,d..;put high b
008C30:  79 74 65 20 62 61 63 6B 0D 0A 09 64 63 78 09 68    yte back...dcx.h
008C40:  09 09 3B 70 6F 69 6E 74 20 74 6F 20 68 69 67 68    ..;point to high
008C50:  20 62 79 74 65 0D 0A 09 6D 6F 76 09 6D 2C 65 09     byte...mov.m,e.
008C60:  09 3B 73 61 76 65 20 6C 6F 77 20 62 79 74 65 0D    .;save low byte.
008C70:  0A 09 69 6E 78 09 68 09 09 3B 6D 6F 76 65 20 74    ..inx.h..;move t
008C80:  6F 20 62 75 66 66 65 72 20 61 64 64 72 65 73 73    o buffer address
008C90:  0D 0A 09 69 6E 78 09 68 0D 0A 09 6D 6F 76 09 65    ...inx.h...mov.e
008CA0:  2C 6D 09 09 3B 67 65 74 20 61 64 64 72 65 73 73    ,m..;get address
008CB0:  20 6F 66 20 62 75 66 66 65 72 0D 0A 09 69 6E 78     of buffer...inx
008CC0:  09 68 09 09 3B 6D 6F 76 65 20 74 6F 20 68 69 67    .h..;move to hig
008CD0:  68 20 62 79 74 65 20 6F 66 20 61 64 64 72 65 73    h byte of addres
008CE0:  73 0D 0A 09 70 75 73 68 09 68 09 09 3B 73 61 76    s...push.h..;sav
008CF0:  65 20 63 75 72 72 65 6E 74 20 70 6F 69 6E 74 65    e current pointe
008D00:  09 6D 6F 76 09 61 2C 6D 09 09 3B 67 65 74 20 63    .mov.a,m..;get c
008D10:  68 61 72 61 63 74 65 72 20 66 72 6F 6D 20 66 69    haracter from fi
008D20:  6C 65 20 6E 61 6D 65 0D 0A 09 6F 72 61 09 61 09    le name...ora.a.
008D30:  09 3B 73 65 65 20 69 66 20 65 6E 64 20 6F 66 20    .;see if end of 
008D40:  73 74 72 69 6E 67 0D 0A 09 6A 7A 09 73 65 74 66    string...jz.setf
008D50:  63 62 31 62 09 3B 79 65 73 2E 2E 2E 20 6C 6F 6F    cb1b.;yes... loo
008D60:  70 20 62 61 63 6B 20 74 69 6C 6C 20 6E 6F 74 20    p back till not 
008D70:  73 70 61 63 65 0D 0A 09 69 6E 78 09 68 09 09 3B    space...inx.h..;
008D80:  6D 6F 76 65 20 74 6F 20 6E 65 78 74 20 62 79 74    move to next byt
008D90:  65 0D 0A 09 6A 6D 70 09 73 65 74 66 63 62 31 61    e...jmp.setfcb1a
008DA0:  0D 0A 73 65 74 66 63 62 31 62 3A 0D 0A 09 64 63    ..setfcb1b:...dc
008DB0:  78 09 68 09 09 3B 6D 6F 76 65 20 62 61 63 6B 20    x.h..;move back 
008DC0:  31 20 63 68 61 72 61 63 74 65 72 0D 0A 09 6D 6F    1 character...mo
008DD0:  76 09 61 2C 6D 09 09 3B 67 65 74 20 74 68 69 73    v.a,m..;get this
008DE0:  20 63 68 72 61 63 74 65 72 20 66 72 6F 6D 20 62     chracter from b
008DF0:  75 66 66 65 72 0D 0A 09 63 70 69 09 27 20 27 09    uffer...cpi.' '.
008E00:  09 3B 69 73 20 74 68 69 73 20 63 68 61 72 61 63    .;is this charac
008E10:  74 65 72 20 61 20 73 70 61 63 65 0D 0A 09 6A 7A    ter a space...jz
008E20:  09 73 65 74 66 63 62 31 62 09 3B 6C 6F 6F 70 20    .setfcb1b.;loop 
008E30:  74 69 6C 6C 20 6E 6F 6E 65 20 73 70 61 63 65 20    till none space 
008E40:  63 68 61 72 61 63 74 65 72 20 69 73 20 66 6F 75    character is fou
008E50:  6E 64 0D 0A 09 69 6E 78 09 68 09 09 3B 6D 6F 76    nd...inx.h..;mov
008E60:  65 20 74 6F 20 65 6E 64 20 6F 66 20 73 74 72 69    e to end of stri
008E70:  6E 67 0D 0A 09 6D 76 69 09 6D 2C 30 09 09 3B 6D    ng...mvi.m,0..;m
008E80:  6F 76 65 20 65 6E 64 20 6F 66 20 73 74 72 69 6E    ove end of strin
008E90:  67 20 6D 61 72 6B 65 72 0D 0A 09 70 6F 70 09 68    g marker...pop.h
008EA0:  09 09 3B 67 65 74 20 73 74 61 72 74 69 6E 67 20    ..;get starting 
008EB0:  61 64 64 72 65 73 73 20 62 61 63 6B 0D 0A 09 69    address back...i
008EC0:  6E 78 09 68 09 09 3B 6D 6F 76 65 20 74 6F 20 22    nx.h..;move to "
008ED0:  3A 22 20 69 66 20 64 69 73 6B 20 73 70 65 63 0D    :" if disk spec.
008EE0:  0A 09 6D 6F 76 09 61 2C 6D 09 09 3B 67 65 74 20    ..mov.a,m..;get 
008EF0:  74 68 69 73 20 63 68 61 72 61 63 74 65 72 20 66    this character f
008F00:  72 20 6F 6E 20 73 74 61 63 6B 0D 0A 09 6D 6F 76    r on stack...mov
008F10:  09 64 2C 6D 09 09 3B 67 65 74 20 68 69 67 68 20    .d,m..;get high 
008F20:  62 79 74 65 20 6F 66 20 61 64 64 72 65 73 73 0D    byte of address.
008F30:  0A 09 6D 76 69 09 63 2C 32 36 09 09 3B 73 65 74    ..mvi.c,26..;set
008F40:  20 64 6D 61 20 61 64 64 72 65 73 73 0D 0A 09 63     dma address...c
008F50:  61 6C 6C 09 62 64 6F 73 09 09 3B 63 61 6C 6C 20    all.bdos..;call 
008F60:  63 70 6D 20 74 6F 20 73 65 74 20 62 75 66 66 65    cpm to set buffe
008F70:  72 20 61 64 64 72 65 73 73 0D 0A 09 70 6F 70 09    r address...pop.
008F80:  68 09 09 3B 72 65 6D 6F 76 65 20 63 75 72 72 65    h..;remove curre
008F90:  6E 74 20 70 6F 69 6E 74 65 72 20 66 72 6F 6D 20    nt pointer from 
008FA0:  73 74 61 63 6B 0D 0A 09 69 6E 78 09 68 09 09 3B    stack...inx.h..;
008FB0:  6D 6F 76 65 20 74 6F 20 61 64 64 72 65 73 73 20    move to address 
008FC0:  6F 66 20 66 63 62 0D 0A 09 70 75 73 68 09 68 09    of fcb...push.h.
008FD0:  09 3B 70 75 74 20 63 75 72 72 65 6E 74 20 70 6F    .;put current po
008FE0:  69 6E 74 65 72 20 62 61 63 6B 20 6F 6E 20 73 74    inter back on st
008FF0:  61 63 6B 0D 0A 09 6D 6F 76 09 65 2C 6D 09 09 3B    ack...mov.e,m..;
009000:  67 65 74 20 6C 6F 77 20 62 79 74 65 20 6F 66 20    get low byte of 
009010:  66 63 62 20 61 64 64 72 65 73 73 0D 0A 09 69 6E    fcb address...in
009020:  78 09 68 09 09 3B 6D 6F 76 65 20 74 6F 20 68 69    x.h..;move to hi
009030:  67 68 20 62 79 74 65 20 6F 66 20 61 64 64 72 65    gh byte of addre
009040:  73 73 0D 0A 09 6D 6F 76 09 64 2C 6D 09 09 3B 67    ss...mov.d,m..;g
009050:  65 74 20 68 69 67 68 20 61 64 64 72 65 73 73 20    et high address 
009060:  6F 66 20 66 63 62 0D 0A 09 6D 76 69 09 63 2C 32    of fcb...mvi.c,2
009070:  31 09 09 3B 77 72 69 74 65 20 72 65 63 6F 72 64    1..;write record
009080:  20 74 6F 20 64 69 73 6B 0D 0A 09 63 61 6C 6C 09     to disk...call.
009090:  62 64 6F 73 09 09 3B 63 61 6C 6C 20 63 70 6D 20    bdos..;call cpm 
0090A0:  74 6F 20 64 6F 20 69 74 0D 0A 09 70 6F 70 09 68    to do it...pop.h
0090B0:  09 09 3B 67 65 74 20 63 75 72 72 65 6E 74 20 70    ..;get current p
0090C0:  6F 69 6E 74 65 72 20 62 61 63 6B 0D 0A 09 6F 72    ointer back...or
0090D0:  61 09 61 09 09 3B 63 68 65 63 6B 20 66 6F 72 20    a.a..;check for 
0090E0:  65 72 72 6F 72 73 0D 0A 09 6A 6E 7A 09 77 72 69    errors...jnz.wri
0090F0:  74 65 32 09 09 3B 65 72 72 6F 72 20 77 72 69 74    te2..;error writ
009100:  6F 72 6D 20 66 69 6C 65 20 6E 61 6D 65 0D 0A 09    orm file name...
009110:  64 63 78 09 68 09 09 3B 70 75 74 20 70 6F 69 6E    dcx.h..;put poin
009120:  74 65 72 20 62 61 63 6B 0D 0A 09 63 70 69 09 27    ter back...cpi.'
009130:  3A 27 09 09 3B 73 65 65 20 69 66 20 64 69 73 6B    :'..;see if disk
009140:  20 73 70 65 63 20 69 6E 20 66 69 6C 65 20 6E 61     spec in file na
009150:  6D 65 20 0D 0A 09 6A 6E 7A 09 73 65 74 66 63 62    me ...jnz.setfcb
009160:  32 09 09 3B 6E 6F 20 67 74 20 72 65 61 64 79 20    2..;no gt ready 
009170:  66 6F 72 20 66 69 6C 65 20 6E 61 6D 65 0D 0A 09    for file name...
009180:  6D 6F 76 09 61 2C 6D 09 09 3B 67 65 74 20 64 69    mov.a,m..;get di
009190:  73 6B 20 6E 61 6D 65 0D 0A 09 63 61 6C 6C 09 73    sk name...call.s
0091A0:  65 74 66 63 62 31 30 09 09 3B 6D 61 6B 65 20 69    etfcb10..;make i
0091B0:  66 20 75 70 70 65 72 20 63 61 73 65 0D 0A 09 73    f upper case...s
0091C0:  75 69 09 27 40 27 09 09 3B 6D 61 6B 65 20 69 74    ui.'@'..;make it
0091D0:  20 30 31 2D 31 36 20 66 6F 72 20 64 69 73 6B 20     01-16 for disk 
0091E0:  61 2D 70 0D 0A 09 69 6E 78 09 68 09 09 3B 6D 6F    a-p...inx.h..;mo
0091F0:  76 65 20 74 6F 20 73 74 61 72 74 20 6F 66 20 66    ve to start of f
009200:  69 6C 65 20 6E 61 6D 65 0D 0A 09 69 6E 78 09 68    ile name...inx.h
009210:  0D 0A 09 6A 6D 70 09 73 65 74 66 63 62 33 09 09    ...jmp.setfcb3..
009220:  3B 6D 6F 76 65 20 64 69 73 6B 20 76 61 6C 75 65    ;move disk value
009230:  20 69 6E 74 6F 20 66 63 62 0D 0A 73 65 74 66 63     into fcb..setfc
009240:  62 32 3A 0D 0A 09 78 72 61 09 61 09 09 3B 6D 61    b2:...xra.a..;ma
009250:  6B 65 20 64 65 66 75 61 6C 74 20 64 69 73 6B 0D    ke defualt disk.
009260:  0A 73 65 74 66 63 62 33 3A 0D 0A 09 73 74 61 78    .setfcb3:...stax
009270:  09 64 09 09 3B 73 61 76 65 20 76 61 6C 75 65 20    .d..;save value 
009280:  66 6F 72 20 64 69 73 6B 20 64 72 69 76 65 09 0D    for disk drive..
009290:  0A 09 69 6E 78 09 64 09 09 3B 6D 6F 76 65 20 66    ..inx.d..;move f
0092A0:  63 62 20 74 6F 20 66 69 6C 65 20 6E 61 6D 65 0D    cb to file name.
0092B0:  0A 09 6D 76 69 09 62 2C 38 09 09 3B 6E 75 6D 62    ..mvi.b,8..;numb
0092C0:  65 72 20 6F 66 20 62 79 74 65 20 69 6E 20 66 69    er of byte in fi
0092D0:  6C 65 20 6E 61 6D 65 0D 0A 09 63 61 6C 6C 09 73    le name...call.s
0092E0:  65 74 66 63 62 31 31 09 3B 6D 6F 76 65 20 66 69    etfcb11.;move fi
0092F0:  6C 65 20 6E 61 6D 65 20 69 6E 74 6F 20 70 6C 61    le name into pla
009300:  69 6E 67 20 66 69 6C 65 20 66 72 6F 6D 20 64 69    ing file from di
009310:  73 6B 0D 0A 09 64 63 78 09 68 09 09 3B 6D 6F 76    sk...dcx.h..;mov
009320:  65 20 74 6F 20 61 64 64 72 65 73 73 20 6F 66 20    e to address of 
009330:  62 75 66 66 65 72 0D 0A 09 6D 6F 76 09 64 2C 6D    buffer...mov.d,m
009340:  09 09 3B 67 65 74 20 68 69 67 68 20 62 79 74 65    ..;get high byte
009350:  20 6F 66 20 61 64 64 72 65 73 73 0D 0A 09 64 63     of address...dc
009360:  78 09 68 09 09 3B 6D 6F 76 65 20 74 6F 20 6C 6F    x.h..;move to lo
009370:  77 20 20 62 79 74 65 20 6F 66 20 61 64 64 72 65    w  byte of addre
009380:  73 73 0D 0A 09 6D 6F 76 09 65 2C 6D 09 09 3B 67    ss...mov.e,m..;g
009390:  65 74 20 6C 6F 77 20 62 79 74 65 20 6F 66 20 61    et low byte of a
0093A0:  64 64 72 65 73 73 0D 0A 09 78 63 68 67 09 09 09    ddress...xchg...
0093B0:  3B 70 75 74 20 61 64 64 72 65 73 73 20 69 6E 20    ;put address in 
0093C0:  68 6C 20 61 6E 64 20 76 61 72 62 6C 65 20 61 64    hl and varble ad
0093D0:  64 72 65 73 73 20 69 6E 20 68 6C 0D 0A 09 6C 78    dress in hl...lx
0093E0:  69 09 62 2C 38 30 68 09 09 3B 6C 65 6E 67 68 74    i.b,80h..;lenght
0093F0:  20 6F 66 20 31 20 72 65 63 6F 72 64 20 6F 6E 20     of 1 record on 
009400:  64 69 73 6B 0D 0A 09 64 61 64 09 62 09 09 3B 61    disk...dad.b..;a
009410:  64 64 20 73 65 63 74 6F 72 20 6C 65 6E 67 68 74    dd sector lenght
009420:  20 74 6F 20 62 75 66 66 65 72 20 61 64 64 72 65     to buffer addre
009430:  73 73 0D 0A 09 78 63 68 67 09 09 09 3B 70 75 74    ss...xchg...;put
009440:  20 62 75 66 66 65 72 20 61 64 64 72 65 73 73 20     buffer address 
009450:  62 61 63 6B 20 69 6E 20 64 65 0D 0A 09 6D 6F 76    back in de...mov
009460:  09 6D 2C 65 09 09 3B 73 61 76 65 20 6E 65 77 20    .m,e..;save new 
009470:  6C 6F 77 20 62 79 74 65 20 6F 66 20 61 64 64 72    low byte of addr
009480:  65 73 73 0D 0A 09 69 6E 78 09 68 09 09 3B 6D 6F    ess...inx.h..;mo
009490:  76 65 20 74 6F 20 68 69 67 68 20 62 79 74 65 20    ve to high byte 
0094A0:  6F 66 20 61 64 64 72 65 73 73 0D 0A 09 6D 6F 76    of address...mov
0094B0:  09 6D 2C 64 09 09 3B 73 61 76 65 20 68 69 67 68    .m,d..;save high
0094C0:  20 62 79 74 65 20 6F 66 20 61 64 64 72 65 73 73     byte of address
0094D0:  0D 0A 09 6A 6D 70 09 77 72 69 74 65 09 09 3B 73    ...jmp.write..;s
0094E0:  65 65 20 69 74 09 74 69 6D 65 20 74 6F 09 77 72    ee it.time to.wr
0094F0:  69 74 65 20 6E 65 78 74 20 72 65 63 6F 72 64 0D    ite next record.
009500:  63 65 0D 0A 09 6A 6E 7A 09 73 65 74 66 63 62 36    ce...jnz.setfcb6
009510:  09 09 3B 73 65 65 20 69 66 20 62 61 64 20 63 68    ..;see if bad ch
009520:  61 72 61 63 74 65 72 20 69 6E 20 66 69 6C 65 20    aracter in file 
009530:  6E 61 6D 65 0D 0A 09 63 70 69 09 27 2E 27 09 09    name...cpi.'.'..
009540:  3B 63 68 65 6B 20 74 6F 20 73 65 65 20 69 66 20    ;chek to see if 
009550:  66 69 6C 65 20 74 79 70 65 0D 0A 09 6A 6E 7A 09    file type...jnz.
009560:  73 65 74 66 63 62 34 09 09 3B 6E 6F 20 64 6F 20    setfcb4..;no do 
009570:  6E 6F 74 20 6D 6F 76 65 20 70 6F 69 6E 74 65 72    not move pointer
009580:  20 70 61 73 74 20 27 2E 27 0D 0A 09 69 6E 78 09     past '.'...inx.
009590:  68 09 09 3B 6D 6F 76 65 20 74 6F 20 66 69 6C 65    h..;move to file
0095A0:  20 74 79 70 65 20 62 79 74 65 0D 0A 73 65 74 66     type byte..setf
0095B0:  63 62 34 3A 0D 0A 09 6D 76 69 09 62 2C 33 09 09    cb4:...mvi.b,3..
0095C0:  3B 6E 75 6D 62 65 72 20 6F 66 20 62 79 74 65 73    ;number of bytes
0095D0:  20 69 6E 20 66 69 6C 65 20 74 79 70 65 0D 0A 09     in file type...
0095E0:  63 61 6C 6C 09 73 65 74 66 63 62 31 31 09 3B 6D    call.setfcb11.;m
0095F0:  6F 76 65 20 66 69 6C 65 20 74 79 70 65 20 69 6E    ove file type in
009600:  74 6F 20 66 63 62 0D 0A 09 6A 6E 7A 09 73 65 74    to fcb...jnz.set
009610:  66 63 62 36 09 09 3B 73 65 65 20 69 66 20 62 61    fcb6..;see if ba
009620:  64 20 63 68 61 72 61 63 74 65 72 20 69 6E 20 66    d character in f
009630:  69 6C 65 20 74 79 70 65 0D 0A 09 6D 76 69 09 62    ile type...mvi.b
009640:  2C 32 34 09 09 3B 6E 75 6D 62 65 72 20 6F 66 20    ,24..;number of 
009650:  62 79 74 65 73 20 6C 65 66 74 20 69 6E 20 66 63    bytes left in fc
009660:  62 0D 0A 09 6D 76 69 09 61 2C 30 09 09 3B 76 61    b...mvi.a,0..;va
009670:  6C 75 65 20 74 6F 20 66 69 6C 65 20 66 63 62 20    lue to file fcb 
009680:  77 69 74 68 0D 0A 73 65 74 66 63 62 35 3A 0D 0A    with..setfcb5:..
009690:  09 73 74 61 78 09 64 09 09 3B 70 75 74 20 30 20    .stax.d..;put 0 
0096A0:  69 6E 20 66 63 62 20 65 78 2D 72 32 0D 0A 09 69    in fcb ex-r2...i
0096B0:  6E 78 09 64 09 09 3B 6D 6F 76 65 20 74 6F 20 6E    nx.d..;move to n
0096C0:  65 78 74 20 62 79 74 65 0D 0A 09 64 63 72 09 62    ext byte...dcr.b
0096D0:  09 09 3B 73 65 65 20 69 66 20 64 6F 6E 65 20 77    ..;see if done w
0096E0:  69 74 68 20 6D 6F 76 65 0D 0A 09 6A 6E 7A 09 73    ith move...jnz.s
0096F0:  65 74 66 63 62 35 09 09 3B 6E 6F 20 6B 65 65 70    etfcb5..;no keep
009700:  0A 77 72 69 74 65 31 3A 0D 0A 09 6C 78 69 09 68    .write1:...lxi.h
009710:  2C 30 09 09 3B 65 76 65 72 79 20 74 68 69 6E 67    ,0..;every thing
009720:  20 69 73 20 6F 6B 20 72 65 74 75 72 6E 20 74 6F     is ok return to
009730:  20 63 61 6C 6C 65 72 0D 0A 09 6A 6D 70 09 77 72     caller...jmp.wr
009740:  69 74 65 33 09 09 3B 73 65 74 20 64 6D 61 20 61    ite3..;set dma a
009750:  64 64 72 65 73 73 20 74 6F 20 74 62 75 66 20 61    ddress to tbuf a
009760:  6E 64 20 72 65 74 75 72 6E 0D 0A 77 72 69 74 65    nd return..write
009770:  32 3A 0D 0A 09 6C 78 69 09 68 2C 2D 31 09 09 3B    2:...lxi.h,-1..;
009780:  65 72 72 6F 72 20 77 72 69 74 69 6E 67 20 66 69    error writing fi
009790:  6C 65 0D 0A 77 72 69 74 65 33 3A 0D 0A 09 70 75    le..write3:...pu
0097A0:  73 68 09 68 09 09 3B 73 61 76 65 20 72 65 74 75    sh.h..;save retu
0097B0:  72 6E 20 63 6F 64 65 0D 0A 09 6C 78 69 09 64 2C    rn code...lxi.d,
0097C0:  63 70 6D 63 6D 64 09 3B 61 64 64 72 65 73 73 20    cpmcmd.;address 
0097D0:  6F 66 20 74 65 6D 70 20 62 75 66 66 0D 0A 09 6D    of temp buff...m
0097E0:  76 69 09 63 2C 32 36 09 09 3B 73 65 74 20 64 6D    vi.c,26..;set dm
0097F0:  61 20 61 64 64 72 65 73 73 20 66 75 6E 63 74 69    a address functi
009800:  6F 6E 0D 0A 09 63 61 6C 6C 09 62 64 6F 73 09 09    on...call.bdos..
009810:  3B 63 61 6C 6C 20 63 70 6D 20 74 6F 20 64 6F 20    ;call cpm to do 
009820:  6E 65 65 64 65 64 20 66 75 6E 74 69 6F 6E 0D 0A    needed funtion..
009830:  09 70 6F 70 09 68 09 09 3B 67 65 74 20 72 65 74    .pop.h..;get ret
009840:  75 72 6E 20 63 6F 64 65 20 66 72 6F 6D 20 73 74    urn code from st
009850:  61 63 6B 0D 0A 09 72 65 74 09 09 09 3B 61 6C 6C    ack...ret...;all
009860:  20 64 6F 6E 65 20 72 65 74 75 72 6E 20 74 6F 20     done return to 
009870:  63 61 6C 6C 65 72 0D 0A 3B 0D 0A 3B 09 73 65 74    caller..;..;.set
009880:  66 63 62 0D 0A 3B 0D 0A 3B 09 66 75 6E 63 74 69    fcb..;..;.functi
009890:  6F 6E 20 74 6F 20 62 75 69 6C 64 20 66 63 62 20    on to build fcb 
0098A0:  66 6F 72 20 66 69 6C 65 20 6E 61 6D 65 20 70 6F    for file name po
0098B0:  69 6E 74 65 64 20 74 6F 20 69 6E 20 68 6C 20 61    inted to in hl a
0098C0:  6E 64 0D 0A 3B 09 61 64 64 72 65 73 73 20 6F 66    nd..;.address of
0098D0:  20 66 63 62 20 69 6E 20 64 65 20 0D 0A 3B 0D 0A     fcb in de ..;..
0098E0:  3B 09 63 61 6C 6C 69 6E 67 20 66 6F 72 6D 61 74    ;.calling format
0098F0:  20 66 72 6F 6D 20 22 43 22 0D 0A 3B 09 73 65 74     from "C"..;.set
009900:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
009910:  08 00 01 00 02 09 52 E5 08 00 C1 02 00 00 00 02    ......R.........
009920:  08 00 C6 02 00 00 00 02 08 00 C2 02 00 00 00 02    ................
009930:  08 00 C7 02 00 00 00 02 08 00 C3 02 00 00 00 02    ................
009940:  08 00 C8 02 00 00 00 02 08 00 C4 02 00 00 00 02    ................
009950:  08 00 C9 02 00 00 00 02 08 00 C5 02 00 00 00 02    ................
009960:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
009970:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
009980:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
009990:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0099A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0099B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0099C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0099D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0099E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0099F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
009A00:  20 6F 6E 20 6D 6F 76 65 69 6E 67 0D 0A 09 6C 78     on moveing...lx
009A10:  69 09 68 2C 30 09 09 3B 72 65 74 75 72 6E 20 66    i.h,0..;return f
009A20:  61 6C 73 65 20 69 66 20 6E 6F 20 65 72 72 6F 72    alse if no error
009A30:  73 0D 0A 09 72 65 74 0D 0A 73 65 74 66 63 62 36    s...ret..setfcb6
009A40:  3A 0D 0A 09 6C 78 69 09 68 2C 2D 31 09 09 3B 72    :...lxi.h,-1..;r
009A50:  65 74 75 72 6E 20 2D 31 20 69 66 20 62 61 64 20    eturn -1 if bad 
009A60:  63 68 61 72 61 63 74 65 72 20 69 6E 20 66 69 6C    character in fil
009A70:  65 20 6E 61 6D 65 0D 0A 09 72 65 74 0D 0A 3B 0D    e name...ret..;.
009A80:  0A 3B 09 73 68 69 66 74 20 63 68 61 72 61 63 74    .;.shift charact
009A90:  65 72 20 74 6F 20 75 70 70 65 72 20 63 61 73 65    er to upper case
009AA0:  0D 0A 3B 0D 0A 73 65 74 66 63 62 31 30 3A 0D 0A    ..;..setfcb10:..
009AB0:  09 63 70 69 09 30 36 31 68 09 09 3B 69 73 20 69    .cpi.061h..;is i
009AC0:  74 20 6C 65 73 73 20 74 68 65 6E 20 6C 6F 77 77    t less then loww
009AD0:  65 72 20 63 61 73 65 20 61 0D 0A 09 72 63 09 09    er case a...rc..
009AE0:  09 3B 79 65 73 2E 2E 2E 0D 0A 09 63 70 69 09 30    .;yes......cpi.0
009AF0:  37 61 68 09 09 3B 69 73 20 69 74 20 67 72 65 61    7ah..;is it grea
009B00:  74 65 72 20 74 68 65 6E 20 6C 6F 77 77 65 72 20    ter then lowwer 
009B10:  63 61 73 65 20 7A 0D 0A 09 72 6E 63 09 09 09 3B    case z...rnc...;
009B20:  79 65 73 0D 0A 09 61 6E 69 09 30 35 66 68 09 09    yes...ani.05fh..
009B30:  3B 6D 61 6B 65 20 69 74 20 6C 6F 6F 77 65 72 20    ;make it loower 
009B40:  63 61 73 65 0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B    case...ret..;..;
009B50:  09 73 63 61 6E 20 62 20 63 68 61 72 61 63 74 65    .scan b characte
009B60:  72 73 20 61 6E 64 20 6D 6F 76 65 20 69 6E 74 6F    rs and move into
009B70:  20 66 63 62 20 63 68 65 63 6B 69 6E 67 20 66 6F     fcb checking fo
009B80:  72 20 22 3F 22 20 61 6E 64 0D 0A 3B 09 62 61 64    r "?" and..;.bad
009B90:  20 63 68 61 72 61 63 74 65 72 20 69 6E 20 66 69     character in fi
009BA0:  6C 65 20 6E 61 6D 65 0D 0A 3B 0D 0A 73 65 74 66    le name..;..setf
009BB0:  63 62 31 31 3A 0D 0A 09 6D 6F 76 09 61 2C 6D 09    cb11:...mov.a,m.
009BC0:  09 3B 67 65 74 20 63 68 61 72 61 63 74 65 72 20    .;get character 
009BD0:  66 6F 72 6D 20 66 69 6C 65 20 6E 61 6D 65 0D 0A    form file name..
009BE0:  09 63 70 69 09 27 2A 27 09 09 3B 69 73 20 69 74    .cpi.'*'..;is it
009BF0:  20 61 20 77 69 6C 64 20 63 61 72 64 0D 0A 09 6D     a wild card...m
009C00:  69 09 68 2C 30 09 09 3B 67 65 74 20 73 69 7A 65    i.h,0..;get size
009C10:  20 6F 66 20 66 72 65 65 20 6C 69 73 74 20 61 72     of free list ar
009C20:  65 61 0D 0A 09 73 74 61 09 40 62 61 73 65 5F 66    ea...sta.@base_f
009C30:  72 65 65 2B 32 09 3B 73 61 76 65 20 61 73 20 63    ree+2.;save as c
009C40:  75 72 72 65 6E 74 20 73 69 7A 65 20 6F 66 20 66    urrent size of f
009C50:  72 65 65 20 61 72 65 61 0D 0A 09 6C 78 69 09 68    ree area...lxi.h
009C60:  2C 33 30 30 30 09 09 3B 73 69 7A 65 20 6F 66 20    ,3000..;size of 
009C70:  6D 65 6D 6F 72 79 20 6E 6F 74 20 74 6F 20 75 73    memory not to us
009C80:  65 0D 0A 09 73 68 6C 64 09 40 61 6C 6F 63 6D 78    e...shld.@alocmx
009C90:  09 09 3B 73 61 76 65 20 69 74 20 66 6F 72 20 6C    ..;save it for l
009CA0:  61 74 65 72 20 75 73 65 0D 0A 09 72 65 74 0D 0A    ater use...ret..
009CB0:  3B 0D 0A 3B 09 64 61 74 61 20 61 72 65 61 20 75    ;..;.data area u
009CC0:  73 65 64 20 66 6F 72 20 66 72 65 65 20 73 74 6F    sed for free sto
009CD0:  72 61 67 65 20 6D 61 6E 67 6D 65 6E 74 0D 0A 3B    rage mangment..;
009CE0:  0D 0A 40 66 72 65 65 5F 6C 69 73 74 3A 64 73 65    ..@free_list:dse
009CF0:  63 74 0D 0A 40 42 61 73 65 5F 66 72 65 65 3A 09    ct..@Base_free:.
009D00:  64 73 09 34 0D 0A 40 61 6C 6C 6F 63 70 3A 09 64    ds.4..@allocp:.d
009D10:  73 09 32 0D 0A 40 61 6C 6F 63 6D 78 09 09 64 73    s.2..@alocmx..ds
009D20:  09 32 0D 0A 3B 0D 0A 3B 09 61 72 67 6C 6F 61 64    .2..;..;.argload
009D30:  0D 0A 3B 0D 0A 3B 09 66 75 6E 63 74 69 6F 6E 20    ..;..;.function 
009D40:  74 6F 20 6C 6F 61 64 20 62 63 20 77 69 74 68 20    to load bc with 
009D50:  61 72 67 20 62 61 63 6B 20 33 20 64 65 20 77 69    arg back 3 de wi
009D60:  74 68 20 61 72 67 20 62 61 63 6B 20 32 20 68 6C    th arg back 2 hl
009D70:  20 77 69 74 68 0D 0A 3B 09 09 20 31 20 62 61 63     with..;.. 1 bac
009D80:  6B 0D 0A 61 72 67 6C 6F 61 64 3A 63 73 65 63 74    k..argload:csect
009D90:  0D 0A 09 6C 78 69 09 68 2C 38 09 09 3B 6F 66 66    ...lxi.h,8..;off
009DA0:  73 65 74 20 69 6E 20 73 74 61 63 6B 20 66 6F 72    set in stack for
009DB0:  20 61 72 67 20 66 6F 72 20 62 63 0D 0A 09 64 61     arg for bc...da
009DC0:  64 09 73 70 09 09 3B 61 64 64 20 74 6F 20 73 74    d.sp..;add to st
009DD0:  61 63 6B 20 70 6F 69 6E 74 65 72 0D 0A 09 6D 6F    ack pointer...mo
009DE0:  76 09 63 2C 6D 0D 0A 09 69 6E 78 09 68 0D 0A 09    v.c,m...inx.h...
009DF0:  6D 6F 76 09 62 2C 6D 0D 0A 09 69 6E 78 09 68 0D    mov.b,m...inx.h.
009E00:  76 69 09 61 2C 27 3F 27 09 09 3B 79 65 73 20 6D    vi.a,'?'..;yes m
009E10:  61 6B 65 20 69 74 20 61 6C 6C 20 3F 3F 3F 0D 0A    ake it all ???..
009E20:  09 6A 7A 09 73 65 74 66 63 62 31 31 34 09 3B 6D    .jz.setfcb114.;m
009E30:  61 6B 65 20 61 6C 6C 20 3F 3F 3F 0D 0A 73 65 74    ake all ???..set
009E40:  66 63 62 31 31 32 3A 0D 0A 09 6D 6F 76 09 61 2C    fcb112:...mov.a,
009E50:  6D 09 09 3B 67 65 74 20 63 68 61 72 61 63 74 65    m..;get characte
009E60:  72 20 74 6F 20 63 68 65 63 6B 0D 0A 09 63 61 6C    r to check...cal
009E70:  6C 09 73 65 74 66 63 62 31 32 09 3B 67 65 74 20    l.setfcb12.;get 
009E80:  61 6E 64 20 63 68 65 63 6B 20 74 6F 20 73 65 65    and check to see
009E90:  20 69 66 20 76 61 69 6C 64 09 09 0D 0A 09 6A 63     if vaild.....jc
009EA0:  09 73 65 74 66 63 62 31 31 33 09 3B 6E 6F 2E 2E    .setfcb113.;no..
009EB0:  2E 2E 0D 0A 09 73 74 61 78 09 64 09 09 3B 73 61    .....stax.d..;sa
009EC0:  76 65 20 63 68 61 72 61 63 74 65 72 20 69 6E 20    ve character in 
009ED0:  66 63 62 0D 0A 09 69 6E 78 09 68 09 09 3B 6D 6F    fcb...inx.h..;mo
009EE0:  76 65 20 62 6F 74 68 20 70 6F 69 6E 74 65 72 73    ve both pointers
009EF0:  20 75 70 20 62 79 20 31 20 62 79 65 0D 0A 09 69     up by 1 bye...i
009F00:  6E 78 09 64 0D 0A 09 64 63 72 09 62 09 09 3B 73    nx.d...dcr.b..;s
009F10:  65 65 20 69 66 20 20 64 6F 6E 65 20 77 69 74 68    ee if  done with
009F20:  20 66 69 6C 65 20 6E 61 6D 65 0D 0A 09 6A 6E 7A     file name...jnz
009F30:  09 73 65 74 66 63 62 31 31 09 3B 6E 6F 20 6B 65    .setfcb11.;no ke
009F40:  65 70 20 6F 6E 20 6D 6F 76 65 69 6E 67 0D 0A 09    ep on moveing...
009F50:  6A 6D 70 09 73 65 74 66 63 62 31 31 35 09 3B 64    jmp.setfcb115.;d
009F60:  6F 6E 65 20 77 69 74 68 20 66 69 6C 65 20 6C 6F    one with file lo
009F70:  6F 6B 20 66 6F 72 20 65 6E 64 69 6E 67 20 63 68    ok for ending ch
009F80:  61 72 0D 0A 73 65 74 66 63 62 31 31 33 3A 0D 0A    ar..setfcb113:..
009F90:  09 6F 72 61 09 61 09 09 3B 63 68 65 63 6B 20 74    .ora.a..;check t
009FA0:  6F 20 73 65 65 20 69 66 20 65 6E 64 20 6F 66 20    o see if end of 
009FB0:  66 69 6C 65 20 6E 61 6D 65 0D 0A 09 6A 7A 09 73    file name...jz.s
009FC0:  65 74 66 63 62 31 31 33 61 09 3B 79 65 73 2E 2E    etfcb113a.;yes..
009FD0:  2E 0D 0A 09 63 70 69 09 27 2E 27 09 09 3B 63 68    ....cpi.'.'..;ch
009FE0:  65 63 6B 20 66 6F 72 20 64 65 6C 69 6D 74 65 72    eck for delimter
009FF0:  0D 0A 09 72 6E 7A 09 09 09 3B 6E 6F 20 72 65 74    ...rnz...;no ret
00A000:  0A 09 6D 6F 76 09 65 2C 6D 0D 0A 09 69 6E 78 09    ..mov.e,m...inx.
00A010:  68 0D 0A 09 6D 6F 76 09 64 2C 6D 0D 0A 09 69 6E    h...mov.d,m...in
00A020:  78 09 68 0D 0A 09 6D 6F 76 09 61 2C 6D 0D 0A 09    x.h...mov.a,m...
00A030:  69 6E 78 09 68 0D 0A 09 6D 6F 76 09 68 2C 6D 0D    inx.h...mov.h,m.
00A040:  0A 09 6D 6F 76 09 6C 2C 61 0D 0A 09 72 65 74 0D    ..mov.l,a...ret.
00A050:  0A 0D 0A 0D 0A 1A 1A 69 6E 78 09 68 0D 0A 09 6D    .......inx.h...m
00A060:  6F 76 09 68 2C 6D 0D 0A 09 6D 6F 76 09 6C 2C 61    ov.h,m...mov.l,a
00A070:  0D 0A 09 72 65 74 0D 0A 0D 0A 0D 0A 1A 09 73 74    ...ret........st
00A080:  2A 73 05 EB 0E 15 CD 05 00 B7 2A 75 05 C2 9E 31    *s........*u...1
00A090:  23 22 75 05 2A A3 05 2B 22 A3 05 C3 62 31 C1 C9    #"u.*£.+"£..b1..
00A0A0:  3A 77 05 B7 6F CA AF 31 AF 32 77 05 26 00 C9 C5    :w..o..1.2w.&...
00A0B0:  0E 01 CD 05 00 C1 FE 03 CA 00 00 FE 1A 21 FF FF    .............!..
00A0C0:  C8 6F FE 0D C2 D2 31 C5 0E 02 1E 0A CD 05 00 C1    .o....1.........
00A0D0:  2E 0A 26 00 C9 CD 37 03 C5 3A 9F 05 4F 2A A1 05    ..&...7..:..O*..
00A0E0:  EB CD 05 00 6F 60 C1 C9 1A 1A 1A 1A 1A 1A 1A 1A    ....o`..........
00A0F0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 05    ................
00A100:  00 FF FF FF FF 00 00 00 00 FF FF FF FF 00 00 00    ................
00A110:  00 FF FF FF FF 00 00 00 00 00 00 00 00 FF FF FF    ................
00A120:  FF 00 00 00 00 FF FF FF FF 00 00 00 00 FF FF FF    ................
00A130:  FF 00 00 00 00 FF FF FF FF 00 00 00 00 FF FF FF    ................
00A140:  FF 00 00 00 00 FF FF FF FF 00 00 00 00 FF FF FF    ................
00A150:  FF 00 00 00 00 FF FF FF FF 00 00 00 00 FF FF FF    ................
00A160:  FF 00 00 00 00 FF FF FF FF 00 00 00 00 FF FF FF    ................
00A170:  FF 00 00 00 00 FF FF FF FF 00 00 00 00 FF FF FF    ................
00A180:  FF 00 00 00 00 FF FF FF FF 00 00 00 00 FF FF FF    ................
00A190:  FF 00 00 00 00 FF FF FF FF FF FF FF FF 00 00 00    ................
00A1A0:  00 FF FF FF FF 00 00 00 00 FF FF FF FF 00 00 00    ................
00A1B0:  00 FF FF FF FF 00 00 00 00 FF FF FF FF 00 00 00    ................
00A1C0:  00 FF FF FF FF 00 00 00 00 FF FF FF FF 00 00 00    ................
00A1D0:  00 FF FF FF FF 00 00 00 00 FF FF FF FF 00 00 00    ................
00A1E0:  00 FF FF FF FF 00 00 00 00 FF FF FF FF 00 00 00    ................
00A1F0:  00 FF FF FF FF 00 00 00 00 FF FF FF FF 00 00 00    ................
00A200:  75 72 6E 20 61 6E 64 20 73 68 6F 77 20 65 72 72    urn and show err
00A210:  6F 72 0D 0A 73 65 74 66 63 62 31 31 33 61 3A 0D    or..setfcb113a:.
00A220:  0A 09 6D 76 69 09 61 2C 27 20 27 09 09 3B 64 6F    ..mvi.a,' '..;do
00A230:  6E 65 20 77 69 74 68 20 66 69 65 6C 64 20 20 70    ne with field  p
00A240:  61 64 20 77 69 74 68 20 62 6C 61 6E 6B 73 0D 0A    ad with blanks..
00A250:  73 65 74 66 63 62 31 31 34 3A 0D 0A 09 73 74 61    setfcb114:...sta
00A260:  78 09 64 09 09 3B 66 69 6C 6C 20 66 63 62 20 77    x.d..;fill fcb w
00A270:  69 74 68 20 76 61 6C 75 65 0D 0A 09 69 6E 78 09    ith value...inx.
00A280:  64 09 09 3B 6D 6F 76 65 20 74 6F 20 6E 65 78 74    d..;move to next
00A290:  20 62 79 74 65 20 6F 66 20 66 63 62 0D 0A 09 64     byte of fcb...d
00A2A0:  63 72 09 62 09 09 3B 73 65 65 20 69 66 20 64 6F    cr.b..;see if do
00A2B0:  6E 65 20 77 69 74 68 20 6D 6F 76 65 0D 0A 09 6A    ne with move...j
00A2C0:  6E 7A 09 73 65 74 66 63 62 31 31 34 09 3B 6E 6F    nz.setfcb114.;no
00A2D0:  20 6B 65 65 70 20 6F 6E 20 66 69 6C 6C 69 6E 67     keep on filling
00A2E0:  0D 0A 73 65 74 66 63 62 31 31 35 3A 0D 0A 09 6D    ..setfcb115:...m
00A2F0:  6F 76 09 61 2C 6D 09 09 3B 67 65 74 20 63 68 61    ov.a,m..;get cha
00A300:  72 61 63 74 65 72 20 66 72 6F 6D 20 66 69 6C 65    racter from file
00A310:  20 6E 61 6D 65 0D 0A 09 6F 72 61 09 61 0D 0A 09     name...ora.a...
00A320:  72 7A 0D 0A 09 63 70 69 09 27 2E 27 09 09 3B 63    rz...cpi.'.'..;c
00A330:  68 65 63 6B 20 66 6F 72 20 27 2E 27 0D 0A 09 72    heck for '.'...r
00A340:  7A 0D 0A 09 69 6E 78 09 68 0D 0A 09 6A 6D 70 09    z...inx.h...jmp.
00A350:  73 65 74 66 63 62 31 31 35 09 3B 6E 6F 74 20 65    setfcb115.;not e
00A360:  6E 64 69 6E 67 20 63 68 61 72 61 63 74 65 72 20    nding character 
00A370:  6B 65 65 70 20 6F 6E 20 6C 6F 6F 6B 69 6E 67 0D    keep on looking.
00A380:  0A 3B 0D 0A 3B 09 63 68 65 63 6B 20 74 6F 20 73    .;..;.check to s
00A390:  65 65 20 69 66 20 76 61 69 6C 64 20 63 68 61 72    ee if vaild char
00A3A0:  61 63 74 65 72 20 66 6F 72 20 66 63 62 20 61 2D    acter for fcb a-
00A3B0:  7A 20 61 6E 64 20 30 2D 39 20 6F 6E 6C 79 0D 0A    z and 0-9 only..
00A3C0:  3B 09 73 65 74 20 63 61 72 72 79 20 69 66 20 6E    ;.set carry if n
00A3D0:  6F 74 20 61 20 76 61 69 6C 64 20 63 68 61 72 61    ot a vaild chara
00A3E0:  63 74 65 72 20 6F 74 68 65 72 77 69 73 65 20 72    cter otherwise r
00A3F0:  65 73 65 74 20 63 61 72 72 79 0D 0A 3B 0D 0A 73    eset carry..;..s
00A400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A4A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A4B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A4C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A4D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A4E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A4F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A5A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A5B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A5C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A5D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A5E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A5F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00A600:  65 74 66 63 62 31 32 3A 0D 0A 09 63 61 6C 6C 09    etfcb12:...call.
00A610:  73 65 74 66 63 62 31 30 09 3B 75 70 70 65 72 20    setfcb10.;upper 
00A620:  63 61 73 65 20 63 68 61 72 61 63 74 65 72 0D 0A    case character..
00A630:  09 63 70 69 09 27 3F 27 09 09 3B 77 69 6C 64 20    .cpi.'?'..;wild 
00A640:  63 61 72 64 20 63 68 61 72 61 63 74 65 72 0D 0A    card character..
00A650:  09 6A 7A 09 73 65 74 66 63 62 31 32 31 09 3B 79    .jz.setfcb121.;y
00A660:  65 73 20 76 61 69 6C 64 20 63 68 61 72 61 63 74    es vaild charact
00A670:  65 72 0D 0A 09 63 70 69 09 27 24 27 09 09 3B 6E    er...cpi.'$'..;n
00A680:  65 65 64 65 64 20 66 6F 72 20 73 75 62 6D 69 74    eeded for submit
00A690:  20 66 69 6C 65 73 0D 0A 09 6A 7A 09 73 65 74 66     files...jz.setf
00A6A0:  63 62 31 32 31 09 3B 79 65 73 20 76 61 6C 69 64    cb121.;yes valid
00A6B0:  20 63 68 61 72 61 63 74 65 72 0D 0A 09 63 70 69     character...cpi
00A6C0:  09 27 30 27 09 09 3B 69 73 20 69 74 20 6C 65 73    .'0'..;is it les
00A6D0:  73 20 74 68 65 6E 20 27 30 27 0D 0A 09 72 63 09    s then '0'...rc.
00A6E0:  09 09 3B 79 65 73 20 65 72 72 6F 72 20 69 6E 76    ..;yes error inv
00A6F0:  61 69 6C 64 20 63 68 61 72 61 63 74 65 72 0D 0A    aild character..
00A700:  09 63 70 69 09 27 39 27 2B 31 09 09 3B 69 73 20    .cpi.'9'+1..;is 
00A710:  69 74 20 67 72 65 61 74 65 72 20 74 68 65 6E 20    it greater then 
00A720:  30 20 61 6E 64 20 6C 65 73 73 20 74 68 65 6E 20    0 and less then 
00A730:  65 71 20 39 0D 0A 09 6A 63 09 73 65 74 66 63 62    eq 9...jc.setfcb
00A740:  31 32 31 09 3B 79 65 73 20 76 61 69 6C 64 20 63    121.;yes vaild c
00A750:  68 61 72 61 63 74 65 72 0D 0A 09 63 70 69 09 27    haracter...cpi.'
00A760:  41 27 09 09 3B 69 73 20 69 74 20 6C 65 73 73 20    A'..;is it less 
00A770:  74 68 65 6E 20 27 41 27 0D 0A 09 72 63 09 09 09    then 'A'...rc...
00A780:  3B 79 65 73 20 65 72 72 6F 72 20 62 65 74 77 65    ;yes error betwe
00A790:  65 6E 20 27 39 27 20 61 6E 64 20 27 41 27 0D 0A    en '9' and 'A'..
00A7A0:  09 63 70 69 09 27 5A 27 2B 31 09 09 3B 69 73 20    .cpi.'Z'+1..;is 
00A7B0:  69 74 20 62 65 74 77 65 65 6E 20 27 41 27 20 61    it between 'A' a
00A7C0:  6E 64 20 27 5A 27 20 0D 0A 09 63 6D 63 09 09 09    nd 'Z' ...cmc...
00A7D0:  3B 66 6C 6F 70 20 63 61 72 72 79 20 62 69 74 0D    ;flop carry bit.
00A7E0:  0A 09 72 65 74 0D 0A 73 65 74 66 63 62 31 32 31    ..ret..setfcb121
00A7F0:  3A 0D 0A 09 73 74 63 09 09 09 3B 73 65 74 20 63    :...stc...;set c
00A800:  2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /***************
00A810:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00A820:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00A830:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F 2A 09 09    *********/../*..
00A840:  09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 63 6F 70 79    .....*/../*.copy
00A850:  72 69 67 68 74 28 63 29 20 31 39 38 31 20 42 79    right(c) 1981 By
00A860:  20 4D 69 6B 65 20 42 65 72 6E 73 6F 6E 09 09 2A     Mike Bernson..*
00A870:  2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F 0D 0A    /../*.......*/..
00A880:  2F 2A 09 73 75 62 6D 69 74 20 63 6F 6D 6D 61 6E    /*.submit comman
00A890:  64 20 66 6F 72 20 63 70 6D 20 32 2E 78 09 09 09    d for cpm 2.x...
00A8A0:  2A 2F 0D 0A 2F 2A 09 72 65 61 64 20 69 6E 70 75    */../*.read inpu
00A8B0:  74 20 66 69 6C 65 20 61 6E 64 20 63 6F 6E 76 65    t file and conve
00A8C0:  72 74 20 74 6F 20 24 24 24 2E 73 75 62 20 77 69    rt to $$$.sub wi
00A8D0:  74 68 09 2A 2F 0D 0A 2F 2A 09 24 31 2D 24 39 20    th.*/../*.$1-$9 
00A8E0:  74 6F 20 70 72 61 6D 20 66 72 6F 6D 20 63 6F 6D    to pram from com
00A8F0:  61 6E 64 20 6C 69 6E 65 20 61 6E 64 20 63 6F 6E    and line and con
00A900:  76 65 72 74 09 2A 2F 0D 0A 2F 2A 09 5E 61 20 74    vert.*/../*.^a t
00A910:  6F 20 63 6F 6E 74 72 6F 6C 20 63 68 61 72 61 63    o control charac
00A920:  74 65 72 09 09 09 09 2A 2F 0D 0A 2F 2A 09 09 09    ter....*/../*...
00A930:  09 09 09 09 2A 2F 0D 0A 2F 2A 2A 2A 2A 2A 2A 2A    ....*/../*******
00A940:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00A950:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00A960:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00A970:  2A 2F 0D 0A 0D 0A 23 64 65 66 69 6E 65 20 45 52    */....#define ER
00A980:  52 4F 52 09 2D 31 09 09 2F 2A 20 65 72 72 6F 72    ROR.-1../* error
00A990:  20 72 65 74 75 72 6E 20 76 61 6C 75 65 20 2A 2F     return value */
00A9A0:  0D 0A 23 64 65 66 69 6E 65 20 4C 46 09 30 78 30    ..#define LF.0x0
00A9B0:  61 09 09 2F 2A 20 76 61 6C 75 65 20 75 73 65 64    a../* value used
00A9C0:  20 66 6F 72 20 6C 69 6E 65 20 66 65 65 64 20 2A     for line feed *
00A9D0:  2F 0D 0A 23 64 65 66 69 6E 65 20 43 52 09 30 78    /..#define CR.0x
00A9E0:  30 64 09 09 2F 2A 20 76 61 6C 75 65 20 75 73 65    0d../* value use
00A9F0:  64 20 66 6F 72 20 72 65 74 75 72 6E 20 2A 2F 0D    d for return */.
00AA00:  61 72 72 79 20 66 6C 61 67 0D 0A 09 63 6D 63 09    arry flag...cmc.
00AA10:  09 09 3B 73 65 74 20 63 61 72 72 79 20 6F 66 66    ..;set carry off
00AA20:  0D 0A 09 72 65 74 0D 0A 3B 0D 0A 3B 09 72 73 76    ...ret..;..;.rsv
00AA30:  73 74 6B 0D 0A 3B 0D 0A 3B 09 66 75 6E 63 74 69    stk..;..;.functi
00AA40:  6F 6E 3A 20 74 6F 20 73 65 74 20 68 6F 77 20 63    on: to set how c
00AA50:  6C 6F 73 65 20 74 6F 20 67 6F 20 74 6F 20 6D 61    lose to go to ma
00AA60:  63 68 69 6E 65 20 73 74 61 63 6B 20 70 6F 69 6E    chine stack poin
00AA70:  74 65 72 0D 0A 3B 0D 0A 3B 09 63 61 6C 6C 69 6E    ter..;..;.callin
00AA80:  67 20 66 6F 72 6D 61 74 20 69 6E 20 22 43 22 0D    g format in "C".
00AA90:  0A 3B 09 72 73 76 73 74 6B 28 61 6D 6F 75 6E 74    .;.rsvstk(amount
00AAA0:  29 3B 0D 0A 3B 0D 0A 72 73 76 73 74 6B 3A 09 63    );..;..rsvstk:.c
00AAB0:  73 65 63 74 0D 0A 09 73 68 6C 64 09 40 61 6C 6F    sect...shld.@alo
00AAC0:  63 6D 78 09 09 3B 73 61 76 65 20 6E 75 6D 62 65    cmx..;save numbe
00AAD0:  72 20 6F 66 20 62 79 74 65 73 20 6E 6F 74 20 74    r of bytes not t
00AAE0:  6F 20 75 73 65 64 0D 0A 09 72 65 74 0D 0A 3B 0D    o used...ret..;.
00AAF0:  0A 3B 09 73 74 6F 72 69 6E 69 74 0D 0A 3B 0D 0A    .;.storinit..;..
00AB00:  3B 09 66 75 6E 63 74 69 6F 6E 3A 20 74 6F 20 69    ;.function: to i
00AB10:  6E 69 74 20 73 74 72 6F 61 67 65 20 61 6C 6C 6F    nit stroage allo
00AB20:  63 61 74 69 6F 6E 20 73 79 73 74 65 6D 0D 0A 3B    cation system..;
00AB30:  0D 0A 3B 09 63 61 6C 6C 69 6E 67 20 66 6F 72 6D    ..;.calling form
00AB40:  61 74 20 66 72 6F 6D 20 22 63 22 0D 0A 3B 09 73    at from "c"..;.s
00AB50:  74 6F 72 69 6E 69 74 28 29 3B 0D 0A 3B 0D 0A 73    torinit();..;..s
00AB60:  74 6F 72 69 6E 69 74 3A 63 73 65 63 74 0D 0A 09    torinit:csect...
00AB70:  6C 78 69 09 68 2C 40 62 61 73 65 5F 66 72 65 65    lxi.h,@base_free
00AB80:  09 3B 67 65 74 20 61 64 64 72 65 73 73 20 6F 66    .;get address of
00AB90:  20 73 74 61 72 74 20 6F 66 20 66 72 65 65 20 6C     start of free l
00ABA0:  69 73 74 0D 0A 09 73 68 6C 64 09 40 62 61 73 65    ist...shld.@base
00ABB0:  5F 66 72 65 65 09 3B 73 61 76 65 20 61 73 20 66    _free.;save as f
00ABC0:  69 72 73 74 20 65 6C 65 6D 65 6E 74 0D 0A 09 73    irst element...s
00ABD0:  68 6C 64 09 40 61 6C 6C 6F 63 70 09 09 3B 73 61    hld.@allocp..;sa
00ABE0:  76 65 20 61 73 20 70 6F 69 6E 74 65 72 20 74 6F    ve as pointer to
00ABF0:  20 6C 61 73 74 20 62 6C 6F 63 6B 0D 0A 09 6C 78     last block...lx
00AC00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
00AC10:  09 00 01 00 02 09 52 E5 09 00 C1 02 00 00 00 02    ......R.........
00AC20:  09 00 C6 02 00 00 00 02 09 00 C2 02 00 00 00 02    ................
00AC30:  09 00 C7 02 00 00 00 02 09 00 C3 02 00 00 00 02    ................
00AC40:  09 00 C8 02 00 00 00 02 09 00 C4 02 00 00 00 02    ................
00AC50:  09 00 C9 02 00 00 00 02 09 00 C5 02 00 00 00 02    ................
00AC60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00AC70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00AC80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00AC90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ACA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ACB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ACC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ACD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ACE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ACF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00AD00:  0A 23 64 65 66 69 6E 65 20 45 4E 44 46 49 4C 45    .#define ENDFILE
00AD10:  09 30 78 31 61 09 09 2F 2A 20 76 61 6C 75 65 20    .0x1a../* value 
00AD20:  75 73 65 64 20 66 6F 72 20 65 6E 64 20 6F 66 20    used for end of 
00AD30:  66 69 6C 65 20 2A 2F 0D 0A 0D 0A 63 68 61 72 20    file */....char 
00AD40:  69 6E 66 63 62 5B 33 36 5D 3B 09 09 09 2F 2A 20    infcb[36];.../* 
00AD50:  70 6F 69 6E 74 65 72 20 74 6F 20 69 6E 70 75 74    pointer to input
00AD60:  20 66 63 62 20 2A 2F 0D 0A 63 68 61 72 20 6F 75     fcb */..char ou
00AD70:  74 66 63 62 5B 33 36 5D 3B 09 09 2F 2A 20 6F 75    tfcb[36];../* ou
00AD80:  74 70 75 74 20 66 63 62 20 2A 2F 0D 0A 0D 0A 63    tput fcb */....c
00AD90:  68 61 72 20 2A 70 72 74 3B 09 09 09 2F 2A 20 6A    har *prt;.../* j
00ADA0:  75 73 74 20 61 20 73 70 61 72 65 20 70 6F 69 6E    ust a spare poin
00ADB0:  74 65 72 20 2A 2F 0D 0A 69 6E 74 20 20 69 6E 70    ter */..int  inp
00ADC0:  6F 66 66 3B 09 09 09 2F 2A 20 69 6E 70 75 74 20    off;.../* input 
00ADD0:  62 75 66 66 65 72 20 6F 66 66 73 65 74 20 2A 2F    buffer offset */
00ADE0:  0D 0A 69 6E 74 20 20 6F 75 74 6F 66 66 3B 09 09    ..int  outoff;..
00ADF0:  09 2F 2A 20 6F 75 74 70 75 74 20 62 75 66 66 65    ./* output buffe
00AE00:  72 20 6F 66 66 73 65 74 20 2A 2F 0D 0A 0D 0A 69    r offset */....i
00AE10:  6E 74 20 20 6C 69 6E 65 3B 09 09 09 2F 2A 20 63    nt  line;.../* c
00AE20:  75 72 72 65 6E 74 20 6C 69 6E 65 20 6E 75 6D 62    urrent line numb
00AE30:  65 72 20 2A 2F 0D 0A 0D 0A 63 68 61 72 20 69 6E    er */....char in
00AE40:  62 75 66 66 5B 31 32 38 5D 3B 09 09 2F 2A 20 69    buff[128];../* i
00AE50:  6E 70 75 74 20 62 75 66 66 65 72 20 2A 2F 0D 0A    nput buffer */..
00AE60:  63 68 61 72 20 6F 75 74 62 75 66 66 5B 31 37 30    char outbuff[170
00AE70:  30 30 5D 3B 09 09 2F 2A 20 6F 75 74 70 75 74 20    00];../* output 
00AE80:  62 75 66 66 65 72 20 2A 2F 0D 0A 0D 0A 2F 2A 2A    buffer */..../**
00AE90:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00AEA0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00AEB0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00AEC0:  2A 2A 2A 2A 2A 2A 2F 0D 0A 2F 2A 09 09 09 09 09    ******/../*.....
00AED0:  09 09 2A 2F 0D 0A 2F 2A 09 6D 61 69 6E 09 09 09    ..*/../*.main...
00AEE0:  09 09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09    ...*/../*.......
00AEF0:  2A 2F 0D 0A 2F 2A 09 66 75 6E 63 74 69 6F 6E 3A    */../*.function:
00AF00:  0A 09 09 09 72 65 74 75 72 6E 3B 0D 0A 09 0D 0A    ....return;.....
00AF10:  09 09 2F 2A 20 6C 69 6E 65 09 66 65 65 64 20 69    ../* line.feed i
00AF20:  6E 67 6F 72 65 20 2A 2F 0D 0A 09 09 63 61 73 65    ngore */....case
00AF30:  20 4C 46 20 3A 0D 0A 09 09 09 62 72 65 61 6B 3B     LF :.....break;
00AF40:  0D 0A 09 09 0D 0A 09 09 2F 2A 20 6D 75 73 74 20    ......../* must 
00AF50:  62 65 20 61 20 76 69 61 6C 64 20 63 6A 61 72 61    be a viald cjara
00AF60:  63 74 65 72 20 70 75 74 20 69 6E 20 6F 75 74 70    cter put in outp
00AF70:  75 74 20 62 75 66 66 65 72 20 2A 2F 0D 0A 09 09    ut buffer */....
00AF80:  64 65 66 61 75 6C 74 3A 0D 0A 09 09 09 70 75 74    default:.....put
00AF90:  62 75 66 66 28 63 75 72 72 65 6E 74 29 3B 0D 0A    buff(current);..
00AFA0:  09 09 7D 7D 0D 0A 09 7D 0D 0A 0D 0A 2F 2A 2A 2A    ..}}...}..../***
00AFB0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00AFC0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00AFD0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00AFE0:  2A 2A 2A 2A 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09    *****/../*......
00AFF0:  09 2A 2F 0D 0A 2F 2A 09 64 6F 6F 75 74 70 75 74    .*/../*.dooutput
00B000:  09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09    .....*/../*.....
00B010:  09 09 2A 2F 0D 0A 2F 2A 09 66 75 6E 63 74 69 6F    ..*/../*.functio
00B020:  6E 3A 09 74 6F 20 77 72 69 74 65 20 6F 75 74 70    n:.to write outp
00B030:  75 74 20 72 65 63 6F 72 64 20 74 6F 20 64 69 73    ut record to dis
00B040:  6B 09 2A 2F 0D 0A 2F 2A 09 09 09 70 75 74 20 63    k.*/../*...put c
00B050:  68 61 72 61 63 74 65 72 20 63 6F 75 6E 74 20 61    haracter count a
00B060:  74 20 6F 66 66 73 65 74 20 30 20 2A 2F 0D 0A 2F    t offset 0 */../
00B070:  2A 09 09 09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 64    *.......*/../*.d
00B080:  61 74 65 20 77 72 69 74 74 65 6E 3A 09 64 65 63    ate written:.dec
00B090:  20 31 36 2C 20 31 39 38 30 20 42 79 20 4D 69 6B     16, 1980 By Mik
00B0A0:  65 20 42 65 72 6E 73 6F 6E 09 2A 2F 0D 0A 2F 2A    e Bernson.*/../*
00B0B0:  09 09 09 09 09 09 09 2A 2F 0D 0A 2F 2A 2A 2A 2A    .......*/../****
00B0C0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B0D0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B0E0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B0F0:  2A 2A 2A 2A 2F 0D 0A 64 6F 6F 75 74 70 75 74 28    ****/..dooutput(
00B100:  09 6F 70 65 6E 20 69 6E 70 75 74 20 61 6E 64 20    .open input and 
00B110:  6F 75 74 70 75 74 20 64 61 74 61 20 66 69 6C 65    output data file
00B120:  20 2A 2F 0D 0A 2F 2A 09 09 09 61 6C 73 6F 20 70     */../*...also p
00B130:  72 6F 63 65 73 73 20 64 61 74 61 20 61 6E 64 20    rocess data and 
00B140:  6F 75 74 70 75 74 09 2A 2F 0D 0A 2F 2A 09 09 09    output.*/../*...
00B150:  64 61 74 61 20 74 6F 20 24 24 24 2E 73 75 62 20    data to $$$.sub 
00B160:  61 6E 64 20 73 65 74 20 6C 6F 63 20 38 20 66 66    and set loc 8 ff
00B170:  2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F 0D    */../*.......*/.
00B180:  0A 2F 2A 09 44 61 74 65 20 77 72 69 74 74 65 6E    ./*.Date written
00B190:  3A 09 4A 61 6E 20 32 38 2C 20 31 39 38 31 20 62    :.Jan 28, 1981 b
00B1A0:  79 20 4D 69 6B 65 20 42 65 72 6E 73 6F 6E 09 2A    y Mike Bernson.*
00B1B0:  2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F 0D 0A    /../*.......*/..
00B1C0:  2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /***************
00B1D0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B1E0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B1F0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 6D 61 69 6E    *********/..main
00B200:  28 61 72 67 63 2C 61 72 67 76 29 0D 0A 69 6E 74    (argc,argv)..int
00B210:  20 61 72 67 63 3B 09 09 2F 2A 20 6E 75 6D 62 65     argc;../* numbe
00B220:  72 20 6F 66 20 61 72 67 20 6F 6E 20 63 6F 6D 6D    r of arg on comm
00B230:  61 6E 64 20 6C 69 6E 65 20 2B 31 20 2A 2F 0D 0A    and line +1 */..
00B240:  69 6E 74 20 61 72 67 76 5B 5D 3B 09 09 2F 2A 20    int argv[];../* 
00B250:  70 6F 69 6E 74 65 72 20 74 6F 20 65 61 63 68 20    pointer to each 
00B260:  61 72 67 20 6F 6E 20 63 6F 6D 6D 61 6E 64 20 6C    arg on command l
00B270:  69 6E 65 20 2A 2F 0D 0A 7B 0D 0A 09 63 68 61 72    ine */..{...char
00B280:  20 66 69 6C 65 6E 61 6D 65 5B 31 33 32 5D 3B 09     filename[132];.
00B290:  2F 2A 20 68 6F 6C 64 20 69 6E 70 75 74 20 66 69    /* hold input fi
00B2A0:  6C 65 20 6E 61 6D 65 20 2A 2F 0D 0A 09 0D 0A 09    le name */......
00B2B0:  73 74 72 63 70 79 28 66 69 6C 65 6E 61 6D 65 2C    strcpy(filename,
00B2C0:  61 72 67 76 5B 31 5D 29 3B 0D 0A 09 73 74 72 63    argv[1]);...strc
00B2D0:  61 74 28 66 69 6C 65 6E 61 6D 65 2C 22 2E 73 75    at(filename,".su
00B2E0:  62 22 29 3B 0D 0A 0D 0A 09 69 66 20 28 6F 70 65    b");.....if (ope
00B2F0:  6E 28 69 6E 66 63 62 2C 66 69 6C 65 6E 61 6D 65    n(infcb,filename
00B300:  29 0D 0A 7B 0D 0A 09 6F 75 74 62 75 66 66 5B 28    )..{...outbuff[(
00B310:  6C 69 6E 65 2D 31 29 2A 31 32 38 5D 3D 6F 75 74    line-1)*128]=out
00B320:  6F 66 66 2D 31 3B 20 2F 2A 20 63 68 61 72 61 63    off-1; /* charac
00B330:  74 65 72 20 63 6F 75 6E 74 20 2A 2F 0D 0A 0D 0A    ter count */....
00B340:  09 2F 2A 20 7A 65 72 6F 20 62 75 66 66 65 72 20    ./* zero buffer 
00B350:  74 69 6C 6C 20 65 6E 64 20 2A 2F 0D 0A 09 77 68    till end */...wh
00B360:  69 6C 65 28 6F 75 74 6F 66 66 3C 31 32 38 29 20    ile(outoff<128) 
00B370:  70 75 74 62 75 66 66 28 30 29 3B 0D 0A 09 69 66    putbuff(0);...if
00B380:  20 28 2B 2B 6C 69 6E 65 3E 31 34 38 29 09 65 72     (++line>148).er
00B390:  72 6F 72 28 22 54 6F 6F 20 6D 61 6E 79 09 6C 69    ror("Too many.li
00B3A0:  6E 65 73 22 29 3B 0D 0A 09 7D 0D 0A 0D 0A 2F 2A    nes");...}..../*
00B3B0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B3C0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B3D0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B3E0:  2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F 2A 09 09 09 09    *******/../*....
00B3F0:  09 09 09 2A 2F 0D 0A 2F 2A 09 64 6F 6E 65 09 09    ...*/../*.done..
00B400:  09 09 09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09    ....*/../*......
00B410:  09 2A 2F 0D 0A 2F 2A 09 66 75 6E 63 74 69 6F 6E    .*/../*.function
00B420:  3A 09 74 6F 20 77 72 69 74 65 20 6F 75 74 70 75    :.to write outpu
00B430:  74 20 62 75 66 66 65 72 20 6F 75 74 09 2A 2F 0D    t buffer out.*/.
00B440:  0A 2F 2A 09 09 09 69 6E 20 62 61 63 6B 77 61 72    ./*...in backwar
00B450:  64 20 72 65 63 6F 72 64 20 66 6F 72 6D 61 74 09    d record format.
00B460:  2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F 0D    */../*.......*/.
00B470:  0A 2F 2A 09 44 61 74 65 20 77 72 69 74 74 65 6E    ./*.Date written
00B480:  3A 09 44 65 63 20 31 36 2C 20 31 39 38 30 20 42    :.Dec 16, 1980 B
00B490:  79 20 4D 69 6B 65 20 42 65 72 6E 73 6F 6E 09 2A    y Mike Bernson.*
00B4A0:  2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F 0D 0A    /../*.......*/..
00B4B0:  2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /***************
00B4C0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B4D0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B4E0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 64 6F 6E 65    *********/..done
00B4F0:  28 29 0D 0A 7B 0D 0A 09 63 68 61 72 20 74 65 6D    ()..{...char tem
00B500:  29 20 3D 3D 20 45 52 52 4F 52 29 20 7B 0D 0A 09    ) == ERROR) {...
00B510:  09 69 6E 66 63 62 5B 30 5D 3D 31 3B 09 09 2F 2A    .infcb[0]=1;../*
00B520:  20 74 72 79 20 64 72 69 76 65 20 61 20 2A 2F 0D     try drive a */.
00B530:  0A 09 09 69 66 20 28 62 64 6F 73 28 31 35 2C 69    ...if (bdos(15,i
00B540:  6E 66 63 62 29 20 3D 3D 20 30 78 66 66 29 20 7B    nfcb) == 0xff) {
00B550:  0D 0A 09 09 09 70 75 74 73 28 22 49 6E 70 75 74    .....puts("Input
00B560:  20 66 69 6C 65 20 6E 6F 74 20 66 6F 75 6E 64 22     file not found"
00B570:  29 3B 0D 0A 09 09 09 65 78 69 74 28 29 3B 0D 0A    );.....exit();..
00B580:  09 09 09 7D 0D 0A 09 09 7D 0D 0A 09 66 6F 72 28    ...}....}...for(
00B590:  6C 69 6E 65 3D 61 72 67 63 3B 20 6C 69 6E 65 3C    line=argc; line<
00B5A0:  31 32 3B 20 61 72 67 76 5B 6C 69 6E 65 2B 2B 5D    12; argv[line++]
00B5B0:  3D 22 22 29 3B 0D 0A 09 69 6E 70 6F 66 66 3D 31    ="");...inpoff=1
00B5C0:  32 38 3B 0D 0A 09 6C 69 6E 65 3D 31 3B 0D 0A 0D    28;...line=1;...
00B5D0:  0A 09 2F 2A 20 70 72 6F 63 65 73 73 20 69 6E 70    ../* process inp
00B5E0:  75 74 20 66 69 6C 65 20 61 6E 64 20 77 72 69 74    ut file and writ
00B5F0:  65 20 6F 75 74 70 75 74 20 2A 2F 0D 0A 09 77 68    e output */...wh
00B600:  69 6C 65 28 31 29 20 7B 0D 0A 09 09 64 6F 69 6E    ile(1) {....doin
00B610:  70 75 74 28 61 72 67 76 2B 31 29 3B 0D 0A 09 09    put(argv+1);....
00B620:  64 6F 6F 75 74 70 75 74 28 29 3B 0D 0A 09 09 7D    dooutput();....}
00B630:  0D 0A 09 7D 0D 0A 0D 0A 0D 0A 2F 2A 2A 2A 2A 2A    ...}....../*****
00B640:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B650:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B660:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B670:  2A 2A 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A    ***/../*.......*
00B680:  2F 0D 0A 2F 2A 09 64 6F 69 6E 70 75 74 09 09 09    /../*.doinput...
00B690:  09 09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09    ...*/../*.......
00B6A0:  2A 2F 0D 0A 2F 2A 09 66 75 6E 63 74 69 6F 6E 3A    */../*.function:
00B6B0:  09 74 6F 20 70 72 6F 63 63 65 73 73 20 69 6E 70    .to proccess inp
00B6C0:  75 74 20 62 75 66 66 65 72 20 61 6E 64 09 2A 2F    ut buffer and.*/
00B6D0:  0D 0A 2F 2A 09 09 09 63 68 61 6E 67 65 20 24 31    ../*...change $1
00B6E0:  2D 24 39 20 74 6F 20 74 65 78 74 20 6E 65 65 64    -$9 to text need
00B6F0:  65 64 20 61 6E 64 09 2A 2F 0D 0A 2F 2A 09 09 09    ed and.*/../*...
00B700:  70 3B 0D 0A 0D 0A 09 2F 2A 20 63 72 65 61 74 65    p;...../* create
00B710:  20 6F 75 74 70 75 74 20 66 69 6C 65 20 6F 6E 20     output file on 
00B720:  64 69 73 6B 20 61 09 2A 2F 0D 0A 09 69 66 20 28    disk a.*/...if (
00B730:  6F 70 65 6E 28 6F 75 74 66 63 62 2C 22 41 3A 24    open(outfcb,"A:$
00B740:  24 24 2E 53 55 42 22 29 20 21 3D 20 45 52 52 4F    $$.SUB") != ERRO
00B750:  52 29 20 0D 0A 09 09 6F 75 74 66 63 62 5B 33 32    R) ....outfcb[32
00B760:  5D 3D 6F 75 74 66 63 62 5B 31 35 5D 3B 0D 0A 09    ]=outfcb[15];...
00B770:  65 6C 73 65 20 69 66 20 28 63 72 65 61 74 65 28    else if (create(
00B780:  6F 75 74 66 63 62 2C 22 41 3A 24 24 24 2E 53 55    outfcb,"A:$$$.SU
00B790:  42 22 29 20 3D 3D 20 45 52 52 4F 52 29 20 7B 0D    B") == ERROR) {.
00B7A0:  0A 09 09 70 75 74 73 28 22 4F 75 74 70 75 74 20    ...puts("Output 
00B7B0:  46 69 6C 65 20 6E 6F 74 20 63 72 65 61 74 65 64    File not created
00B7C0:  22 29 3B 0D 0A 09 09 65 78 69 74 28 29 3B 0D 0A    ");....exit();..
00B7D0:  09 09 7D 0D 0A 09 77 68 69 6C 65 28 2D 2D 6C 69    ..}...while(--li
00B7E0:  6E 65 29 20 7B 0D 0A 09 09 69 66 20 28 77 72 69    ne) {....if (wri
00B7F0:  74 65 28 6F 75 74 66 63 62 2C 6F 75 74 62 75 66    te(outfcb,outbuf
00B800:  66 2B 31 32 38 2A 28 6C 69 6E 65 2D 31 29 2C 31    f+128*(line-1),1
00B810:  29 20 3D 3D 20 45 52 52 4F 52 29 20 7B 0D 0A 09    ) == ERROR) {...
00B820:  09 09 65 72 72 6F 72 28 22 44 69 73 6B 20 69 73    ..error("Disk is
00B830:  20 46 75 6C 6C 22 29 3B 0D 0A 09 09 09 65 78 69     Full");.....exi
00B840:  74 28 29 3B 0D 0A 09 09 09 7D 0D 0A 09 09 7D 0D    t();.....}....}.
00B850:  0A 09 63 6C 6F 73 65 28 6F 75 74 66 63 62 29 3B    ..close(outfcb);
00B860:  0D 0A 09 70 72 74 3D 38 3B 0D 0A 09 2A 70 72 74    ...prt=8;...*prt
00B870:  3D 32 35 35 3B 0D 0A 09 65 78 69 74 28 29 3B 0D    =255;...exit();.
00B880:  0A 09 7D 0D 0A 0D 0A 0D 0A 2F 2A 2A 2A 2A 2A 2A    ..}....../******
00B890:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B8A0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B8B0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B8C0:  2A 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F    **/../*.......*/
00B8D0:  0D 0A 2F 2A 09 67 65 74 62 75 66 66 09 09 09 09    ../*.getbuff....
00B8E0:  09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A    ..*/../*.......*
00B8F0:  2F 0D 0A 2F 2A 09 66 75 6E 63 74 69 6F 6E 3A 09    /../*.function:.
00B900:  63 6F 6E 76 65 72 74 20 27 5E 27 61 20 74 6F 20    convert '^'a to 
00B910:  63 6F 6E 74 72 6F 6C 20 63 68 61 72 09 2A 2F 0D    control char.*/.
00B920:  0A 2F 2A 09 09 09 09 09 09 09 2A 2F 0D 0A 2F 2A    ./*.......*/../*
00B930:  09 64 61 74 65 20 77 72 69 74 74 65 6E 09 4A 61    .date written.Ja
00B940:  6E 20 32 38 2C 20 31 39 38 31 20 42 79 20 4D 69    n 28, 1981 By Mi
00B950:  6B 65 20 42 65 72 6E 73 6F 6E 09 2A 2F 0D 0A 2F    ke Bernson.*/../
00B960:  2A 09 09 09 09 09 09 09 2A 2F 0D 0A 2F 2A 2A 2A    *.......*/../***
00B970:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B980:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B990:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00B9A0:  2A 2A 2A 2A 2A 2F 0D 0A 64 6F 69 6E 70 75 74 28    *****/..doinput(
00B9B0:  70 61 72 6D 29 0D 0A 69 6E 74 20 70 61 72 6D 5B    parm)..int parm[
00B9C0:  5D 3B 0D 0A 7B 0D 0A 09 69 6E 74 20 63 75 72 72    ];..{...int curr
00B9D0:  65 6E 74 3B 20 20 20 2F 2A 20 63 75 72 72 65 6E    ent;   /* curren
00B9E0:  74 20 63 68 61 72 61 63 74 65 72 20 77 6F 72 6B    t character work
00B9F0:  69 6E 67 20 6F 6E 20 2A 2F 0D 0A 0D 0A 09 6F 75    ing on */.....ou
00BA00:  74 6F 66 66 3D 31 3B 09 2F 2A 20 73 65 74 20 6F    toff=1;./* set o
00BA10:  75 74 70 75 74 20 6F 66 66 73 65 74 20 74 6F 20    utput offset to 
00BA20:  7A 65 72 6F 20 2A 2F 0D 0A 0D 0A 09 2F 2A 20 70    zero */...../* p
00BA30:  69 63 6B 20 75 70 20 31 20 6C 69 6E 65 20 6F 66    ick up 1 line of
00BA40:  20 69 6E 70 75 74 20 2A 2F 0D 0A 09 77 68 69 6C     input */...whil
00BA50:  65 28 6F 75 74 6F 66 66 3C 31 32 30 29 20 7B 0D    e(outoff<120) {.
00BA60:  0A 0D 0A 09 09 2F 2A 20 67 65 74 20 63 68 61 72    ...../* get char
00BA70:  63 74 65 72 20 61 6E 64 20 73 65 65 20 77 68 61    cter and see wha
00BA80:  74 20 6E 65 65 64 20 74 6F 20 62 65 20 64 6F 6E    t need to be don
00BA90:  65 20 2A 2F 0D 0A 09 09 73 77 69 74 63 68 28 63    e */....switch(c
00BAA0:  75 72 72 65 6E 74 3D 67 65 74 62 75 66 66 28 29    urrent=getbuff()
00BAB0:  29 20 7B 0D 0A 0D 0A 09 09 2F 2A 20 65 6E 64 20    ) {....../* end 
00BAC0:  6F 66 20 66 69 6C 65 20 20 2A 2F 0D 0A 09 09 63    of file  */....c
00BAD0:  61 73 65 20 45 4E 44 46 49 4C 45 20 3A 0D 0A 09    ase ENDFILE :...
00BAE0:  09 09 64 6F 6E 65 28 29 3B 0D 0A 09 0D 0A 09 09    ..done();.......
00BAF0:  2F 2A 20 27 24 27 20 63 61 6E 20 62 65 20 24 31    /* '$' can be $1
00BB00:  74 6F 20 67 65 74 6E 20 6E 65 78 74 20 63 68 61    to getn next cha
00BB10:  72 61 63 74 65 72 20 66 72 6F 6D 20 09 2A 2F 0D    racter from .*/.
00BB20:  0A 2F 2A 09 09 09 66 72 6F 6D 20 69 6E 70 75 74    ./*...from input
00BB30:  20 62 75 66 66 65 72 20 61 6E 64 20 63 6F 6E 76     buffer and conv
00BB40:  65 72 74 09 2A 2F 0D 0A 2F 2A 09 09 09 74 6F 20    ert.*/../*...to 
00BB50:  75 70 70 65 72 20 63 61 73 65 09 09 09 2A 2F 0D    upper case...*/.
00BB60:  0A 2F 2A 09 09 09 09 09 09 09 2A 2F 0D 0A 2F 2A    ./*.......*/../*
00BB70:  09 64 61 74 65 20 77 72 69 74 74 65 6E 3A 09 44    .date written:.D
00BB80:  65 63 20 31 36 2C 20 31 39 38 30 20 62 79 20 4D    ec 16, 1980 by M
00BB90:  69 6B 65 20 42 65 72 6E 73 6F 6E 09 2A 2F 0D 0A    ike Bernson.*/..
00BBA0:  2F 2A 09 09 09 09 09 09 09 2A 2F 0D 0A 2F 2A 2A    /*.......*/../**
00BBB0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00BBC0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00BBD0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00BBE0:  2A 2A 2A 2A 2A 2A 2F 0D 0A 67 65 74 62 75 66 66    ******/..getbuff
00BBF0:  28 29 0D 0A 7B 0D 0A 09 69 66 20 28 69 6E 70 6F    ()..{...if (inpo
00BC00:  66 66 20 3D 3D 20 31 32 38 29 20 7B 0D 0A 09 09    ff == 128) {....
00BC10:  69 66 20 28 72 65 61 64 28 69 6E 66 63 62 2C 69    if (read(infcb,i
00BC20:  6E 62 75 66 66 2C 31 29 20 3D 3D 20 45 52 52 4F    nbuff,1) == ERRO
00BC30:  52 29 20 72 65 74 75 72 6E 20 45 4E 44 46 49 4C    R) return ENDFIL
00BC40:  45 3B 0D 0A 09 09 69 6E 70 6F 66 66 3D 30 3B 0D    E;....inpoff=0;.
00BC50:  0A 09 09 7D 0D 0A 09 72 65 74 75 72 6E 20 74 6F    ...}...return to
00BC60:  75 70 70 65 72 28 69 6E 62 75 66 66 5B 69 6E 70    upper(inbuff[inp
00BC70:  6F 66 66 2B 2B 5D 29 3B 0D 0A 09 7D 0D 0A 0D 0A    off++]);...}....
00BC80:  2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /***************
00BC90:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00BCA0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00BCB0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F 2A 09 09    *********/../*..
00BCC0:  09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 70 75 74 62    .....*/../*.putb
00BCD0:  75 66 66 09 09 09 09 09 09 2A 2F 0D 0A 2F 2A 09    uff......*/../*.
00BCE0:  09 09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 66 75 6E    ......*/../*.fun
00BCF0:  63 74 69 6F 6E 3A 09 74 6F 20 77 72 69 74 65 20    ction:.to write 
00BD00:  2D 24 39 20 6F 72 20 24 24 20 2A 2F 0D 0A 09 09    -$9 or $$ */....
00BD10:  63 61 73 65 20 27 24 27 20 3A 0D 0A 09 09 09 69    case '$' :.....i
00BD20:  66 20 28 28 63 75 72 72 65 6E 74 3D 67 65 74 62    f ((current=getb
00BD30:  75 66 66 28 29 29 3D 3D 27 24 27 29 20 7B 0D 0A    uff())=='$') {..
00BD40:  09 09 09 09 70 75 74 62 75 66 66 28 27 24 27 29    ....putbuff('$')
00BD50:  3B 0D 0A 09 09 09 09 62 72 65 61 6B 3B 0D 0A 09    ;......break;...
00BD60:  09 09 09 7D 0D 0A 09 09 09 69 66 20 28 63 75 72    ...}.....if (cur
00BD70:  72 65 6E 74 3E 3D 27 30 27 20 26 26 20 63 75 72    rent>='0' && cur
00BD80:  72 65 6E 74 3C 3D 27 39 27 29 20 7B 0D 0A 09 09    rent<='9') {....
00BD90:  09 09 70 72 74 3D 70 61 72 6D 5B 63 75 72 72 65    ..prt=parm[curre
00BDA0:  6E 74 2D 27 30 27 5D 3B 0D 0A 09 09 09 09 77 68    nt-'0'];......wh
00BDB0:  69 6C 65 28 2A 70 72 74 29 20 70 75 74 62 75 66    ile(*prt) putbuf
00BDC0:  66 28 2A 70 72 74 2B 2B 29 3B 0D 0A 09 09 09 09    f(*prt++);......
00BDD0:  62 72 65 61 6B 3B 0D 0A 09 09 09 09 7D 0D 0A 09    break;......}...
00BDE0:  09 09 65 72 72 6F 72 28 22 49 6E 76 61 6C 69 64    ..error("Invalid
00BDF0:  20 70 61 72 6D 65 74 65 72 22 29 3B 0D 0A 09 09     parmeter");....
00BE00:  09 62 72 65 61 6B 3B 0D 0A 0D 0A 09 09 2F 2A 20    .break;....../* 
00BE10:  63 68 65 63 6B 20 66 6F 72 20 63 6F 6E 74 72 6F    check for contro
00BE20:  6C 20 63 68 72 61 72 61 63 74 65 72 20 2A 2F 0D    l chraracter */.
00BE30:  0A 09 09 63 61 73 65 20 27 5E 27 20 3A 0D 0A 09    ...case '^' :...
00BE40:  09 09 63 75 72 72 65 6E 74 3D 67 65 74 62 75 66    ..current=getbuf
00BE50:  66 28 29 3B 0D 0A 09 09 09 69 66 20 28 63 75 72    f();.....if (cur
00BE60:  72 65 6E 74 3E 3D 27 41 27 20 26 26 20 63 75 72    rent>='A' && cur
00BE70:  72 65 6E 74 3C 3D 27 5A 27 29 0D 0A 09 09 09 09    rent<='Z')......
00BE80:  70 75 74 62 75 66 66 28 63 75 72 72 65 6E 74 2D    putbuff(current-
00BE90:  27 40 27 29 3B 0D 0A 09 09 09 09 65 6C 73 65 20    '@');......else 
00BEA0:  65 72 72 6F 72 28 22 49 6E 76 61 6C 69 64 20 63    error("Invalid c
00BEB0:  6F 6E 74 72 6F 6C 20 63 68 61 72 61 63 74 65 72    ontrol character
00BEC0:  20 22 29 3B 0D 0A 09 09 09 62 72 65 61 6B 3B 0D     ");.....break;.
00BED0:  0A 09 09 0D 0A 09 09 2F 2A 20 63 68 65 63 6B 20    ......./* check 
00BEE0:  66 6F 72 20 65 6E 64 20 6F 66 20 6C 69 6E 65 20    for end of line 
00BEF0:  2A 2F 0D 0A 09 09 63 61 73 65 20 43 52 20 3A 0D    */....case CR :.
00BF00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
00BF10:  0A 00 01 00 02 09 52 E5 0A 00 C1 02 00 00 00 02    ......R.........
00BF20:  0A 00 C6 02 00 00 00 02 0A 00 C2 02 00 00 00 02    ................
00BF30:  0A 00 C7 02 00 00 00 02 0A 00 C3 02 00 00 00 02    ................
00BF40:  0A 00 C8 02 00 00 00 02 0A 00 C4 02 00 00 00 02    ................
00BF50:  0A 00 C9 02 00 00 00 02 0A 00 C5 02 00 00 00 02    ................
00BF60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00BF70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00BF80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00BF90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00BFA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00BFB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00BFC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00BFD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00BFE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00BFF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00C000:  63 68 72 61 63 74 65 72 20 74 6F 20 6F 75 74 70    chracter to outp
00C010:  75 74 20 09 2A 2F 0D 0A 2F 2A 09 09 09 62 75 66    ut .*/../*...buf
00C020:  66 20 61 6E 64 20 69 6E 63 20 6F 66 66 73 65 74    f and inc offset
00C030:  09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A    ..*/../*.......*
00C040:  2F 0D 0A 2F 2A 09 69 6E 70 75 74 3A 09 09 63 68    /../*.input:..ch
00C050:  61 72 61 63 74 65 72 20 74 6F 20 77 72 69 74 65    aracter to write
00C060:  09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A    ..*/../*.......*
00C070:  2F 0D 0A 2F 2A 09 64 61 74 65 20 77 72 69 74 74    /../*.date writt
00C080:  65 6E 3A 09 44 65 63 20 31 36 2C 20 31 39 38 30    en:.Dec 16, 1980
00C090:  20 42 79 20 4D 69 6B 65 20 42 65 72 6E 73 6F 6E     By Mike Bernson
00C0A0:  09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F    .*/../*.......*/
00C0B0:  0D 0A 2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ../*************
00C0C0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00C0D0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00C0E0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 70 75    ***********/..pu
00C0F0:  74 62 75 66 66 28 64 61 74 61 29 0D 0A 63 68 61    tbuff(data)..cha
00C100:  72 20 64 61 74 61 3B 0D 0A 7B 0D 0A 09 6F 75 74    r data;..{...out
00C110:  62 75 66 66 5B 28 6C 69 6E 65 2D 31 29 2A 31 32    buff[(line-1)*12
00C120:  38 2B 6F 75 74 6F 66 66 2B 2B 5D 3D 64 61 74 61    8+outoff++]=data
00C130:  3B 0D 0A 09 7D 0D 0A 0D 0A 0D 0A 2F 2A 2A 2A 2A    ;...}....../****
00C140:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00C150:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00C160:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00C170:  2A 2A 2A 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09    ****/../*.......
00C180:  2A 2F 0D 0A 2F 2A 09 65 72 72 6F 72 09 09 09 09    */../*.error....
00C190:  09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A    ..*/../*.......*
00C1A0:  2F 0D 0A 2F 2A 09 66 75 6E 63 74 69 6F 6E 3A 09    /../*.function:.
00C1B0:  74 6F 20 70 72 69 6E 74 20 65 72 72 6F 72 20 6D    to print error m
00C1C0:  65 73 73 61 67 65 20 66 6F 6C 6C 6F 77 09 2A 2F    essage follow.*/
00C1D0:  0D 0A 2F 2A 09 09 09 62 79 20 61 74 20 6C 69 6E    ../*...by at lin
00C1E0:  65 20 28 6C 69 6E 65 20 6E 75 6D 62 65 72 29 09    e (line number).
00C1F0:  2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F 0D    */../*.......*/.
00C200:  09 68 09 09 3B 61 64 64 20 31 20 74 6F 20 73 74    .h..;add 1 to st
00C210:  72 69 6E 67 20 6C 65 6E 67 68 74 0D 0A 09 69 6E    ring lenght...in
00C220:  78 09 64 09 09 3B 61 64 64 20 31 20 74 6F 20 70    x.d..;add 1 to p
00C230:  6F 69 6E 74 65 72 20 74 6F 20 73 74 72 69 6E 67    ointer to string
00C240:  0D 0A 09 72 65 6C 6F 63 09 6A 6D 70 2C 73 74 72    ...reloc.jmp,str
00C250:  6C 65 6E 31 09 3B 63 68 65 63 6B 20 6E 65 78 74    len1.;check next
00C260:  20 63 68 61 72 61 63 74 65 72 0D 0A 3B 0D 0A 09     character..;...
00C270:  70 6F 73 74 6C 75 64 65 20 73 74 72 6C 65 6E 0D    postlude strlen.
00C280:  0A 3B 0D 0A 3B 0D 0A 3B 0D 0A 09 70 72 65 6C 75    .;..;..;...prelu
00C290:  64 65 09 73 74 72 63 70 79 0D 0A 3B 0D 0A 73 74    de.strcpy..;..st
00C2A0:  72 63 70 79 3A 0D 0A 09 63 61 6C 6C 09 61 72 67    rcpy:...call.arg
00C2B0:  68 61 6B 09 09 3B 67 65 74 20 61 72 67 20 6C 69    hak..;get arg li
00C2C0:  73 74 0D 0A 09 6C 68 6C 64 09 61 72 67 31 09 09    st...lhld.arg1..
00C2D0:  3B 67 65 74 20 61 64 64 72 65 73 73 20 6F 66 20    ;get address of 
00C2E0:  77 68 65 72 65 20 74 6F 20 73 61 76 65 20 73 74    where to save st
00C2F0:  72 69 6E 67 0D 0A 09 78 63 68 67 09 09 09 3B 70    ring...xchg...;p
00C300:  75 74 20 61 64 64 72 65 73 73 20 69 6E 20 64 65    ut address in de
00C310:  0D 0A 09 6C 68 6C 64 09 61 72 67 32 09 09 3B 67    ...lhld.arg2..;g
00C320:  65 74 20 61 64 64 72 65 73 73 20 6F 66 20 73 74    et address of st
00C330:  72 69 6E 67 20 74 6F 20 63 6F 70 79 0D 0A 73 74    ring to copy..st
00C340:  72 63 70 79 31 3A 0D 0A 09 6D 6F 76 09 61 2C 6D    rcpy1:...mov.a,m
00C350:  09 09 3B 67 65 74 20 76 61 6C 75 65 20 66 72 6F    ..;get value fro
00C360:  6D 20 73 6F 75 72 63 65 20 73 74 72 69 6E 67 0D    m source string.
00C370:  0A 09 73 74 61 78 09 64 09 09 3B 73 61 76 65 20    ..stax.d..;save 
00C380:  63 68 61 72 61 63 74 65 72 20 61 20 6F 62 6A 65    character a obje
00C390:  63 74 20 73 74 72 69 6E 67 0D 0A 09 6F 72 61 09    ct string...ora.
00C3A0:  61 09 09 3B 63 68 65 63 6B 20 74 6F 20 73 65 65    a..;check to see
00C3B0:  20 69 66 20 64 6F 6E 65 0D 0A 09 72 7A 09 09 09     if done...rz...
00C3C0:  3B 69 66 20 7A 65 72 6F 20 64 6F 6E 65 20 72 65    ;if zero done re
00C3D0:  74 75 72 6E 20 74 6F 20 63 61 6C 6C 65 72 0D 0A    turn to caller..
00C3E0:  09 69 6E 78 09 68 09 09 3B 61 64 64 20 31 20 74    .inx.h..;add 1 t
00C3F0:  6F 20 73 6F 75 72 63 65 20 70 6F 69 6E 74 65 72    o source pointer
00C400:  0A 2F 2A 09 64 61 74 65 20 77 72 69 74 74 65 6E    ./*.date written
00C410:  3A 09 64 65 63 20 31 36 2C 20 31 39 38 30 20 42    :.dec 16, 1980 B
00C420:  79 20 4D 69 6B 65 20 42 65 72 6E 73 6F 6E 09 2A    y Mike Bernson.*
00C430:  2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F 0D 0A    /../*.......*/..
00C440:  2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /***************
00C450:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00C460:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00C470:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 65 72 72 6F    *********/..erro
00C480:  72 28 6D 73 67 29 0D 0A 63 68 61 72 20 2A 6D 73    r(msg)..char *ms
00C490:  67 3B 0D 0A 7B 0D 0A 09 70 75 74 73 28 6D 73 67    g;..{...puts(msg
00C4A0:  29 3B 09 09 2F 2A 20 70 72 69 6E 74 20 65 72 72    );../* print err
00C4B0:  6F 72 20 6D 65 73 73 61 67 65 20 2A 2F 0D 0A 09    or message */...
00C4C0:  70 75 74 73 28 22 20 61 74 20 6C 69 6E 65 20 22    puts(" at line "
00C4D0:  29 3B 09 2F 2A 20 70 72 69 6E 74 20 22 61 74 20    );./* print "at 
00C4E0:  6C 69 6E 65 22 20 2A 2F 0D 0A 09 6F 75 74 64 65    line" */...outde
00C4F0:  63 28 6C 69 6E 65 29 3B 09 09 2F 2A 20 70 72 69    c(line);../* pri
00C500:  6E 74 20 6C 69 6E 65 20 6E 75 6D 62 65 72 20 2A    nt line number *
00C510:  2F 0D 0A 09 65 78 69 74 28 29 20 3B 09 09 2F 2A    /...exit() ;../*
00C520:  20 65 6E 64 20 62 61 63 6B 20 74 6F 20 63 70 6D     end back to cpm
00C530:  20 2A 2F 0D 0A 09 7D 0D 0A 0D 0A 2F 2A 2A 2A 2A     */...}..../****
00C540:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00C550:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00C560:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00C570:  2A 2A 2A 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09    ****/../*.......
00C580:  2A 2F 0D 0A 2F 2A 09 6F 75 74 64 65 63 09 09 09    */../*.outdec...
00C590:  09 09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09    ...*/../*.......
00C5A0:  2A 2F 0D 0A 2F 2A 09 66 75 6E 63 74 69 6F 6E 3A    */../*.function:
00C5B0:  09 74 6F 20 6F 75 74 70 75 74 20 6E 75 6D 62 65    .to output numbe
00C5C0:  72 20 69 6E 20 64 65 63 20 66 72 6F 6D 09 2A 2F    r in dec from.*/
00C5D0:  0D 0A 2F 2A 09 09 09 74 6F 20 63 6F 6E 73 6F 6C    ../*...to consol
00C5E0:  65 09 09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09    e...*/../*......
00C5F0:  09 2A 2F 0D 0A 2F 2A 09 64 61 74 65 20 77 72 69    .*/../*.date wri
00C600:  0D 0A 09 69 6E 78 09 64 09 09 3B 61 64 64 20 31    ...inx.d..;add 1
00C610:  20 74 6F 20 6F 62 6A 65 63 74 20 70 6F 69 6E 74     to object point
00C620:  65 72 0D 0A 09 72 65 6C 6F 63 09 6A 6D 70 2C 73    er...reloc.jmp,s
00C630:  74 72 63 70 79 31 09 3B 64 6F 77 6E 20 74 69 6C    trcpy1.;down til
00C640:  6C 20 65 6E 64 20 6F 66 20 73 74 72 69 6E 67 0D    l end of string.
00C650:  0A 3B 0D 0A 09 70 6F 73 74 6C 75 64 65 20 73 74    .;...postlude st
00C660:  72 63 70 79 0D 0A 3B 0D 0A 3B 0D 0A 3B 0D 0A 09    rcpy..;..;..;...
00C670:  70 72 65 6C 75 64 65 09 73 74 72 63 61 74 0D 0A    prelude.strcat..
00C680:  73 74 72 63 61 74 3A 0D 0A 09 63 61 6C 6C 09 61    strcat:...call.a
00C690:  72 67 68 61 6B 09 3B 67 65 74 20 70 61 72 6D 20    rghak.;get parm 
00C6A0:  6C 69 73 74 0D 0A 09 6C 68 6C 64 09 61 72 67 31    list...lhld.arg1
00C6B0:  09 3B 67 65 74 20 61 64 64 72 65 73 73 20 6F 66    .;get address of
00C6C0:  20 66 72 69 73 74 20 70 61 72 6D 0D 0A 09 78 63     frist parm...xc
00C6D0:  68 67 09 09 3B 70 75 74 20 69 74 20 69 6E 20 68    hg..;put it in h
00C6E0:  6C 0D 0A 09 6C 68 6C 64 09 61 72 67 32 09 3B 67    l...lhld.arg2.;g
00C6F0:  65 74 20 73 65 63 6F 6E 64 20 70 61 72 6D 0D 0A    et second parm..
00C700:  73 74 72 63 61 74 31 3A 0D 0A 09 6C 64 61 78 09    strcat1:...ldax.
00C710:  64 09 09 3B 67 65 74 20 62 79 74 65 20 74 6F 20    d..;get byte to 
00C720:  73 65 65 20 69 66 20 7A 65 72 6F 0D 0A 09 6F 72    see if zero...or
00C730:  61 09 61 09 09 3B 73 65 74 20 73 74 61 74 75 73    a.a..;set status
00C740:  20 66 6C 61 67 73 0D 0A 09 72 65 6C 6F 63 09 6A     flags...reloc.j
00C750:  7A 2C 73 74 72 63 61 74 32 09 3B 65 6E 64 20 6F    z,strcat2.;end o
00C760:  66 20 73 74 72 69 6E 67 20 31 20 0D 0A 09 69 6E    f string 1 ...in
00C770:  78 09 64 09 09 3B 61 64 64 20 31 20 74 6F 20 70    x.d..;add 1 to p
00C780:  6F 69 6E 74 65 72 0D 0A 09 72 65 6C 6F 63 09 6A    ointer...reloc.j
00C790:  6D 70 2C 73 74 72 63 61 74 31 09 3B 6C 6F 6F 70    mp,strcat1.;loop
00C7A0:  20 74 69 6C 6C 20 65 6E 64 20 6F 66 20 73 74 72     till end of str
00C7B0:  69 6E 67 20 31 0D 0A 73 74 72 63 61 74 32 3A 0D    ing 1..strcat2:.
00C7C0:  0A 09 6D 6F 76 09 61 2C 6D 09 09 3B 67 65 74 20    ..mov.a,m..;get 
00C7D0:  63 68 61 72 20 66 6F 72 20 73 6F 75 72 63 65 20    char for source 
00C7E0:  73 74 72 69 6E 67 0D 0A 09 73 74 61 78 09 64 09    string...stax.d.
00C7F0:  09 3B 73 61 76 65 20 61 74 20 65 6E 64 20 6F 66    .;save at end of
00C800:  74 74 65 6E 3A 09 44 65 63 20 31 36 2C 20 31 39    tten:.Dec 16, 19
00C810:  38 30 20 42 79 20 4D 69 6B 65 20 42 65 72 6E 73    80 By Mike Berns
00C820:  6F 6E 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09    on.*/../*.......
00C830:  2A 2F 0D 0A 2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    */../***********
00C840:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00C850:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00C860:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A    *************/..
00C870:  6F 75 74 64 65 63 28 6E 75 6D 62 65 72 29 0D 0A    outdec(number)..
00C880:  69 6E 74 20 6E 75 6D 62 65 72 3B 0D 0A 7B 0D 0A    int number;..{..
00C890:  09 63 68 61 72 20 7A 65 72 6F 2C 6E 75 6D 3B 0D    .char zero,num;.
00C8A0:  0A 09 69 6E 74 20 20 70 6C 61 63 65 3B 0D 0A 0D    ..int  place;...
00C8B0:  0A 09 70 6C 61 63 65 3D 31 30 30 30 30 3B 0D 0A    ..place=10000;..
00C8C0:  09 7A 65 72 6F 3D 30 3B 0D 0A 0D 0A 09 77 68 69    .zero=0;.....whi
00C8D0:  6C 65 28 70 6C 61 63 65 3E 30 29 20 7B 0D 0A 09    le(place>0) {...
00C8E0:  09 6E 75 6D 3D 6E 75 6D 62 65 72 2F 70 6C 61 63    .num=number/plac
00C8F0:  65 2B 27 30 27 3B 20 2F 2A 20 67 65 74 20 63 75    e+'0'; /* get cu
00C900:  72 72 65 6E 74 20 64 69 67 69 74 20 2A 2F 0D 0A    rrent digit */..
00C910:  09 09 69 66 20 28 6E 75 6D 20 21 3D 20 27 30 27    ..if (num != '0'
00C920:  20 7C 7C 20 70 6C 61 63 65 20 3D 3D 31 20 7C 7C     || place ==1 ||
00C930:  20 7A 65 72 6F 29 20 7B 0D 0A 09 09 09 7A 65 72     zero) {.....zer
00C940:  6F 3D 31 3B 20 2F 2A 20 73 65 74 20 7A 65 72 6F    o=1; /* set zero
00C950:  20 73 75 70 70 72 65 73 73 20 2A 2F 0D 0A 09 09     suppress */....
00C960:  09 70 75 74 63 68 28 6E 75 6D 29 3B 20 2F 2A 20    .putch(num); /* 
00C970:  70 72 69 6E 74 20 63 68 61 72 61 63 74 65 72 20    print character 
00C980:  2A 2F 0D 0A 09 09 09 7D 0D 0A 09 09 6E 75 6D 62    */.....}....numb
00C990:  65 72 3D 6E 75 6D 62 65 72 20 25 20 70 6C 61 63    er=number % plac
00C9A0:  65 3B 0D 0A 09 09 70 6C 61 63 65 3D 70 6C 61 63    e;....place=plac
00C9B0:  65 2F 31 30 3B 0D 0A 09 09 7D 0D 0A 09 7D 0D 0A    e/10;....}...}..
00C9C0:  1A 70 6C 61 63 65 3D 70 6C 61 63 65 2F 31 30 3B    .place=place/10;
00C9D0:  0D 0A 09 09 7D 0D 0A 09 7D 0D 0A 1A 31 30 3B 0D    ....}...}...10;.
00C9E0:  0A 09 09 7D 0D 0A 09 7D 0D 0A 1A 3B 0D 0A 09 09    ...}...}...;....
00C9F0:  70 6C 61 63 65 3D 70 6C 61 63 65 2F 31 30 3B 0D    place=place/10;.
00CA00:  20 73 65 63 6F 6E 64 20 73 74 72 69 6E 67 0D 0A     second string..
00CA10:  09 6F 72 61 09 61 09 09 3B 63 68 65 63 6B 20 74    .ora.a..;check t
00CA20:  6F 20 73 65 65 20 69 66 20 7A 65 72 6F 0D 0A 09    o see if zero...
00CA30:  72 7A 09 09 09 3B 72 65 74 75 72 6E 20 69 66 20    rz...;return if 
00CA40:  65 6E 64 20 6F 66 20 73 74 72 69 6E 67 20 32 0D    end of string 2.
00CA50:  0A 09 69 6E 78 09 68 09 09 3B 61 64 64 20 31 20    ..inx.h..;add 1 
00CA60:  74 6F 20 73 6F 75 72 63 65 20 70 6F 69 6E 74 65    to source pointe
00CA70:  72 0D 0A 09 69 6E 78 09 64 09 09 3B 61 64 64 20    r...inx.d..;add 
00CA80:  31 20 74 6F 20 6F 62 6A 65 63 74 20 70 6F 69 6E    1 to object poin
00CA90:  74 65 72 0D 0A 09 72 65 6C 6F 63 09 6A 6D 70 2C    ter...reloc.jmp,
00CAA0:  73 74 72 63 61 74 32 09 3B 6C 6F 6F 70 20 74 69    strcat2.;loop ti
00CAB0:  6C 6C 20 65 6E 64 20 6F 66 20 73 6F 75 72 63 65    ll end of source
00CAC0:  20 73 74 72 69 6E 67 0D 0A 09 70 6F 73 74 6C 75     string...postlu
00CAD0:  64 65 20 73 74 72 63 61 74 0D 0A 3B 0D 0A 3B 0D    de strcat..;..;.
00CAE0:  0A 3B 0D 0A 09 70 72 65 6C 75 64 65 09 73 74 72    .;...prelude.str
00CAF0:  70 6F 73 0D 0A 3B 0D 0A 73 74 72 70 6F 73 3A 0D    pos..;..strpos:.
00CB00:  0A 09 63 61 6C 6C 09 61 72 67 68 61 6B 09 09 3B    ..call.arghak..;
00CB10:  67 65 74 20 70 61 72 6D 20 6C 69 73 74 0D 0A 09    get parm list...
00CB20:  70 75 73 68 09 62 09 09 3B 73 61 76 65 20 63 20    push.b..;save c 
00CB30:  73 74 61 63 6B 20 6F 6E 20 6D 61 63 68 69 6E 65    stack on machine
00CB40:  20 73 74 61 63 6B 0D 0A 09 6C 68 6C 64 09 61 72     stack...lhld.ar
00CB50:  67 31 09 09 3B 67 65 74 20 73 74 72 69 6E 67 20    g1..;get string 
00CB60:  74 68 61 74 20 77 65 20 61 72 65 20 73 65 61 72    that we are sear
00CB70:  63 68 69 6E 67 20 69 6E 0D 0A 09 78 63 68 67 09    ching in...xchg.
00CB80:  09 09 3B 70 75 74 20 61 64 64 72 65 73 73 20 69    ..;put address i
00CB90:  6E 20 64 65 0D 0A 09 6C 78 69 09 62 2C 30 09 09    n de...lxi.b,0..
00CBA0:  3B 7A 65 72 6F 20 70 6F 73 74 69 6F 6E 20 0D 0A    ;zero postion ..
00CBB0:  73 74 72 70 6F 73 31 3A 0D 0A 09 6C 68 6C 64 09    strpos1:...lhld.
00CBC0:  61 72 67 32 09 09 3B 67 65 74 20 61 64 64 72 65    arg2..;get addre
00CBD0:  73 73 20 6F 66 20 73 65 61 72 63 68 20 66 6F 72    ss of search for
00CBE0:  20 73 74 72 69 6E 67 0D 0A 73 74 72 70 6F 73 32     string..strpos2
00CBF0:  3A 0D 0A 09 6C 64 61 78 09 64 09 09 3B 67 65 74    :...ldax.d..;get
00CC00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CC10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CC20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CC30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CC40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CC50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CC60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CC70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CC80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CC90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CCA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CCB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CCC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CCD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CCE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CCF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CD00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CD10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CD20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CD30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CD40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CD50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CD60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CD70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CD80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CD90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CDA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CDB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CDC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CDD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CDE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CDF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00CE00:  20 63 68 61 72 61 63 74 65 72 20 74 6F 20 63 68     character to ch
00CE10:  65 63 6B 20 0D 0A 09 6F 72 61 09 61 09 09 3B 63    eck ...ora.a..;c
00CE20:  68 65 63 6B 20 74 6F 20 73 65 65 20 69 66 20 65    heck to see if e
00CE30:  6E 64 20 6F 66 20 73 74 72 69 6E 67 20 31 0D 0A    nd of string 1..
00CE40:  09 72 65 6C 6F 63 09 6A 7A 2C 73 74 72 70 6F 73    .reloc.jz,strpos
00CE50:  34 09 3B 65 6E 64 20 6F 66 20 73 74 72 69 6E 67    4.;end of string
00CE60:  20 61 72 67 32 20 69 73 20 6E 6F 74 20 69 6E 73     arg2 is not ins
00CE70:  69 64 65 20 6F 66 20 61 72 67 31 0D 0A 09 69 6E    ide of arg1...in
00CE80:  78 09 62 09 09 3B 61 64 64 20 31 20 74 6F 20 70    x.b..;add 1 to p
00CE90:  6F 73 74 69 6F 6E 0D 0A 09 69 6E 78 09 64 09 09    ostion...inx.d..
00CEA0:  3B 61 64 64 20 31 20 74 6F 70 20 70 6F 69 6E 74    ;add 1 top point
00CEB0:  65 72 20 6F 66 20 61 72 67 31 0D 0A 09 63 6D 70    er of arg1...cmp
00CEC0:  09 6D 09 09 3B 63 68 65 63 6B 20 74 6F 20 73 65    .m..;check to se
00CED0:  65 20 69 66 20 61 20 6D 61 74 63 68 20 6F 6E 20    e if a match on 
00CEE0:  66 69 72 73 74 20 63 68 61 72 0D 0A 09 72 65 6C    first char...rel
00CEF0:  6F 63 09 6A 6E 7A 2C 73 74 72 70 6F 73 32 09 3B    oc.jnz,strpos2.;
00CF00:  6C 6F 6F 70 20 74 69 6C 6C 20 66 69 73 72 74 20    loop till fisrt 
00CF10:  63 68 61 72 61 63 74 65 72 20 6D 61 74 63 68 0D    character match.
00CF20:  0A 09 70 75 73 68 09 64 09 09 3B 73 61 76 65 20    ..push.d..;save 
00CF30:  63 75 72 72 65 6E 74 20 70 6F 73 74 69 6F 6E 20    current postion 
00CF40:  6F 6E 20 73 74 61 63 6B 0D 0A 09 64 63 78 09 64    on stack...dcx.d
00CF50:  09 09 3B 6D 6F 76 65 20 70 6F 69 6E 74 65 72 20    ..;move pointer 
00CF60:  62 61 63 6B 20 6F 6E 65 0D 0A 73 74 72 70 6F 73    back one..strpos
00CF70:  33 3A 0D 0A 09 69 6E 78 09 68 09 09 3B 61 64 64    3:...inx.h..;add
00CF80:  20 31 20 74 6F 20 61 72 67 31 0D 0A 09 69 6E 78     1 to arg1...inx
00CF90:  09 64 09 09 3B 61 64 64 20 31 20 74 6F 20 61 72    .d..;add 1 to ar
00CFA0:  67 32 0D 0A 09 6D 6F 76 09 61 2C 6D 09 09 3B 63    g2...mov.a,m..;c
00CFB0:  68 65 63 6B 20 74 6F 20 73 65 65 20 69 66 20 65    heck to see if e
00CFC0:  6E 64 20 6F 66 20 61 72 67 32 0D 0A 09 6F 72 61    nd of arg2...ora
00CFD0:  09 61 09 09 3B 73 65 65 20 69 66 20 7A 65 72 6F    .a..;see if zero
00CFE0:  20 0D 0A 09 72 65 6C 6F 63 09 6A 7A 2C 73 74 72     ...reloc.jz,str
00CFF0:  70 6F 73 35 09 3B 65 6E 64 20 6F 66 20 61 72 67    pos5.;end of arg
00D000:  09 74 69 74 6C 65 09 27 73 74 72 69 6E 67 20 61    .title.'string a
00D010:  73 73 65 62 6D 6C 65 20 66 75 6E 63 74 69 6F 6E    ssebmle function
00D020:  20 66 6F 72 20 42 44 53 20 43 27 0D 0A 09 70 61     for BDS C'...pa
00D030:  67 65 09 36 30 0D 0A 3B 0D 0A 0D 0A 09 6D 61 63    ge.60..;.....mac
00D040:  6C 69 62 09 62 64 73 0D 0A 09 6D 61 63 6C 69 62    lib.bds...maclib
00D050:  09 63 6D 61 63 0D 0A 3B 0D 0A 3B 0D 0A 09 64 69    .cmac..;..;...di
00D060:  72 65 63 74 0D 0A 09 64 65 66 69 6E 65 09 53 54    rect...define.ST
00D070:  52 4C 45 4E 0D 0A 09 64 65 66 69 6E 65 09 53 54    RLEN...define.ST
00D080:  52 43 50 59 0D 0A 09 64 65 66 69 6E 65 09 53 54    RCPY...define.ST
00D090:  52 43 41 54 0D 0A 09 64 65 66 69 6E 65 09 53 54    RCAT...define.ST
00D0A0:  52 50 4F 53 0D 0A 09 65 6E 64 64 69 72 0D 0A 3B    RPOS...enddir..;
00D0B0:  0D 0A 09 70 61 67 65 0D 0A 3B 0D 0A 3B 09 73 74    ...page..;..;.st
00D0C0:  72 6C 65 6E 0D 0A 3B 0D 0A 3B 09 72 65 74 75 72    rlen..;..;.retur
00D0D0:  6E 20 6C 65 6E 67 68 74 20 6F 66 20 73 74 72 69    n lenght of stri
00D0E0:  6E 67 0D 0A 3B 0D 0A 09 70 72 65 6C 75 64 65 09    ng..;...prelude.
00D0F0:  73 74 72 6C 65 6E 0D 0A 3B 0D 0A 0D 0A 73 74 72    strlen..;....str
00D100:  6C 65 6E 3A 0D 0A 09 63 61 6C 6C 09 61 72 67 68    len:...call.argh
00D110:  61 6B 09 09 3B 67 65 74 20 61 72 67 20 6C 69 73    ak..;get arg lis
00D120:  74 0D 0A 09 6C 68 6C 64 09 61 72 67 31 09 09 3B    t...lhld.arg1..;
00D130:  67 65 74 20 70 6F 69 6E 74 20 74 6F 20 73 74 72    get point to str
00D140:  69 6E 67 0D 0A 09 78 63 68 67 09 09 09 3B 70 75    ing...xchg...;pu
00D150:  74 20 61 64 64 72 65 73 73 20 69 6E 20 64 65 0D    t address in de.
00D160:  0A 09 6C 78 69 09 68 2C 30 09 09 3B 70 75 74 20    ..lxi.h,0..;put 
00D170:  61 20 7A 65 72 6F 20 69 6E 20 68 6C 20 28 6C 65    a zero in hl (le
00D180:  6E 67 74 68 29 0D 0A 73 74 72 6C 65 6E 31 3A 0D    ngth)..strlen1:.
00D190:  0A 09 6C 64 61 78 09 64 09 09 3B 67 65 74 20 76    ..ldax.d..;get v
00D1A0:  61 6C 75 65 20 6F 66 20 74 68 69 73 20 63 68 61    alue of this cha
00D1B0:  72 61 63 74 65 72 0D 0A 09 6F 72 61 09 61 09 09    racter...ora.a..
00D1C0:  3B 63 68 65 63 6B 20 74 6F 20 73 65 65 20 69 66    ;check to see if
00D1D0:  20 7A 65 72 6F 0D 0A 09 72 7A 09 09 09 3B 69 66     zero...rz...;if
00D1E0:  20 7A 65 72 6F 20 65 6E 64 20 6F 66 20 73 74 72     zero end of str
00D1F0:  69 6E 67 20 72 65 74 75 72 6E 0D 0A 09 69 6E 78    ing return...inx
00D200:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
00D210:  0B 00 01 00 02 09 52 E5 0B 00 C1 02 00 00 00 02    ......R.........
00D220:  0B 00 C6 02 00 00 00 02 0B 00 C2 02 00 00 00 02    ................
00D230:  0B 00 C7 02 00 00 00 02 0B 00 C3 02 00 00 00 02    ................
00D240:  0B 00 C8 02 00 00 00 02 0B 00 C4 02 00 00 00 02    ................
00D250:  0B 00 C9 02 00 00 00 02 0B 00 C5 02 00 00 00 02    ................
00D260:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00D270:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00D280:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00D290:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00D2A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00D2B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00D2C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00D2D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00D2E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00D2F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00D300:  32 20 6D 61 74 63 68 20 66 6F 75 6E 64 20 0D 0A    2 match found ..
00D310:  09 6C 64 61 78 09 64 09 09 3B 67 65 74 20 61 72    .ldax.d..;get ar
00D320:  67 31 0D 0A 09 63 6D 70 09 6D 09 09 3B 63 68 65    g1...cmp.m..;che
00D330:  63 6B 20 74 6F 20 73 65 65 20 69 66 20 6D 61 74    ck to see if mat
00D340:  63 68 0D 0A 09 72 65 6C 6F 63 09 6A 7A 2C 73 74    ch...reloc.jz,st
00D350:  72 70 6F 73 33 09 3B 6C 6F 6F 70 20 74 6F 20 65    rpos3.;loop to e
00D360:  6E 64 20 6F 66 20 73 74 72 69 6E 67 20 6F 72 20    nd of string or 
00D370:  6E 6F 6D 61 74 63 68 0D 0A 09 70 6F 70 09 64 09    nomatch...pop.d.
00D380:  09 3B 72 65 6D 6F 76 65 20 73 65 61 72 63 68 20    .;remove search 
00D390:  61 64 64 72 65 73 73 20 66 72 6F 6D 20 73 74 61    address from sta
00D3A0:  63 6B 0D 0A 09 72 65 6C 6F 63 09 6A 6D 70 2C 73    ck...reloc.jmp,s
00D3B0:  74 72 70 6F 73 31 09 3B 6C 6F 6F 70 20 74 69 6C    trpos1.;loop til
00D3C0:  6C 20 65 6E 64 20 6F 66 20 61 72 67 31 0D 0A 73    l end of arg1..s
00D3D0:  74 72 70 6F 73 34 3A 0D 0A 09 70 6F 70 09 62 09    trpos4:...pop.b.
00D3E0:  09 3B 72 65 73 74 6F 72 65 20 63 20 73 74 61 63    .;restore c stac
00D3F0:  6B 20 70 6F 69 6E 74 65 72 0D 0A 09 6C 78 69 09    k pointer...lxi.
00D400:  68 2C 30 09 09 3B 61 72 67 32 20 6E 6F 74 20 66    h,0..;arg2 not f
00D410:  6F 75 6E 64 20 69 6E 20 61 72 67 31 0D 0A 09 72    ound in arg1...r
00D420:  65 74 0D 0A 73 74 72 70 6F 73 35 3A 0D 0A 09 6D    et..strpos5:...m
00D430:  6F 76 09 68 2C 62 09 09 3B 61 72 67 32 20 66 6F    ov.h,b..;arg2 fo
00D440:  75 6E 64 20 69 6E 20 61 72 67 31 0D 0A 09 6D 6F    und in arg1...mo
00D450:  76 09 6C 2C 63 0D 0A 09 70 6F 70 09 64 09 09 3B    v.l,c...pop.d..;
00D460:  72 65 6D 6F 76 65 20 6A 75 6E 6B 20 66 72 6F 6D    remove junk from
00D470:  20 73 74 61 63 6B 0D 0A 09 70 6F 70 09 62 09 09     stack...pop.b..
00D480:  3B 72 65 73 74 6F 72 65 20 62 20 73 74 61 63 6B    ;restore b stack
00D490:  20 70 6F 69 6E 74 65 72 0D 0A 09 72 65 74 0D 0A     pointer...ret..
00D4A0:  3B 0D 0A 3B 0D 0A 09 70 6F 73 74 6C 75 64 65 20    ;..;...postlude 
00D4B0:  73 74 72 70 6F 73 0D 0A 09 65 6E 64 0D 0A 1A 1A    strpos...end....
00D4C0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
00D4D0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
00D4E0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
00D4F0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
00D500:  0A 2F 2A 20 20 20 20 20 20 44 65 66 69 6E 65 20    ./*      Define 
00D510:  73 79 73 74 65 6D 20 64 65 70 65 6E 64 65 6E 74    system dependent
00D520:  20 70 61 72 61 6D 65 74 65 72 73 20 20 20 20 20     parameters     
00D530:  20 2A 2F 0D 0A 0D 0A 2F 2A 20 20 20 20 20 20 53     */..../*      S
00D540:  74 61 6E 64 2D 61 6C 6F 6E 65 20 64 65 66 69 6E    tand-alone defin
00D550:  69 74 69 6F 6E 73 20 20 20 20 20 20 20 20 20 20    itions          
00D560:  20 20 20 20 20 20 20 2A 2F 0D 0A 0D 0A 23 64 65           */....#de
00D570:  66 69 6E 65 20 42 55 46 53 49 5A 09 31 30 33 30    fine BUFSIZ.1030
00D580:  0D 0A 23 64 65 66 69 6E 65 20 45 52 52 4F 52 09    ..#define ERROR.
00D590:  2D 31 0D 0A 23 64 65 66 69 6E 65 20 46 41 4C 53    -1..#define FALS
00D5A0:  45 09 30 0D 0A 23 64 65 66 69 6E 65 20 54 52 55    E.0..#define TRU
00D5B0:  45 09 31 0D 0A 23 64 65 66 69 6E 65 20 65 6F 6C    E.1..#define eol
00D5C0:  20 09 31 33 09 0D 0A 23 64 65 66 69 6E 65 20 43     .13...#define C
00D5D0:  52 09 31 33 09 0D 0A 23 64 65 66 69 6E 65 20 4C    R.13...#define L
00D5E0:  46 09 31 30 0D 0A 23 64 65 66 69 6E 65 20 42 53    F.10..#define BS
00D5F0:  09 38 0D 0A 23 64 65 66 69 6E 65 20 54 42 09 39    .8..#define TB.9
00D600:  0D 0A 23 64 65 66 69 6E 65 20 46 46 09 31 32 0D    ..#define FF.12.
00D610:  0A 0D 0A 2F 2A 20 20 20 20 20 20 44 65 66 69 6E    .../*      Defin
00D620:  65 20 73 79 6D 62 6F 6C 20 74 61 62 6C 65 20 70    e symbol table p
00D630:  61 72 61 6D 65 74 65 72 73 20 20 20 20 20 20 20    arameters       
00D640:  20 20 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 6C       */..#define l
00D650:  76 61 6C 73 69 7A 65 20 33 0D 0A 23 64 65 66 69    valsize 3..#defi
00D660:  6E 65 20 53 57 49 54 43 48 5F 4D 41 58 20 32 35    ne SWITCH_MAX 25
00D670:  34 0D 0A 23 64 65 66 69 6E 65 20 73 79 6D 73 69    4..#define symsi
00D680:  7A 20 20 31 35 0D 0A 23 64 65 66 69 6E 65 20 73    z  15..#define s
00D690:  79 6D 74 62 73 7A 20 36 30 30 30 0D 0A 23 64 65    ymtbsz 6000..#de
00D6A0:  66 69 6E 65 20 6E 75 6D 67 6C 62 73 20 33 30 30    fine numglbs 300
00D6B0:  0D 0A 23 64 65 66 69 6E 65 20 73 74 61 72 74 67    ..#define startg
00D6C0:  6C 62 20 73 79 6D 74 61 62 0D 0A 23 64 65 66 69    lb symtab..#defi
00D6D0:  6E 65 20 65 6E 64 67 6C 62 20 20 73 74 61 72 74    ne endglb  start
00D6E0:  67 6C 62 2B 6E 75 6D 67 6C 62 73 2A 73 79 6D 73    glb+numglbs*syms
00D6F0:  69 7A 0D 0A 23 64 65 66 69 6E 65 20 73 74 61 72    iz..#define star
00D700:  53 54 52 4C 45 CE 05 02 53 54 52 43 50 D9 1E 02    STRLE...STRCP...
00D710:  53 54 52 43 41 D4 38 02 53 54 52 50 4F D3 5F 02    STRCA.8.STRPO._.
00D720:  80 A3 02 CD BB 0D CD B5 0D C3 FB 0C CD A0 0D C3    .£..............
00D730:  FB 0C CD 96 0D FE 38 CA 7B 0C E6 08 C4 82 11 79    ......8.{......y
00D740:  E6 30 B0 C3 F8 0C CD 32 0F CD B5 0D C3 FB 0C CD    .0.....2........
00D750:  96 0D B0 47 CD BB 0D CD 8B 0D B0 C3 F8 0C CD 96    ...G............
00D760:  0D B0 CD 31 0F CD BB 0D CD AF 0D C3 FB 0C CD 32    ...1...........2
00D770:  0F CD AF 0D C3 FB 0C CD 96 0D E6 28 C4 82 11 79    ...........(...y
00D780:  E6 10 B0 C3 F8 0C CD 32 0F CD B5 0D C3 FB 0C CD    .......2........
00D790:  8B 0D B0 C3 F8 0C CD 96 0D B0 C3 F8 0C CD 96 0D    ................
00D7A0:  E6 08 C4 82 11 79 E6 30 B0 C3 F8 0C CD 96 0D B0    .....y.0........
00D7B0:  C3 F8 0C CD 32 0F CD AF 0D C3 FB 0C CD 31 0F CD    ....2........1..
00D7C0:  F4 0E CD E3 0E C3 D5 0D 10 27 E8 03 64 00 0A 00    .........'..d...
00D7D0:  01 00 06 05 21 04 0D 5E 23 56 23 E5 2A DC 11 0E    ....!..^#V#.*...
00D7E0:  30 7D 93 6F 7C 9A 67 DA 2A 0D 0C C3 1D 0D 19 22    0}.o|.g.*......"
00D7F0:  DC 11 3A DB 11 B7 CA 44 0D 78 3D CA 44 0D 79 FE    ..:....D.x=.D.y.
00D800:  53 54 52 4C 45 CE 05 02 53 54 52 43 50 D9 1E 02    STRLE...STRCP...
00D810:  53 54 52 43 41 D4 38 02 53 54 52 50 4F D3 5F 02    STRCA.8.STRPO._.
00D820:  80 A3 02 CD BB 0D CD B5 0D C3 FB 0C CD A0 0D C3    .£..............
00D830:  FB 0C CD 96 0D FE 38 CA 7B 0C E6 08 C4 82 11 79    ......8.{......y
00D840:  E6 30 B0 C3 F8 0C CD 32 0F CD B5 0D C3 FB 0C CD    .0.....2........
00D850:  96 0D B0 47 CD BB 0D CD 8B 0D B0 C3 F8 0C CD 96    ...G............
00D860:  0D B0 CD 31 0F CD BB 0D CD AF 0D C3 FB 0C CD 32    ...1...........2
00D870:  0F CD AF 0D C3 FB 0C CD 96 0D E6 28 C4 82 11 79    ...........(...y
00D880:  E6 10 B0 C3 F8 0C CD 32 0F CD B5 0D C3 FB 0C CD    .......2........
00D890:  8B 0D B0 C3 F8 0C CD 96 0D B0 C3 F8 0C CD 96 0D    ................
00D8A0:  E6 08 C4 82 11 79 E6 30 B0 C3 F8 0C CD 96 0D B0    .....y.0........
00D8B0:  C3 F8 0C CD 32 0F CD AF 0D C3 FB 0C CD 31 0F CD    ....2........1..
00D8C0:  F4 0E CD E3 0E C3 D5 0D 10 27 E8 03 64 00 0A 00    .........'..d...
00D8D0:  01 00 06 05 21 04 0D 5E 23 56 23 E5 2A DC 11 0E    ....!..^#V#.*...
00D8E0:  30 7D 93 6F 7C 9A 67 DA 2A 0D 0C C3 1D 0D 19 22    0}.o|.g.*......"
00D8F0:  DC 11 3A DB 11 B7 CA 44 0D 78 3D CA 44 0D 79 FE    ..:....D.x=.D.y.
00D900:  74 6C 6F 63 20 65 6E 64 67 6C 62 2B 73 79 6D 73    tloc endglb+syms
00D910:  69 7A 0D 0A 23 64 65 66 69 6E 65 20 65 6E 64 6C    iz..#define endl
00D920:  6F 63 20 20 73 79 6D 74 61 62 2B 73 79 6D 74 62    oc  symtab+symtb
00D930:  73 7A 2D 73 79 6D 73 69 7A 0D 0A 0D 0A 2F 2A 20    sz-symsiz..../* 
00D940:  20 20 20 20 20 44 65 66 69 6E 65 20 73 79 6D 62         Define symb
00D950:  6F 6C 20 74 61 62 6C 65 20 65 6E 74 72 79 20 66    ol table entry f
00D960:  6F 72 6D 61 74 20 20 20 20 20 20 20 20 2A 2F 0D    ormat        */.
00D970:  0A 0D 0A 23 64 65 66 69 6E 65 20 6E 61 6D 65 20    ...#define name 
00D980:  20 20 20 30 0D 0A 23 64 65 66 69 6E 65 20 69 64       0..#define id
00D990:  65 6E 74 20 20 20 39 0D 0A 23 64 65 66 69 6E 65    ent   9..#define
00D9A0:  20 74 79 70 65 20 20 20 20 31 30 0D 0A 23 64 65     type    10..#de
00D9B0:  66 69 6E 65 20 69 6E 64 63 6E 74 09 31 31 0D 0A    fine indcnt.11..
00D9C0:  23 64 65 66 69 6E 65 20 73 74 6F 72 61 67 65 20    #define storage 
00D9D0:  31 32 0D 0A 23 64 65 66 69 6E 65 20 6F 66 66 73    12..#define offs
00D9E0:  65 74 20 20 31 33 0D 0A 23 64 65 66 69 6E 65 20    et  13..#define 
00D9F0:  6F 66 66 73 65 74 31 09 31 34 0D 0A 2F 2A 20 20    offset1.14../*  
00DA00:  20 20 20 20 53 79 73 74 65 6D 20 77 69 64 65 20        System wide 
00DA10:  6E 61 6D 65 20 73 69 7A 65 20 28 66 6F 72 20 73    name size (for s
00DA20:  79 6D 62 6F 6C 73 29 20 20 20 20 20 2A 2F 0D 0A    ymbols)     */..
00DA30:  0D 0A 23 64 65 66 69 6E 65 20 6E 61 6D 65 73 69    ..#define namesi
00DA40:  7A 65 20 39 0D 0A 23 64 65 66 69 6E 65 20 6E 61    ze 9..#define na
00DA50:  6D 65 6D 61 78 20 20 38 0D 0A 0D 0A 2F 2A 20 20    memax  8..../*  
00DA60:  20 20 20 20 44 65 66 69 6E 65 20 70 6F 73 73 69        Define possi
00DA70:  62 6C 65 20 65 6E 74 72 69 65 73 20 66 6F 72 20    ble entries for 
00DA80:  22 69 64 65 6E 74 22 20 20 20 20 20 2A 2F 0D 0A    "ident"     */..
00DA90:  0D 0A 23 64 65 66 69 6E 65 20 76 61 72 69 61 62    ..#define variab
00DAA0:  6C 65 09 31 09 09 2F 2A 20 61 20 6E 6F 72 6D 61    le.1../* a norma
00DAB0:  6C 20 76 61 72 62 6C 65 20 2A 2F 0D 0A 23 64 65    l varble */..#de
00DAC0:  66 69 6E 65 20 61 72 72 61 79 09 09 32 09 09 2F    fine array..2../
00DAD0:  2A 20 61 72 72 61 79 20 6F 66 20 76 61 72 62 6C    * array of varbl
00DAE0:  65 73 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 70    es */..#define p
00DAF0:  6F 69 6E 74 65 72 09 09 33 09 09 2F 2A 20 70 6F    ointer..3../* po
00DB00:  53 54 52 4C 45 00 12 00 CD 37 03 2A 9F 05 EB 21    STRLE....7.*...!
00DB10:  00 00 1A B7 C8 23 13 C3 0A 00 01 00 10 00 00 13    .....#..........
00DB20:  00 CD 37 03 2A 9F 05 EB 2A A1 05 7E 12 B7 C8 23    ..7.*...*..~...#
00DB30:  13 C3 0A 00 01 00 11 00 00 1C 00 CD 37 03 2A 9F    ............7.*.
00DB40:  05 EB 2A A1 05 1A B7 CA 13 00 13 C3 0A 00 7E 12    ..*...........~.
00DB50:  B7 C8 23 13 C3 13 00 03 00 0D 00 11 00 1A 00 00    ..#.............
00DB60:  35 00 CD 37 03 C5 2A 9F 05 EB 01 00 00 2A A1 05    5..7..*......*..
00DB70:  1A B7 CA 2B 00 03 13 BE C2 0E 00 D5 1B 23 13 7E    ...+.........#.~
00DB80:  B7 CA 30 00 1A BE CA 1B 00 D1 C3 0B 00 C1 21 00    ..0...........!.
00DB90:  00 C9 60 69 D1 C1 C9 05 00 11 00 17 00 20 00 25    ..`i......... .%
00DBA0:  00 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00    .)..............
00DBB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00DBC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00DBD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00DBE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00DBF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00DC00:  2B 20 3C 52 45 54 55 52 4E 3E 0D 0A 38 20 4E 20    + <RETURN>..8 N 
00DC10:  53 20 22 5E 41 22 20 20 20 20 20 20 20 20 20 43    S "^A"         C
00DC20:  55 52 53 4F 52 20 4C 45 46 54 0D 0A 38 20 43 20    URSOR LEFT..8 C 
00DC30:  22 5E 27 23 39 45 27 22 0D 0A 39 20 4E 20 53 20    "^'#9E'"..9 N S 
00DC40:  22 5E 57 22 20 20 20 20 20 20 20 20 20 43 4F 50    "^W"         COP
00DC50:  59 3A 20 72 65 70 65 61 74 20 6C 61 73 74 20 6C    Y: repeat last l
00DC60:  69 6E 65 0D 0A 39 20 43 20 22 5E 52 22 20 20 20    ine..9 C "^R"   
00DC70:  20 20 20 20 20 20 20 3C 43 54 52 4C 3E 20 43 4F           <CTRL> CO
00DC80:  50 59 3A 20 69 67 6E 6F 72 65 20 63 75 72 72 65    PY: ignore curre
00DC90:  6E 74 20 6C 69 6E 65 20 61 6E 64 20 72 65 70 65    nt line and repe
00DCA0:  61 74 0D 0A 31 35 20 43 20 22 5E 27 23 38 45 27    at..15 C "^'#8E'
00DCB0:  22 20 20 20 20 20 3C 43 54 52 4C 3E 20 30 3A 20    "     <CTRL> 0: 
00DCC0:  27 42 3A 3D 2A 2E 2A 27 20 28 66 6F 72 20 50 49    'B:=*.*' (for PI
00DCD0:  50 29 0D 0A 31 36 20 4E 20 53 20 22 5E 47 22 20    P)..16 N S "^G" 
00DCE0:  20 20 20 20 20 20 20 43 4C 52 0D 0A 31 36 20 43           CLR..16 C
00DCF0:  20 22 5E 4B 22 20 20 20 20 20 20 20 20 20 3C 43     "^K"         <C
00DD00:  69 6E 74 65 72 20 74 6F 20 61 20 76 61 72 62 6C    inter to a varbl
00DD10:  65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 66 75    e */..#define fu
00DD20:  6E 63 74 69 6F 6E 09 34 09 09 2F 2A 20 65 6E 74    nction.4../* ent
00DD30:  72 79 20 69 73 20 61 20 66 75 6E 63 74 69 6F 6E    ry is a function
00DD40:  20 2A 2F 0D 0A 2F 2A 20 20 20 20 20 20 44 65 66     */../*      Def
00DD50:  69 6E 65 20 70 6F 73 73 69 62 6C 65 20 65 6E 74    ine possible ent
00DD60:  72 69 65 73 20 66 6F 72 20 22 74 79 70 65 22 20    ries for "type" 
00DD70:  20 20 20 20 20 2A 2F 0D 0A 0D 0A 23 64 65 66 69         */....#defi
00DD80:  6E 65 20 63 63 68 61 72 20 20 20 31 0D 0A 23 64    ne cchar   1..#d
00DD90:  65 66 69 6E 65 20 63 69 6E 74 20 20 20 20 32 0D    efine cint    2.
00DDA0:  0A 0D 0A 2F 2A 09 4C 65 6E 67 68 74 20 6F 66 20    .../*.Lenght of 
00DDB0:  70 6F 73 73 69 62 6C 65 20 65 6E 74 72 69 65 73    possible entries
00DDC0:  20 66 6F 72 20 22 74 79 70 65 22 09 2A 2F 0D 0A     for "type".*/..
00DDD0:  0D 0A 23 64 65 66 69 6E 65 20 6C 63 68 61 72 09    ..#define lchar.
00DDE0:  31 0D 0A 23 64 65 66 69 6E 65 20 6C 69 6E 74 09    1..#define lint.
00DDF0:  32 0D 0A 23 64 65 66 69 6E 65 20 6C 70 6F 69 6E    2..#define lpoin
00DE00:  74 09 32 0D 0A 0D 0A 2F 2A 20 20 20 20 20 20 44    t.2..../*      D
00DE10:  65 66 69 6E 65 20 70 6F 73 73 69 62 6C 65 20 65    efine possible e
00DE20:  6E 74 72 69 65 73 20 66 6F 72 20 22 73 74 6F 72    ntries for "stor
00DE30:  61 67 65 22 20 20 20 2A 2F 0D 0A 0D 0A 23 64 65    age"   */....#de
00DE40:  66 69 6E 65 20 73 74 61 74 69 6B 20 20 31 0D 0A    fine statik  1..
00DE50:  23 64 65 66 69 6E 65 20 73 74 6B 6C 6F 63 20 20    #define stkloc  
00DE60:  32 0D 0A 23 64 65 66 69 6E 65 20 73 74 6B 61 72    2..#define stkar
00DE70:  67 20 20 33 0D 0A 0D 0A 2F 2A 09 76 61 6C 75 65    g  3..../*.value
00DE80:  73 20 72 65 74 75 72 6E 65 64 20 62 79 20 68 65    s returned by he
00DE90:  69 72 78 78 20 09 09 2A 2F 0D 0A 0D 0A 23 64 65    irxx ..*/....#de
00DEA0:  66 69 6E 65 09 4C 4F 41 44 45 44 09 09 30 09 2F    fine.LOADED..0./
00DEB0:  2A 20 76 61 6C 75 65 20 6F 6E 20 74 6F 70 20 6F    * value on top o
00DEC0:  66 20 73 74 61 63 6B 20 2A 2F 0D 0A 23 64 65 66    f stack */..#def
00DED0:  69 6E 65 20 41 44 44 52 45 53 53 09 09 31 09 2F    ine ADDRESS..1./
00DEE0:  2A 20 61 64 64 72 65 73 73 20 6F 66 20 6C 76 61    * address of lva
00DEF0:  6C 75 65 20 6F 6E 20 73 74 61 63 6B 20 2A 2F 0D    lue on stack */.
00DF00:  2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /***************
00DF10:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00DF20:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00DF30:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00DF40:  2A 2A 2A 2A 2A 2A 2F 0D 0A 2F 2A 20 20 20 20 20    ******/../*     
00DF50:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00DF60:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00DF70:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00DF80:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 2A 2F                  */
00DF90:  0D 0A 2F 2A 20 20 20 54 68 69 73 20 43 20 63 6F    ../*   This C co
00DFA0:  6D 70 69 6C 65 72 20 69 73 20 63 6F 70 69 65 64    mpiler is copied
00DFB0:  20 66 72 6F 6D 20 44 72 2E 20 44 6F 62 62 27 73     from Dr. Dobb's
00DFC0:  20 4A 6F 75 72 6E 61 6C 20 6F 66 20 43 6F 6D 70     Journal of Comp
00DFD0:  75 74 65 72 20 20 20 2A 2F 0D 0A 2F 2A 20 20 20    uter   */../*   
00DFE0:  20 20 20 20 20 43 61 6C 69 73 74 68 65 6E 69 63         Calisthenic
00DFF0:  73 20 26 20 4F 72 74 68 6F 64 6F 6E 74 69 61 20    s & Orthodontia 
00E000:  28 69 73 73 75 65 20 6E 75 6D 62 65 72 20 34 35    (issue number 45
00E010:  29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    )               
00E020:  2A 2F 0D 0A 2F 2A 20 20 20 2D 2D 20 44 69 73 74    */../*   -- Dist
00E030:  72 69 62 75 74 69 6F 6E 20 61 6E 64 20 75 73 65    ribution and use
00E040:  20 69 73 20 75 6E 72 65 73 74 72 69 63 74 65 64     is unrestricted
00E050:  20 66 6F 72 20 6E 6F 6E 2D 63 6F 6D 6D 65 72 63     for non-commerc
00E060:  69 61 6C 20 75 73 65 2E 20 2A 2F 0D 0A 2F 2A 20    ial use. */../* 
00E070:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E080:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E090:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E0A0:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E0B0:  20 20 2A 2F 0D 0A 2F 2A 20 20 20 20 20 20 20 20      */../*        
00E0C0:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E0D0:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E0E0:  20 20 20 20 20 20 20 20 20 52 41 46 20 38 2D 38             RAF 8-8
00E0F0:  2D 38 30 20 20 20 20 20 20 20 20 2A 2F 0D 0A 2F    -80        */../
00E100:  0A 23 64 65 66 69 6E 65 20 4E 4F 54 4C 4F 41 44    .#define NOTLOAD
00E110:  45 44 09 32 09 2F 2A 20 61 64 64 72 65 73 73 20    ED.2./* address 
00E120:  69 6E 20 6C 76 61 6C 75 65 20 69 6E 20 61 72 72    in lvalue in arr
00E130:  61 79 20 6E 6F 74 20 6C 6F 61 64 65 64 20 2A 2F    ay not loaded */
00E140:  0D 0A 23 64 65 66 69 6E 65 20 43 4F 4E 53 54 41    ..#define CONSTA
00E150:  4E 54 09 33 09 2F 2A 20 63 6F 6E 73 74 61 6E 74    NT.3./* constant
00E160:  20 69 6E 20 6C 76 61 6C 20 2A 2F 0D 0A 2F 2A 20     in lval */../* 
00E170:  20 20 20 20 20 44 65 66 69 6E 65 20 74 68 65 20         Define the 
00E180:  22 77 68 69 6C 65 22 20 73 74 61 74 65 6D 65 6E    "while" statemen
00E190:  74 20 71 75 65 75 65 20 20 20 20 20 20 2A 2F 0D    t queue      */.
00E1A0:  0A 0D 0A 23 64 65 66 69 6E 65 20 77 71 74 61 62    ...#define wqtab
00E1B0:  73 7A 20 31 30 30 0D 0A 23 64 65 66 69 6E 65 20    sz 100..#define 
00E1C0:  77 71 73 69 7A 20 20 20 36 0D 0A 23 64 65 66 69    wqsiz   6..#defi
00E1D0:  6E 65 20 77 71 6D 61 78 20 20 20 77 71 2B 77 71    ne wqmax   wq+wq
00E1E0:  74 61 62 73 7A 2D 77 71 73 69 7A 0D 0A 0D 0A 2F    tabsz-wqsiz..../
00E1F0:  2A 20 20 20 20 20 20 44 65 66 69 6E 65 20 65 6E    *      Define en
00E200:  74 72 79 20 6F 66 66 73 65 74 73 20 69 6E 20 77    try offsets in w
00E210:  68 69 6C 65 20 71 75 65 75 65 20 20 20 20 20 2A    hile queue     *
00E220:  2F 0D 0A 0D 0A 23 64 65 66 69 6E 65 20 77 71 73    /....#define wqs
00E230:  79 6D 20 20 20 30 0D 0A 23 64 65 66 69 6E 65 20    ym   0..#define 
00E240:  77 71 73 70 20 20 20 20 31 0D 0A 23 64 65 66 69    wqsp    1..#defi
00E250:  6E 65 20 77 71 6C 6F 6F 70 20 20 32 0D 0A 23 64    ne wqloop  2..#d
00E260:  65 66 69 6E 65 20 77 71 6C 61 62 20 20 20 33 0D    efine wqlab   3.
00E270:  0A 23 64 65 66 69 6E 65 20 77 71 65 6E 64 09 34    .#define wqend.4
00E280:  0D 0A 23 64 65 66 69 6E 65 20 77 71 62 6F 64 79    ..#define wqbody
00E290:  09 35 0D 0A 2F 2A 20 20 20 20 20 20 44 65 66 69    .5../*      Defi
00E2A0:  6E 65 20 74 68 65 20 6C 69 74 65 72 61 6C 20 70    ne the literal p
00E2B0:  6F 6F 6C 20 20 20 20 20 20 20 20 20 20 20 20 20    ool             
00E2C0:  20 20 20 20 2A 2F 0D 0A 0D 0A 23 64 65 66 69 6E        */....#defin
00E2D0:  65 20 6C 69 74 61 62 73 7A 20 32 30 30 30 0D 0A    e litabsz 2000..
00E2E0:  23 64 65 66 69 6E 65 20 6C 69 74 6D 61 78 20 20    #define litmax  
00E2F0:  6C 69 74 61 62 73 7A 2D 31 0D 0A 0D 0A 2F 2A 20    litabsz-1..../* 
00E300:  2A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    *               
00E310:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E320:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E330:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E340:  20 20 20 20 2A 2F 0D 0A 2F 2A 2A 2A 2A 2A 2A 2A        */../*******
00E350:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00E360:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00E370:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00E380:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D    **************/.
00E390:  0A 0D 0A 2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    .../************
00E3A0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00E3B0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00E3C0:  2A 2A 2A 2A 2F 0D 0A 2F 2A 20 20 20 20 20 20 20    ****/../*       
00E3D0:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E3E0:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E3F0:  20 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 20 20 20           */../*   
00E400:  20 20 20 20 20 20 20 20 20 20 73 6D 61 6C 6C 2D              small-
00E410:  63 20 63 6F 6D 70 69 6C 65 72 20 20 20 20 20 20    c compiler      
00E420:  20 20 20 20 20 20 20 20 20 20 20 2A 2F 0D 0A 2F               */../
00E430:  2A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    *               
00E440:  20 20 72 65 76 2E 20 31 2E 31 20 20 20 20 20 20      rev. 1.1      
00E450:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2A                   *
00E460:  2F 0D 0A 2F 2A 20 20 20 20 20 20 20 20 20 20 20    /../*           
00E470:  20 20 20 20 62 79 20 52 6F 6E 20 43 61 69 6E 20        by Ron Cain 
00E480:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E490:  20 20 20 2A 2F 0D 0A 2F 2A 20 20 20 20 20 20 20       */../*       
00E4A0:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E4B0:  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                    
00E4C0:  20 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 2A 2A 2A           */../****
00E4D0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00E4E0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
00E4F0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 0D    ************/...
00E500:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
00E510:  0C 00 01 00 02 09 52 E5 0C 00 C1 02 00 00 00 02    ......R.........
00E520:  0C 00 C6 02 00 00 00 02 0C 00 C2 02 00 00 00 02    ................
00E530:  0C 00 C7 02 00 00 00 02 0C 00 C3 02 00 00 00 02    ................
00E540:  0C 00 C8 02 00 00 00 02 0C 00 C4 02 00 00 00 02    ................
00E550:  0C 00 C9 02 00 00 00 02 0C 00 C5 02 00 00 00 02    ................
00E560:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00E570:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00E580:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00E590:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00E5A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00E5B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00E5C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00E5D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00E5E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00E5F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00E600:  20 20 20 20 20 44 65 66 69 6E 65 20 74 68 65 20         Define the 
00E610:  69 6E 70 75 74 20 6C 69 6E 65 20 20 20 20 20 20    input line      
00E620:  20 20 20 20 20 20 20 20 20 20 20 20 20 2A 2F 0D                 */.
00E630:  0A 0D 0A 23 64 65 66 69 6E 65 20 6C 69 6E 65 73    ...#define lines
00E640:  69 7A 65 20 38 30 0D 0A 23 64 65 66 69 6E 65 20    ize 80..#define 
00E650:  6C 69 6E 65 6D 61 78 20 6C 69 6E 65 73 69 7A 65    linemax linesize
00E660:  2D 31 0D 0A 23 64 65 66 69 6E 65 20 6D 70 6D 61    -1..#define mpma
00E670:  78 20 20 20 6C 69 6E 65 6D 61 78 0D 0A 0D 0A 2F    x   linemax..../
00E680:  2A 20 20 20 20 20 20 44 65 66 69 6E 65 20 74 68    *      Define th
00E690:  65 20 6D 61 63 72 6F 20 28 64 65 66 69 6E 65 29    e macro (define)
00E6A0:  20 70 6F 6F 6C 20 20 20 20 20 20 20 20 20 20 2A     pool          *
00E6B0:  2F 0D 0A 0D 0A 23 64 65 66 69 6E 65 20 6D 61 63    /....#define mac
00E6C0:  71 73 69 7A 65 20 31 30 30 30 0D 0A 23 64 65 66    qsize 1000..#def
00E6D0:  69 6E 65 20 6D 61 63 6D 61 78 20 20 6D 61 63 71    ine macmax  macq
00E6E0:  73 69 7A 65 2D 31 0D 0A 0D 0A 2F 2A 20 20 20 20    size-1..../*    
00E6F0:  20 20 44 65 66 69 6E 65 20 73 74 61 74 65 6D 65      Define stateme
00E700:  6E 74 20 74 79 70 65 73 20 28 74 6F 6B 65 6E 73    nt types (tokens
00E710:  29 20 20 20 20 20 20 20 20 20 2A 2F 0D 0A 0D 0A    )         */....
00E720:  23 64 65 66 69 6E 65 20 73 74 69 66 20 20 20 20    #define stif    
00E730:  31 0D 0A 23 64 65 66 69 6E 65 20 73 74 77 68 69    1..#define stwhi
00E740:  6C 65 20 32 0D 0A 23 64 65 66 69 6E 65 20 73 74    le 2..#define st
00E750:  66 6F 72 09 33 0D 0A 23 64 65 66 69 6E 65 20 73    for.3..#define s
00E760:  74 73 77 69 74 63 68 20 34 0D 0A 23 64 65 66 69    tswitch 4..#defi
00E770:  6E 65 20 73 74 72 65 74 75 72 6E 20 35 0D 0A 23    ne streturn 5..#
00E780:  64 65 66 69 6E 65 20 73 74 62 72 65 61 6B 20 36    define stbreak 6
00E790:  0D 0A 23 64 65 66 69 6E 65 20 73 74 63 6F 6E 74    ..#define stcont
00E7A0:  20 20 37 0D 0A 23 64 65 66 69 6E 65 20 73 74 61      7..#define sta
00E7B0:  73 6D 20 20 20 38 0D 0A 23 64 65 66 69 6E 65 20    sm   8..#define 
00E7C0:  73 74 65 78 70 20 20 20 39 0D 0A 0D 0A 2F 2A 09    stexp   9..../*.
00E7D0:  6E 61 6D 65 20 6F 66 20 73 6F 6D 65 20 66 75 6E    name of some fun
00E7E0:  63 74 69 6F 6E 20 63 61 6C 6C 65 64 20 62 79 20    ction called by 
00E7F0:  63 6F 64 65 20 67 65 6E 20 73 74 65 70 20 2A 2F    code gen step */
00E800:  20 20 20 20 20 2F 2A 20 77 6F 72 6B 20 70 74 72         /* work ptr
00E810:  20 74 6F 20 61 6E 79 20 63 68 61 72 20 62 75 66     to any char buf
00E820:  66 65 72 20 2A 2F 0D 0A 69 6E 74 20 20 20 20 20    fer */..int     
00E830:  2A 69 70 74 72 3B 20 20 20 20 20 20 20 20 20 20    *iptr;          
00E840:  2F 2A 20 77 6F 72 6B 20 70 74 72 20 74 6F 20 61    /* work ptr to a
00E850:  6E 79 20 69 6E 74 20 62 75 66 66 65 72 20 2A 2F    ny int buffer */
00E860:  0D 0A 2F 2A 09 66 69 6C 65 20 69 6F 20 62 75 66    ../*.file io buf
00E870:  66 65 72 73 09 09 2A 2F 0D 0A 63 68 61 72 20 66    fers..*/..char f
00E880:  69 6E 70 5B 42 55 46 53 49 5A 5D 3B 09 09 2F 2A    inp[BUFSIZ];../*
00E890:  20 69 6E 70 75 74 20 66 69 6C 65 20 62 75 66 66     input file buff
00E8A0:  65 72 20 2A 2F 0D 0A 63 68 61 72 20 66 69 6E 70    er */..char finp
00E8B0:  32 5B 42 55 46 53 49 5A 5D 3B 09 09 2F 2A 20 69    2[BUFSIZ];../* i
00E8C0:  6E 70 75 74 20 32 20 66 69 6C 65 20 62 75 66 66    nput 2 file buff
00E8D0:  65 72 20 2A 2F 0D 0A 63 68 61 72 20 66 6F 75 74    er */..char fout
00E8E0:  5B 42 55 46 53 49 5A 5D 3B 09 09 2F 2A 20 6F 75    [BUFSIZ];../* ou
00E8F0:  70 75 74 20 66 69 6C 65 20 62 75 66 66 65 72 20    put file buffer 
00E900:  2A 2F 0D 0A 1A 6E 26 00 E5 CD 09 33 D1 21 00 01    */...n&....3.!..
00E910:  09 5E 23 56 13 72 2B 73 C3 5E 33 2A 11 9E 11 08    .^#V.r+s.^3*....
00E920:  00 CD F9 01 CD A9 01 D2 C4 33 2A 11 9E 11 02 00    .........3*.....
00E930:  CD 3F 02 11 19 00 CD FA 02 19 11 08 00 EB CD CB    .?..............
00E940:  02 C3 C7 33 21 01 00 EB 21 00 01 09 73 23 72 21    ...3!...!...s#r!
00E950:  00 01 09 5E 23 56 1B 72 2B 73 13 7A B3 CA F0 33    ...^#V.r+s.z...3
00E960:  21 E6 33 C3 E8 33 09 00 E5 CD 06 33 D1 C3 CF 33    !.3..3.....3...3
00E970:  C3 02 34 21 F9 33 C3 FD 33 09 09 09 00 E5 CD 06    ..4!.3..3.......
00E980:  ED 5B 43 6D 19 CD 04 56 CD DF 57 C3 AE 5A CD E5    .[Cm...V..W..Z..
00E990:  57 CD F3 55 CD 3C 5C 2A 39 6D 19 ED 5B 41 6D 19    W..U.<\*9m..[Am.
00E9A0:  CD 04 56 2A 73 6D C3 DD 5A CD 83 58 3F D4 AF 58    ..V*sm..Z..X?..X
00E9B0:  DC B7 58 9F E6 80 32 6D 6D C9 CD 7D 58 30 01 29    ..X...2mm..}X0.)
00E9C0:  EB C9 CD 83 58 3F D8 CD 97 58 D8 CD AF 58 D8 C3    ....X?...X...X..
00E9D0:  5A 58 7C B5 C8 E5 CD FC 5C 44 4D 11 9C 00 AF ED    ZX|.....\DM.....
00E9E0:  52 23 EB 67 6F 22 39 6D E1 D2 C6 5A 79 04 D6 0C    R#.go"9m...Zy...
00E9F0:  20 FB 78 C3 D3 5A 2A 51 6D 3A 73 6D B7 28 05 CB     .x..Z*Qm:sm.(..
00EA00:  0D 0A 0D 0A 23 64 65 66 69 6E 65 20 45 51 09 22    ....#define EQ."
00EA10:  40 63 6F 6D 70 22 09 09 0D 0A 23 64 65 66 69 6E    @comp"....#defin
00EA20:  65 09 47 45 09 22 40 63 6F 6D 70 2B 32 35 68 22    e.GE."@comp+25h"
00EA30:  09 0D 0A 23 64 65 66 69 6E 65 20 47 54 09 22 40    ...#define GT."@
00EA40:  63 6F 6D 70 2B 31 32 68 22 09 0D 0A 23 64 65 66    comp+12h"...#def
00EA50:  69 6E 65 20 4C 45 09 22 40 63 6F 6D 70 2B 32 66    ine LE."@comp+2f
00EA60:  68 22 0D 0A 23 64 65 66 69 6E 65 20 4C 54 09 22    h"..#define LT."
00EA70:  40 63 6F 6D 70 2B 31 63 68 22 0D 0A 23 64 65 66    @comp+1ch"..#def
00EA80:  69 6E 65 20 4E 45 09 22 40 63 6F 6D 70 2B 31 39    ine NE."@comp+19
00EA90:  68 22 0D 0A 0D 0A 23 64 65 66 69 6E 65 20 55 47    h"....#define UG
00EAA0:  45 09 22 40 75 63 6F 6D 70 2B 31 33 68 22 0D 0A    E."@ucomp+13h"..
00EAB0:  23 64 65 66 69 6E 65 20 55 47 54 09 22 40 75 63    #define UGT."@uc
00EAC0:  6F 6D 70 22 0D 0A 23 64 65 66 69 6E 65 09 55 4C    omp"..#define.UL
00EAD0:  45 09 22 40 75 63 6F 6D 70 2B 31 63 68 22 0D 0A    E."@ucomp+1ch"..
00EAE0:  23 64 65 66 69 6E 65 09 55 4C 54 09 22 40 75 63    #define.ULT."@uc
00EAF0:  6F 6D 70 2B 30 61 68 22 0D 0A 0D 0A 23 64 65 66    omp+0ah"....#def
00EB00:  69 6E 65 20 50 52 45 49 4E 43 09 22 40 69 6E 63    ine PREINC."@inc
00EB10:  64 65 63 22 0D 0A 23 64 65 66 69 6E 65 20 50 52    dec"..#define PR
00EB20:  45 44 45 43 09 22 40 69 6E 63 64 65 63 2B 30 38    EDEC."@incdec+08
00EB30:  68 22 0D 0A 23 64 65 66 69 6E 65 20 50 4F 53 54    h"..#define POST
00EB40:  49 4E 43 09 22 40 69 6E 63 64 65 63 2B 31 30 68    INC."@incdec+10h
00EB50:  22 0D 0A 23 64 65 66 69 6E 65 20 50 4F 53 54 44    "..#define POSTD
00EB60:  45 43 09 22 40 69 6E 64 65 63 2B 31 61 68 22 0D    EC."@indec+1ah".
00EB70:  0A 0D 0A 2F 2A 20 20 20 20 20 20 4E 6F 77 20 72    .../*      Now r
00EB80:  65 73 65 72 76 65 20 73 6F 6D 65 20 73 74 6F 72    eserve some stor
00EB90:  61 67 65 20 77 6F 72 64 73 20 20 20 20 20 20 20    age words       
00EBA0:  20 20 20 2A 2F 0D 0A 0D 0A 63 68 61 72 20 20 20       */....char   
00EBB0:  20 73 79 6D 74 61 62 5B 73 79 6D 74 62 73 7A 5D     symtab[symtbsz]
00EBC0:  3B 20 20 20 20 20 20 20 20 2F 2A 20 73 79 6D 62    ;        /* symb
00EBD0:  6F 6C 20 74 61 62 6C 65 20 2A 2F 0D 0A 63 68 61    ol table */..cha
00EBE0:  72 20 20 20 20 2A 67 6C 62 70 74 72 2C 2A 6C 6F    r    *glbptr,*lo
00EBF0:  63 70 74 72 3B 20 20 20 20 20 20 20 20 20 20 20    cptr;           
00EC00:  63 63 31 20 63 31 2E 63 20 2D 65 20 38 30 30 30    cc1 c1.c -e 8000
00EC10:  0D 0A 63 63 31 20 63 32 2E 63 20 2D 65 20 38 30    ..cc1 c2.c -e 80
00EC20:  30 30 0D 0A 63 63 31 20 63 33 2E 63 20 2D 65 20    00..cc1 c3.c -e 
00EC30:  38 30 30 30 0D 0A 63 63 31 20 63 34 2E 63 20 2D    8000..cc1 c4.c -
00EC40:  65 20 38 30 30 30 0D 0A 63 63 31 20 63 35 2E 63    e 8000..cc1 c5.c
00EC50:  20 2D 65 20 38 30 30 30 0D 0A 63 63 31 20 63 36     -e 8000..cc1 c6
00EC60:  2E 63 20 2D 65 20 38 30 30 30 0D 0A 63 63 31 20    .c -e 8000..cc1 
00EC70:  63 37 2E 63 20 2D 65 20 38 30 30 30 0D 0A 63 63    c7.c -e 8000..cc
00EC80:  31 20 63 38 2E 63 20 2D 65 20 38 30 30 30 0D 0A    1 c8.c -e 8000..
00EC90:  63 63 31 20 63 39 2E 63 20 2D 65 20 38 30 30 30    cc1 c9.c -e 8000
00ECA0:  0D 0A 63 6C 69 6E 6B 20 63 31 20 63 32 20 63 33    ..clink c1 c2 c3
00ECB0:  20 63 34 20 63 35 20 63 36 20 63 37 20 63 38 20     c4 c5 c6 c7 c8 
00ECC0:  63 39 20 63 31 20 63 32 20 63 33 20 63 34 20 63    c9 c1 c2 c3 c4 c
00ECD0:  35 20 63 36 20 63 37 20 63 38 20 63 39 20 20 2D    5 c6 c7 c8 c9  -
00ECE0:  72 20 65 30 30 20 2D 73 0D 0A 1A 20 20 2A 30 30    r e00 -s...  *00
00ECF0:  30 35 2A 63 63 31 20 63 36 2E 63 20 20 20 20 20    05*cc1 c6.c     
00ED00:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ED10:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ED20:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ED30:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ED40:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ED50:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ED60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ED70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ED80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00ED90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00EDA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00EDB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00EDC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00EDD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00EDE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00EDF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00EE00:  20 20 20 20 20 2F 2A 20 70 74 72 73 20 74 6F 20         /* ptrs to 
00EE10:  6E 65 78 74 20 65 6E 74 72 69 65 73 20 2A 2F 0D    next entries */.
00EE20:  0A 69 6E 74 20 20 20 20 20 77 71 5B 77 71 74 61    .int     wq[wqta
00EE30:  62 73 7A 5D 3B 20 20 20 20 20 20 20 20 20 20 20    bsz];           
00EE40:  20 2F 2A 20 77 68 69 6C 65 20 71 75 65 75 65 20     /* while queue 
00EE50:  2A 2F 0D 0A 69 6E 74 20 20 20 20 20 2A 77 71 70    */..int     *wqp
00EE60:  74 72 3B 20 20 20 20 20 20 20 20 20 20 20 20 20    tr;             
00EE70:  20 20 20 20 2F 2A 20 70 74 72 20 74 6F 20 6E 65        /* ptr to ne
00EE80:  78 74 20 65 6E 74 72 79 20 2A 2F 0D 0A 0D 0A 63    xt entry */....c
00EE90:  68 61 72 20 20 20 20 6C 69 74 71 5B 6C 69 74 61    har    litq[lita
00EEA0:  62 73 7A 5D 3B 20 20 20 20 20 20 20 20 20 20 2F    bsz];          /
00EEB0:  2A 20 6C 69 74 65 72 61 6C 20 70 6F 6F 6C 20 2A    * literal pool *
00EEC0:  2F 0D 0A 69 6E 74 20 20 20 20 20 6C 69 74 70 74    /..int     litpt
00EED0:  72 3B 20 20 20 20 20 20 20 20 20 20 20 20 20 20    r;              
00EEE0:  20 20 20 2F 2A 20 70 74 72 20 74 6F 20 6E 65 78       /* ptr to nex
00EEF0:  74 20 65 6E 74 72 79 20 2A 2F 0D 0A 0D 0A 63 68    t entry */....ch
00EF00:  61 72 20 20 20 20 6D 61 63 71 5B 6D 61 63 71 73    ar    macq[macqs
00EF10:  69 7A 65 5D 3B 20 20 20 20 20 20 20 20 20 2F 2A    ize];         /*
00EF20:  20 6D 61 63 72 6F 20 73 74 72 69 6E 67 20 62 75     macro string bu
00EF30:  66 66 65 72 20 2A 2F 0D 0A 69 6E 74 20 20 20 20    ffer */..int    
00EF40:  20 6D 61 63 70 74 72 3B 20 20 20 20 20 20 20 20     macptr;        
00EF50:  20 20 20 20 20 20 20 20 20 2F 2A 20 61 6E 64 20             /* and 
00EF60:  69 74 73 20 69 6E 64 65 78 20 2A 2F 0D 0A 0D 0A    its index */....
00EF70:  63 68 61 72 20 20 20 20 6C 69 6E 65 5B 6C 69 6E    char    line[lin
00EF80:  65 73 69 7A 65 5D 3B 20 20 20 20 20 20 20 20 20    esize];         
00EF90:  2F 2A 20 70 61 72 73 69 6E 67 20 62 75 66 66 65    /* parsing buffe
00EFA0:  72 20 2A 2F 0D 0A 63 68 61 72 20 20 20 20 6D 6C    r */..char    ml
00EFB0:  69 6E 65 5B 6C 69 6E 65 73 69 7A 65 5D 3B 20 20    ine[linesize];  
00EFC0:  20 20 20 20 20 20 2F 2A 20 74 65 6D 70 20 6D 61          /* temp ma
00EFD0:  63 72 6F 20 62 75 66 66 65 72 20 2A 2F 0D 0A 69    cro buffer */..i
00EFE0:  6E 74 20 20 20 20 20 6C 70 74 72 2C 6D 70 74 72    nt     lptr,mptr
00EFF0:  3B 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2F    ;              /
00F000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F0A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F0B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F0C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F0D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F0E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F0F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F1A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F1B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F1C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F1D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F1E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F1F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
00F200:  2A 20 70 74 72 73 20 69 6E 74 6F 20 65 61 63 68    * ptrs into each
00F210:  20 2A 2F 0D 0A 0D 0A 2F 2A 20 20 20 20 20 20 4D     */..../*      M
00F220:  69 73 63 20 73 74 6F 72 61 67 65 20 20 20 20 2A    isc storage    *
00F230:  2F 0D 0A 0D 0A 69 6E 74 20 20 20 20 20 6E 78 74    /....int     nxt
00F240:  6C 61 62 2C 20 20 20 20 20 20 20 20 20 2F 2A 20    lab,         /* 
00F250:  6E 65 78 74 20 61 76 61 69 6C 20 6C 61 62 65 6C    next avail label
00F260:  20 23 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 6C     # */..        l
00F270:  69 74 6C 61 62 2C 20 20 20 20 20 20 20 20 20 2F    itlab,         /
00F280:  2A 20 6C 61 62 65 6C 20 23 20 61 73 73 69 67 6E    * label # assign
00F290:  65 64 20 74 6F 20 6C 69 74 65 72 61 6C 20 70 6F    ed to literal po
00F2A0:  6F 6C 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 73    ol */..        s
00F2B0:  70 2C 20 20 20 20 20 20 20 20 20 20 20 20 20 2F    p,             /
00F2C0:  2A 20 63 6F 6D 70 69 6C 65 72 20 72 65 6C 61 74    * compiler relat
00F2D0:  69 76 65 20 73 74 6B 20 70 74 72 20 2A 2F 0D 0A    ive stk ptr */..
00F2E0:  20 20 20 20 20 20 20 20 61 72 67 73 74 6B 2C 20            argstk, 
00F2F0:  20 20 20 20 20 20 20 20 2F 2A 20 66 75 6E 63 74            /* funct
00F300:  69 6F 6E 20 61 72 67 20 73 70 20 2A 2F 0D 0A 20    ion arg sp */.. 
00F310:  20 20 20 20 20 20 20 6E 63 6D 70 2C 20 20 20 20           ncmp,    
00F320:  20 20 20 20 20 20 20 2F 2A 20 23 20 6F 70 65 6E           /* # open
00F330:  20 63 6F 6D 70 6F 75 6E 64 20 73 74 61 74 65 6D     compound statem
00F340:  65 6E 74 73 20 2A 2F 0D 0A 20 20 20 20 20 20 20    ents */..       
00F350:  20 65 72 72 63 6E 74 2C 20 20 20 20 20 20 20 20     errcnt,        
00F360:  20 2F 2A 20 23 20 65 72 72 6F 72 73 20 69 6E 20     /* # errors in 
00F370:  63 6F 6D 70 69 6C 61 74 69 6F 6E 20 2A 2F 0D 0A    compilation */..
00F380:  20 20 20 20 20 20 20 20 65 6F 66 2C 20 20 20 20            eof,    
00F390:  20 20 20 20 20 20 20 20 2F 2A 20 73 65 74 20 6E            /* set n
00F3A0:  6F 6E 2D 7A 65 72 6F 20 6F 6E 20 66 69 6E 61 6C    on-zero on final
00F3B0:  20 69 6E 70 75 74 20 65 6F 66 20 2A 2F 0D 0A 20     input eof */.. 
00F3C0:  20 20 20 20 20 20 20 69 6E 70 75 74 2C 20 20 20           input,   
00F3D0:  20 20 20 20 20 20 20 2F 2A 20 69 6F 62 20 23 20           /* iob # 
00F3E0:  66 6F 72 20 69 6E 70 75 74 20 66 69 6C 65 20 2A    for input file *
00F3F0:  2F 0D 0A 20 20 20 20 20 20 20 20 6F 75 74 70 75    /..        outpu
00F400:  2F 2A 09 3E 3E 3E 3E 3E 20 73 74 61 72 74 20 63    /*.>>>>> start c
00F410:  63 6C 20 3C 3C 3C 3C 3C 3C 09 09 2A 2F 0D 0A 2F    cl <<<<<<..*/../
00F420:  2A 09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 43 6F 6D    *.....*/../*.Com
00F430:  70 69 6C 65 72 20 62 65 67 69 6E 73 20 65 78 65    piler begins exe
00F440:  63 75 74 69 6F 6E 20 68 65 72 65 20 20 2A 2F 0D    cution here  */.
00F450:  0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 23 69 66 6E    ./*.....*/..#ifn
00F460:  64 65 66 20 54 52 55 45 09 2F 2A 73 65 65 20 69    def TRUE./*see i
00F470:  66 20 6E 65 65 64 20 74 6F 20 75 73 65 20 69 6E    f need to use in
00F480:  63 6C 75 64 65 20 66 69 6C 65 20 2A 2F 0D 0A 23    clude file */..#
00F490:  69 6E 63 6C 75 64 65 20 3C 63 2E 64 65 66 3E 0D    include <c.def>.
00F4A0:  0A 23 65 6E 64 69 66 0D 0A 6D 61 69 6E 28 29 0D    .#endif..main().
00F4B0:  0A 09 7B 0D 0A 09 67 6C 62 70 74 72 3D 73 74 61    ..{...glbptr=sta
00F4C0:  72 74 67 6C 62 3B 09 2F 2A 20 63 6C 65 61 72 20    rtglb;./* clear 
00F4D0:  67 6C 6F 62 61 6C 20 73 79 6D 62 6F 6C 73 20 2A    global symbols *
00F4E0:  2F 0D 0A 09 6C 6F 63 70 74 72 3D 73 74 61 72 74    /...locptr=start
00F4F0:  6C 6F 63 3B 09 2F 2A 20 63 6C 65 61 72 20 6C 6F    loc;./* clear lo
00F500:  63 61 6C 20 73 79 6D 62 6F 6C 73 20 2A 2F 0D 0A    cal symbols */..
00F510:  09 77 71 70 74 72 3D 77 71 3B 09 09 2F 2A 20 63    .wqptr=wq;../* c
00F520:  6C 65 61 72 20 77 68 69 6C 65 20 71 75 65 75 65    lear while queue
00F530:  20 2A 2F 0D 0A 09 6D 61 63 70 74 72 3D 09 09 09     */...macptr=...
00F540:  2F 2A 20 63 6C 65 61 72 20 74 68 65 20 6D 61 63    /* clear the mac
00F550:  72 6F 20 70 6F 6F 6C 20 2A 2F 0D 0A 09 6C 69 74    ro pool */...lit
00F560:  70 74 72 3D 09 09 09 2F 2A 20 63 6C 65 61 72 20    ptr=.../* clear 
00F570:  6C 69 74 65 72 61 6C 20 70 6F 6F 6C 20 2A 2F 0D    literal pool */.
00F580:  0A 09 6E 78 74 6C 61 62 3D 20 09 09 2F 2A 20 6E    ..nxtlab= ../* n
00F590:  65 78 74 20 6C 61 62 65 6C 20 74 6F 20 61 73 73    ext label to ass
00F5A0:  69 67 6E 20 2A 2F 0D 0A 09 73 70 20 3D 09 09 09    ign */...sp =...
00F5B0:  2F 2A 20 73 74 61 63 6B 70 74 72 20 28 72 65 6C    /* stackptr (rel
00F5C0:  61 74 69 76 65 29 20 2A 2F 0D 0A 09 65 72 72 63    ative) */...errc
00F5D0:  6E 74 3D 09 09 09 2F 2A 20 6E 6F 20 65 72 72 6F    nt=.../* no erro
00F5E0:  72 73 20 2A 2F 0D 0A 09 65 6F 66 3D 09 09 09 2F    rs */...eof=.../
00F5F0:  2A 20 6E 6F 74 20 65 6F 66 20 79 65 74 20 2A 2F    * not eof yet */
00F600:  74 2C 20 20 20 20 20 20 20 20 20 2F 2A 20 69 6F    t,         /* io
00F610:  62 20 23 20 66 6F 72 20 6F 75 74 70 75 74 20 66    b # for output f
00F620:  69 6C 65 20 28 69 66 20 61 6E 79 29 20 2A 2F 0D    ile (if any) */.
00F630:  0A 20 20 20 20 20 20 20 20 69 6E 70 75 74 32 2C    .        input2,
00F640:  20 20 20 20 20 20 20 20 20 2F 2A 20 69 6F 62 20             /* iob 
00F650:  23 20 66 6F 72 20 22 69 6E 63 6C 75 64 65 22 20    # for "include" 
00F660:  74 69 74 6C 65 20 2A 2F 0D 0A 09 6C 69 6E 65 31    title */...line1
00F670:  2C 09 09 2F 2A 20 63 75 72 72 65 6E 74 20 6C 69    ,../* current li
00F680:  6E 65 20 6E 75 6D 62 65 72 20 69 6E 20 6D 61 69    ne number in mai
00F690:  6E 20 66 69 6C 65 20 2A 2F 0D 0A 09 6C 69 6E 65    n file */...line
00F6A0:  32 2C 09 09 2F 2A 20 63 75 72 72 65 6E 74 20 6C    2,../* current l
00F6B0:  69 6E 65 20 69 6E 20 69 6E 63 6C 75 64 65 20 66    ine in include f
00F6C0:  69 6C 65 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20    ile */..        
00F6D0:  63 74 65 78 74 2C 20 20 20 20 20 20 20 20 20 20    ctext,          
00F6E0:  2F 2A 20 6E 6F 6E 2D 7A 65 72 6F 20 74 6F 20 69    /* non-zero to i
00F6F0:  6E 74 65 72 6D 69 78 20 63 2D 73 6F 75 72 63 65    ntermix c-source
00F700:  20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 63 6D 6F     */..        cmo
00F710:  64 65 2C 20 20 20 20 20 20 20 20 20 20 2F 2A 20    de,          /* 
00F720:  6E 6F 6E 2D 7A 65 72 6F 20 77 68 69 6C 65 20 70    non-zero while p
00F730:  61 72 73 69 6E 67 20 63 2D 63 6F 64 65 20 2A 2F    arsing c-code */
00F740:  0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20    ..              
00F750:  20 20 20 20 20 20 20 20 20 20 2F 2A 20 7A 65 72              /* zer
00F760:  6F 20 77 68 65 6E 20 70 61 73 73 69 6E 67 20 61    o when passing a
00F770:  73 73 65 6D 62 6C 79 20 63 6F 64 65 20 2A 2F 0D    ssembly code */.
00F780:  0A 09 63 69 66 2C 09 09 2F 2A 20 73 74 61 74 65    ..cif,../* state
00F790:  20 6F 66 20 70 72 65 70 72 6F 63 65 73 73 20 69     of preprocess i
00F7A0:  66 20 73 74 61 74 65 6D 65 6E 74 20 2A 2F 0D 0A    f statement */..
00F7B0:  20 20 20 20 20 20 20 20 6C 61 73 74 73 74 3B 20            lastst; 
00F7C0:  20 20 20 20 20 20 20 20 2F 2A 20 6C 61 73 74 20            /* last 
00F7D0:  65 78 65 63 75 74 65 64 20 73 74 61 74 6D 65 6E    executed statmen
00F7E0:  74 20 74 79 70 65 20 2A 2F 0D 0A 0D 0A 63 68 61    t type */....cha
00F7F0:  72 20 20 20 20 2A 63 70 74 72 3B 20 20 20 20 20    r    *cptr;     
00F800:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
00F810:  0D 00 01 00 02 09 52 E5 0D 00 C1 02 00 00 00 02    ......R.........
00F820:  0D 00 C6 02 00 00 00 02 0D 00 C2 02 00 00 00 02    ................
00F830:  0D 00 C7 02 00 00 00 02 0D 00 C3 02 00 00 00 02    ................
00F840:  0D 00 C8 02 00 00 00 02 0D 00 C4 02 00 00 00 02    ................
00F850:  0D 00 C9 02 00 00 00 02 0D 00 C5 02 00 00 00 02    ................
00F860:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00F870:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00F880:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00F890:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00F8A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00F8B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00F8C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00F8D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00F8E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00F8F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
00F900:  0D 0A 09 69 6E 70 75 74 3D 09 09 09 2F 2A 20 6E    ...input=.../* n
00F910:  6F 20 69 6E 70 75 74 20 66 69 6C 65 20 2A 2F 0D    o input file */.
00F920:  0A 09 69 6E 70 75 74 32 3D 09 09 09 2F 2A 20 6F    ..input2=.../* o
00F930:  72 20 69 6E 63 6C 75 64 65 20 66 69 6C 65 20 2A    r include file *
00F940:  2F 0D 0A 09 6F 75 74 70 75 74 3D 09 09 09 2F 2A    /...output=.../*
00F950:  20 6E 6F 20 6F 70 65 6E 20 75 6E 69 74 73 20 2A     no open units *
00F960:  2F 0D 0A 09 6E 63 6D 70 3D 09 09 09 2F 2A 20 6E    /...ncmp=.../* n
00F970:  6F 20 6F 70 65 6E 20 63 6F 6D 70 6F 75 6E 64 20    o open compound 
00F980:  73 74 61 74 65 73 20 2A 2F 0D 0A 09 63 74 65 78    states */...ctex
00F990:  74 3D 09 09 09 2F 2A 20 64 6F 20 6E 6F 74 20 70    t=.../* do not p
00F9A0:  72 69 6E 74 20 74 65 78 74 20 2A 2F 0D 0A 09 6C    rint text */...l
00F9B0:  61 73 74 73 74 3D 30 3B 09 09 2F 2A 20 6E 6F 20    astst=0;../* no 
00F9C0:  6C 61 73 74 20 73 74 61 74 65 6D 65 6E 74 20 79    last statement y
00F9D0:  65 74 20 2A 2F 0D 0A 09 63 69 66 3D 09 09 09 2F    et */...cif=.../
00F9E0:  2A 20 73 74 61 74 65 20 6F 66 20 23 69 66 78 78    * state of #ifxx
00F9F0:  78 78 20 2A 2F 0D 0A 09 63 6D 6F 64 65 3D 31 3B    xx */...cmode=1;
00FA00:  09 09 2F 2A 20 65 6E 61 62 6C 65 20 70 72 65 70    ../* enable prep
00FA10:  72 6F 63 65 73 73 69 6E 67 20 2A 2F 0D 0A 09 6C    rocessing */...l
00FA20:  69 74 6C 61 62 3D 67 65 74 6C 61 62 65 6C 28 29    itlab=getlabel()
00FA30:  3B 09 2F 2A 20 6C 61 62 65 6C 20 6E 75 6D 62 65    ;./* label numbe
00FA40:  72 20 66 6F 72 20 6C 69 74 65 72 61 6C 20 70 6F    r for literal po
00FA50:  6C 6C 20 2A 2F 0D 0A 09 2F 2A 09 09 09 09 2A 2F    ll */.../*....*/
00FA60:  0D 0A 09 2F 2A 09 63 6F 6D 70 69 6C 65 72 20 62    .../*.compiler b
00FA70:  6F 64 79 09 09 2A 2F 0D 0A 09 2F 2A 09 09 09 09    ody..*/.../*....
00FA80:  2A 2F 0D 0A 09 61 73 6B 28 29 3B 09 09 09 2F 2A    */...ask();.../*
00FA90:  20 67 65 74 20 75 73 65 72 20 6F 70 74 69 6F 6E     get user option
00FAA0:  73 20 2A 2F 0D 0A 09 6F 70 65 6E 6F 75 74 28 29    s */...openout()
00FAB0:  3B 09 09 2F 2A 20 67 65 74 20 61 6E 20 6F 75 74    ;../* get an out
00FAC0:  70 75 74 20 66 69 6C 65 20 2A 2F 0D 0A 09 6F 70    put file */...op
00FAD0:  65 6E 69 6E 28 29 3B 09 09 2F 2A 20 61 6E 64 20    enin();../* and 
00FAE0:  69 6E 69 74 69 61 6C 20 69 6E 70 75 74 20 66 69    initial input fi
00FAF0:  6C 65 20 2A 2F 0D 0A 09 68 65 61 64 65 72 28 29    le */...header()
00FB00:  70 74 72 3D 63 70 74 72 2B 73 79 6D 73 69 7A 3B    ptr=cptr+symsiz;
00FB10:  0D 0A 09 09 7D 0D 0A 09 7D 0D 0A 2F 2A 09 09 09    ....}...}../*...
00FB20:  09 09 2A 2F 0D 0A 2F 2A 09 64 75 6D 70 20 65 78    ..*/../*.dump ex
00FB30:  74 72 6E 20 66 75 6E 63 74 69 6F 6E 09 09 2A 2F    trn function..*/
00FB40:  0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 64 75 6D    ../*.....*/..dum
00FB50:  70 65 78 74 72 6E 28 29 0D 0A 7B 0D 0A 09 63 68    pextrn()..{...ch
00FB60:  61 72 20 2A 70 74 72 3B 0D 0A 0D 0A 09 70 74 72    ar *ptr;.....ptr
00FB70:  3D 73 74 61 72 74 67 6C 62 3B 0D 0A 09 77 68 69    =startglb;...whi
00FB80:  6C 65 28 70 74 72 21 3D 67 6C 62 70 74 72 29 20    le(ptr!=glbptr) 
00FB90:  7B 0D 0A 09 09 69 66 20 28 21 70 74 72 5B 6F 66    {....if (!ptr[of
00FBA0:  66 73 65 74 5D 29 20 65 78 74 72 6E 28 70 74 72    fset]) extrn(ptr
00FBB0:  29 3B 0D 0A 09 09 70 74 72 3D 70 74 72 2B 73 79    );....ptr=ptr+sy
00FBC0:  6D 73 69 7A 3B 0D 0A 09 09 7D 0D 0A 09 7D 0D 0A    msiz;....}...}..
00FBD0:  2F 2A 09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 52 65    /*.....*/../*.Re
00FBE0:  70 6F 72 74 20 65 72 72 6F 72 73 20 66 6F 72 20    port errors for 
00FBF0:  75 73 65 72 09 09 2A 2F 0D 0A 2F 2A 09 09 09 09    user..*/../*....
00FC00:  09 2A 2F 0D 0A 65 72 72 6F 72 73 75 6D 6D 61 72    .*/..errorsummar
00FC10:  79 28 29 0D 0A 7B 0D 0A 09 2F 2A 20 73 65 65 20    y()..{.../* see 
00FC20:  69 66 20 61 6E 79 74 68 69 6E 67 20 6C 65 66 74    if anything left
00FC30:  20 68 61 6E 67 69 6E 67 2E 2E 2E 20 2A 2F 0D 0A     hanging... */..
00FC40:  09 69 66 20 28 6E 63 6D 70 29 20 65 72 72 6F 72    .if (ncmp) error
00FC50:  28 22 6D 69 73 73 69 6E 67 20 63 6C 6F 73 69 6E    ("missing closin
00FC60:  67 20 62 72 61 63 6B 65 74 22 29 3B 0D 0A 09 09    g bracket");....
00FC70:  2F 2A 20 6F 70 65 6E 20 63 6F 6D 70 75 6E 64 20    /* open compund 
00FC80:  73 74 61 74 6D 65 6E 74 20 2E 2E 2E 20 2A 2F 0D    statment ... */.
00FC90:  0A 09 69 66 20 28 21 63 69 66 29 20 65 72 72 6F    ..if (!cif) erro
00FCA0:  72 28 22 6D 69 73 73 69 6E 67 20 63 6C 6F 73 69    r("missing closi
00FCB0:  6E 67 20 23 65 6E 64 69 66 22 29 3B 0D 0A 09 6E    ng #endif");...n
00FCC0:  6C 28 29 3B 0D 0A 09 63 6F 6D 6D 65 6E 74 28 29    l();...comment()
00FCD0:  3B 0D 0A 09 6F 75 74 64 65 63 28 65 72 72 63 6E    ;...outdec(errcn
00FCE0:  74 29 3B 20 2F 2A 20 74 6F 74 61 6C 20 23 20 65    t); /* total # e
00FCF0:  72 72 6F 72 73 20 2A 2F 0D 0A 09 6F 75 74 73 74    rrors */...outst
00FD00:  3B 09 09 2F 2A 20 69 6E 74 72 6F 20 63 6F 64 65    ;../* intro code
00FD10:  20 2A 2F 0D 0A 09 70 61 72 73 65 28 29 3B 09 09     */...parse();..
00FD20:  2F 2A 20 70 72 6F 63 65 73 73 20 41 4C 4C 20 69    /* process ALL i
00FD30:  6E 70 75 74 20 2A 2F 0D 0A 09 64 75 6D 70 6C 69    nput */...dumpli
00FD40:  74 73 28 29 3B 09 09 2F 2A 20 74 68 65 6E 20 64    ts();../* then d
00FD50:  75 6D 70 20 6C 69 74 65 72 61 6C 20 70 6F 6F 6C    ump literal pool
00FD60:  20 2A 2F 0D 0A 09 64 75 6D 70 67 6C 62 73 28 29     */...dumpglbs()
00FD70:  3B 09 09 2F 2A 20 61 6E 64 20 61 6C 6C 20 73 74    ;../* and all st
00FD80:  61 74 69 63 20 6D 65 6D 6F 72 79 20 2A 2F 0D 0A    atic memory */..
00FD90:  09 64 75 6D 70 65 78 74 72 6E 28 29 3B 09 09 2F    .dumpextrn();../
00FDA0:  2A 20 6D 61 6B 65 20 61 6C 6C 20 66 75 6E 63 74    * make all funct
00FDB0:  69 6F 6E 20 64 65 66 69 6E 65 64 20 65 78 74 72    ion defined extr
00FDC0:  6E 20 2A 2F 0D 0A 09 65 72 72 6F 72 73 75 6D 6D    n */...errorsumm
00FDD0:  61 72 79 28 29 3B 09 09 2F 2A 20 73 75 6D 6D 61    ary();../* summa
00FDE0:  72 69 7A 65 20 65 72 72 6F 72 73 20 2A 2F 0D 0A    rize errors */..
00FDF0:  09 74 72 61 69 6C 65 72 28 29 3B 09 09 2F 2A 20    .trailer();../* 
00FE00:  66 6F 6C 6C 6F 77 2D 75 70 20 63 6F 64 65 20 2A    follow-up code *
00FE10:  2F 0D 0A 09 63 6C 6F 73 65 6F 75 74 28 29 3B 09    /...closeout();.
00FE20:  09 2F 2A 20 63 6C 6F 73 65 20 74 68 65 20 6F 75    ./* close the ou
00FE30:  74 70 75 74 20 2A 2F 0D 0A 09 69 66 20 28 65 72    tput */...if (er
00FE40:  72 63 6E 74 29 20 75 6E 6C 69 6E 6B 28 22 61 3A    rcnt) unlink("a:
00FE50:  24 24 24 2E 73 75 62 22 29 3B 20 2F 2A 20 69 66    $$$.sub"); /* if
00FE60:  20 65 72 72 6F 72 73 20 65 72 61 73 65 20 73 75     errors erase su
00FE70:  62 6D 69 74 20 66 69 6C 65 20 2A 2F 0D 0A 09 72    bmit file */...r
00FE80:  65 74 75 72 6E 3B 09 09 09 2F 2A 20 74 68 65 6E    eturn;.../* then
00FE90:  20 65 78 69 74 20 74 6F 20 73 79 73 74 65 6D 20     exit to system 
00FEA0:  2A 2F 0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09 09 2A    */...}../*.....*
00FEB0:  2F 0D 0A 2F 2A 09 50 72 6F 63 65 73 73 20 61 6C    /../*.Process al
00FEC0:  6C 20 69 6E 70 75 74 20 74 65 78 74 09 09 2A 2F    l input text..*/
00FED0:  0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 2F 2A 20    ../*.....*/../* 
00FEE0:  41 74 20 74 68 69 73 20 6C 65 76 65 6C 2C 20 6F    At this level, o
00FEF0:  6E 6C 79 20 73 74 61 74 69 63 20 64 65 63 6C 61    nly static decla
00FF00:  72 28 22 20 65 72 72 6F 72 73 20 69 6E 20 63 6F    r(" errors in co
00FF10:  6D 70 69 6C 61 74 69 6F 6E 2E 22 29 3B 0D 0A 09    mpilation.");...
00FF20:  6E 6C 28 29 3B 0D 0A 09 7D 0D 0A 2F 2A 09 09 09    nl();...}../*...
00FF30:  09 09 2A 2F 0D 0A 2F 2A 09 47 65 74 20 6F 70 74    ..*/../*.Get opt
00FF40:  69 6F 6E 73 20 66 72 6F 6D 20 75 73 65 72 09 09    ions from user..
00FF50:  2A 2F 0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 61    */../*.....*/..a
00FF60:  73 6B 28 29 0D 0A 7B 0D 0A 09 69 6E 74 20 6B 3B    sk()..{...int k;
00FF70:  0D 0A 09 6B 69 6C 6C 28 29 3B 09 20 2F 2A 20 63    ...kill();. /* c
00FF80:  6C 65 61 72 20 69 6E 70 75 74 20 6C 69 6E 65 20    lear input line 
00FF90:  2A 2F 0D 0A 09 70 6C 28 22 20 20 2A 20 2A 20 2A    */...pl("  * * *
00FFA0:  20 20 73 6D 61 6C 6C 2D 63 20 20 76 65 72 73 69      small-c  versi
00FFB0:  6F 6E 20 31 2E 31 20 63 6F 6D 70 69 6C 65 72 20    on 1.1 compiler 
00FFC0:  20 2A 20 2A 20 2A 5C 6E 22 29 3B 0D 0A 09 2F 2A     * * *\n");.../*
00FFD0:  20 73 65 65 20 69 66 20 75 73 65 72 20 77 61 6E     see if user wan
00FFE0:  74 73 20 74 6F 20 69 6E 74 65 72 6C 65 61 73 76    ts to interleasv
00FFF0:  65 20 74 68 65 20 63 2D 74 65 78 74 09 2A 2F 0D    e the c-text.*/.
010000:  0A 09 2F 2A 20 20 20 20 20 20 69 6E 66 6F 72 6D    ../*      inform
010010:  20 6F 66 20 63 6F 6D 6D 65 6E 74 73 20 28 66 6F     of comments (fo
010020:  72 20 63 6C 61 72 69 74 79 29 20 09 2A 2F 0D 0A    r clarity) .*/..
010030:  09 70 6C 28 22 44 6F 20 79 6F 75 20 77 69 73 68    .pl("Do you wish
010040:  20 74 6F 20 63 2D 74 65 78 74 20 74 6F 20 61 70     to c-text to ap
010050:  70 65 61 72 3F 20 22 29 3B 0D 0A 09 67 65 74 73    pear? ");...gets
010060:  28 6C 69 6E 65 29 3B 09 09 09 2F 2A 20 67 65 74    (line);.../* get
010070:  20 61 6E 73 77 65 72 20 2A 2F 0D 0A 09 69 66 28     answer */...if(
010080:  74 6F 75 70 70 65 72 28 63 68 28 29 29 3D 3D 27    toupper(ch())=='
010090:  59 27 29 20 63 74 65 78 74 3D 31 3B 09 2F 2A 20    Y') ctext=1;./* 
0100A0:  75 73 65 72 20 73 61 69 64 20 79 65 73 20 2A 2F    user said yes */
0100B0:  0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D    ...}../*.....*/.
0100C0:  0A 2F 2A 09 47 65 74 20 6F 75 74 70 75 74 20 66    ./*.Get output f
0100D0:  69 6C 65 6E 61 6D 65 09 09 2A 2F 0D 0A 2F 2A 09    ilename..*/../*.
0100E0:  09 09 09 09 2A 2F 0D 0A 6F 70 65 6E 6F 75 74 28    ....*/..openout(
0100F0:  29 0D 0A 7B 0D 0A 09 6B 69 6C 6C 28 29 3B 09 20    )..{...kill();. 
010100:  72 61 74 69 6F 6E 73 2C 09 2A 2F 0D 0A 2F 2A 09    rations,.*/../*.
010110:  64 65 66 69 6E 65 73 2C 20 69 6E 63 6C 75 64 65    defines, include
010120:  73 2C 20 61 6E 64 20 66 75 6E 63 74 69 6F 6E 09    s, and function.
010130:  09 2A 2F 0D 0A 2F 2A 09 64 65 66 69 6E 69 74 69    .*/../*.definiti
010140:  6F 6E 73 20 61 72 65 20 6C 65 67 61 6C 2E 2E 2E    ons are legal...
010150:  09 09 2A 2F 0D 0A 70 61 72 73 65 28 29 0D 0A 7B    ..*/..parse()..{
010160:  0D 0A 09 77 68 69 6C 65 20 28 21 65 6F 66 29 20    ...while (!eof) 
010170:  7B 09 2F 2A 20 64 6F 20 75 6E 74 69 6C 20 6E 6F    {./* do until no
010180:  20 6D 6F 72 65 20 69 6E 70 75 74 20 2A 2F 0D 0A     more input */..
010190:  09 09 69 66 28 61 6D 61 74 63 68 28 22 63 68 61    ..if(amatch("cha
0101A0:  72 22 2C 34 29 29 20 7B 0D 0A 09 09 09 64 65 63    r",4)) {.....dec
0101B0:  6C 67 6C 62 28 63 63 68 61 72 29 3B 0D 0A 09 09    lglb(cchar);....
0101C0:  09 6E 73 28 29 3B 0D 0A 09 09 09 7D 0D 0A 09 09    .ns();.....}....
0101D0:  65 6C 73 65 20 69 66 28 61 6D 61 74 63 68 28 22    else if(amatch("
0101E0:  69 6E 74 22 2C 33 29 29 20 7B 0D 0A 09 09 09 64    int",3)) {.....d
0101F0:  65 63 6C 67 6C 62 28 63 69 6E 74 29 3B 0D 0A 09    eclglb(cint);...
010200:  09 09 6E 73 28 29 3B 0D 0A 09 09 09 7D 0D 0A 09    ..ns();.....}...
010210:  09 65 6C 73 65 20 69 66 28 6D 61 74 63 68 28 22    .else if(match("
010220:  23 61 73 6D 22 29 29 20 64 6F 61 73 6D 28 29 3B    #asm")) doasm();
010230:  0D 0A 09 09 65 6C 73 65 20 69 66 28 6D 61 74 63    ....else if(matc
010240:  68 28 22 23 69 6E 63 6C 75 64 65 22 29 29 20 64    h("#include")) d
010250:  6F 69 6E 63 6C 75 64 65 28 29 3B 0D 0A 09 09 65    oinclude();....e
010260:  6C 73 65 20 69 66 28 6D 61 74 63 68 28 22 23 64    lse if(match("#d
010270:  65 66 69 6E 65 22 29 29 20 61 64 64 6D 61 63 28    efine")) addmac(
010280:  29 3B 20 0D 0A 09 09 65 6C 73 65 20 69 66 28 6D    ); ....else if(m
010290:  61 74 63 68 28 22 23 69 66 6E 64 65 66 22 29 29    atch("#ifndef"))
0102A0:  20 64 6F 69 66 6E 64 65 66 28 29 3B 0D 0A 09 09     doifndef();....
0102B0:  65 6C 73 65 20 69 66 28 6D 61 74 63 68 28 22 23    else if(match("#
0102C0:  69 66 64 65 66 22 29 29 20 64 6F 69 66 64 65 66    ifdef")) doifdef
0102D0:  28 29 3B 20 0D 0A 09 09 65 6C 73 65 20 6E 65 77    (); ....else new
0102E0:  66 75 6E 63 28 29 3B 0D 0A 09 09 62 6C 61 6E 6B    func();....blank
0102F0:  73 28 29 3B 09 2F 2A 20 66 6F 72 63 65 20 65 6F    s();./* force eo
010300:  2F 2A 20 65 72 61 73 65 20 6C 69 6E 65 20 2A 2F    /* erase line */
010310:  0D 0A 09 6F 75 74 70 75 74 3D 30 3B 09 20 20 20    ...output=0;.   
010320:  20 20 20 20 2F 2A 20 73 74 61 72 74 20 77 69 74        /* start wit
010330:  68 20 6E 6F 6E 65 20 2A 2F 0D 0A 09 70 6C 28 22    h none */...pl("
010340:  4F 75 74 70 75 74 20 66 69 6C 65 6E 61 6D 65 3F    Output filename?
010350:  20 22 29 3B 20 2F 2A 20 61 73 6B 2E 2E 2E 2A 2F     "); /* ask...*/
010360:  0D 0A 09 67 65 74 73 28 6C 69 6E 65 29 3B 20 20    ...gets(line);  
010370:  20 20 20 2F 2A 20 67 65 74 20 61 20 66 69 6C 65       /* get a file
010380:  6E 61 6D 65 20 2A 2F 0D 0A 09 69 66 28 63 68 28    name */...if(ch(
010390:  29 3D 3D 30 29 72 65 74 75 72 6E 3B 20 20 20 20    )==0)return;    
0103A0:  20 20 2F 2A 20 6E 6F 6E 65 20 67 69 76 65 6E 2E      /* none given.
0103B0:  2E 2E 20 2A 2F 0D 0A 09 69 66 20 28 28 6F 75 74    .. */...if ((out
0103C0:  70 75 74 3D 66 63 72 65 61 74 28 6C 69 6E 65 2C    put=fcreat(line,
0103D0:  66 6F 75 74 29 29 20 3D 3D 20 45 52 52 4F 52 29    fout)) == ERROR)
0103E0:  20 7B 20 20 0D 0A 09 09 6F 75 74 70 75 74 3D 30     {  ....output=0
0103F0:  3B 20 20 20 20 20 20 2F 2A 20 63 61 6E 27 74 20    ;      /* can't 
010400:  6F 70 65 6E 20 2A 2F 0D 0A 09 09 65 72 72 6F 72    open */....error
010410:  28 22 4F 70 65 6E 20 66 61 69 6C 75 72 65 22 29    ("Open failure")
010420:  3B 0D 0A 09 09 7D 0D 0A 09 6B 69 6C 6C 28 29 3B    ;....}...kill();
010430:  09 09 20 2F 2A 20 65 72 61 73 65 20 6C 69 6E 65    .. /* erase line
010440:  20 2A 2F 0D 0A 7D 0D 0A 2F 2A 09 09 09 09 09 2A     */..}../*.....*
010450:  2F 0D 0A 2F 2A 09 47 65 74 20 28 6E 65 78 74 29    /../*.Get (next)
010460:  20 69 6E 70 75 74 20 66 69 6C 65 09 09 2A 2F 0D     input file..*/.
010470:  0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 6F 70 65 6E    ./*.....*/..open
010480:  69 6E 28 29 0D 0A 7B 0D 0A 09 69 6E 70 75 74 3D    in()..{...input=
010490:  30 3B 09 09 2F 2A 20 6E 6F 6E 65 20 74 6F 20 73    0;../* none to s
0104A0:  74 61 72 74 20 77 69 74 68 20 2A 2F 0D 0A 09 77    tart with */...w
0104B0:  68 69 6C 65 20 28 21 69 6E 70 75 74 29 09 09 2F    hile (!input)../
0104C0:  2A 20 61 6E 79 20 61 62 6F 76 65 20 31 20 61 6C    * any above 1 al
0104D0:  6C 6F 77 65 64 20 2A 2F 0D 0A 09 09 7B 6B 69 6C    lowed */....{kil
0104E0:  6C 28 29 3B 09 2F 2A 20 63 6C 65 61 72 20 6C 69    l();./* clear li
0104F0:  6E 65 20 2A 2F 0D 0A 09 09 69 66 28 65 6F 66 29    ne */....if(eof)
010500:  66 20 69 66 20 70 65 6E 64 69 6E 67 20 2A 2F 0D    f if pending */.
010510:  0A 09 09 7D 0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09    ...}...}../*....
010520:  09 2A 2F 0D 0A 2F 2A 09 44 75 6D 70 20 74 68 65    .*/../*.Dump the
010530:  20 6C 69 74 65 72 61 6C 20 70 6F 6F 6C 09 09 2A     literal pool..*
010540:  2F 0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 64 75    /../*.....*/..du
010550:  6D 70 6C 69 74 73 28 29 0D 0A 7B 0D 0A 09 69 6E    mplits()..{...in
010560:  74 20 6A 2C 6B 3B 0D 0A 0D 0A 09 69 66 20 28 6C    t j,k;.....if (l
010570:  69 74 70 74 72 3D 3D 30 29 20 72 65 74 75 72 6E    itptr==0) return
010580:  3B 20 20 2F 2A 20 69 66 20 6E 6F 74 68 69 6E 67    ;  /* if nothing
010590:  20 74 68 65 72 65 2C 20 65 78 69 74 2E 2E 2E 2A     there, exit...*
0105A0:  2F 0D 0A 09 70 72 69 6E 74 6C 61 62 65 6C 28 6C    /...printlabel(l
0105B0:  69 74 6C 61 62 29 3B 0D 0A 09 63 6F 6C 28 29 3B    itlab);...col();
0105C0:  09 09 09 2F 2A 20 70 72 69 6E 74 20 6C 69 74 65    .../* print lite
0105D0:  72 61 6C 20 6C 61 62 65 6C 20 2A 2F 0D 0A 09 6B    ral label */...k
0105E0:  3D 30 3B 09 09 09 20 2F 2A 20 69 6E 69 74 20 61    =0;... /* init a
0105F0:  6E 20 69 6E 64 65 78 2E 2E 2E 20 2A 2F 0D 0A 09    n index... */...
010600:  77 68 69 6C 65 20 28 6B 3C 6C 69 74 70 74 72 29    while (k<litptr)
010610:  20 7B 09 20 2F 2A 20 20 20 20 20 20 74 6F 20 6C     {. /*      to l
010620:  6F 6F 70 20 77 69 74 68 20 2A 2F 0D 0A 09 09 64    oop with */....d
010630:  65 66 62 79 74 65 28 29 3B 09 20 2F 2A 20 70 73    efbyte();. /* ps
010640:  65 75 64 6F 2D 6F 70 20 74 6F 20 64 65 66 69 6E    eudo-op to defin
010650:  65 20 62 79 74 65 20 2A 2F 0D 0A 09 09 6A 3D 31    e byte */....j=1
010660:  30 3B 09 20 20 20 2F 2A 20 6D 61 78 20 62 79 74    0;.   /* max byt
010670:  65 73 20 70 65 72 20 6C 69 6E 65 20 2A 2F 0D 0A    es per line */..
010680:  09 09 77 68 69 6C 65 28 6A 2D 2D 29 20 7B 0D 0A    ..while(j--) {..
010690:  09 09 09 6F 75 74 64 65 63 28 6C 69 74 71 5B 6B    ...outdec(litq[k
0106A0:  2B 2B 5D 29 3B 0D 0A 09 09 09 69 66 20 28 6A 3D    ++]);.....if (j=
0106B0:  3D 30 20 7C 7C 20 6B 3E 3D 6C 69 74 70 74 72 29    =0 || k>=litptr)
0106C0:  20 7B 0D 0A 09 09 09 09 6E 6C 28 29 3B 09 20 20     {......nl();.  
0106D0:  2F 2A 20 6E 65 65 64 20 3C 63 72 3E 20 2A 2F 0D    /* need <cr> */.
0106E0:  0A 09 09 09 09 62 72 65 61 6B 3B 0D 0A 09 09 09    .....break;.....
0106F0:  09 7D 0D 0A 09 09 09 6F 75 74 62 79 74 65 28 27    .}.....outbyte('
010700:  62 72 65 61 6B 3B 09 2F 2A 20 69 66 20 75 73 65    break;./* if use
010710:  72 20 73 61 69 64 20 6E 6F 6E 65 20 2A 2F 0D 0A    r said none */..
010720:  09 09 70 6C 28 22 49 6E 70 75 74 20 66 69 6C 65    ..pl("Input file
010730:  6E 61 6D 65 3F 20 22 29 3B 0D 0A 09 09 67 65 74    name? ");....get
010740:  73 28 6C 69 6E 65 29 3B 09 2F 2A 20 67 65 74 20    s(line);./* get 
010750:  61 20 6E 61 6D 65 20 2A 2F 0D 0A 09 09 69 66 28    a name */....if(
010760:  63 68 28 29 3D 3D 30 29 20 7B 0D 0A 09 09 09 65    ch()==0) {.....e
010770:  6F 66 3D 31 3B 0D 0A 09 09 09 62 72 65 61 6B 3B    of=1;.....break;
010780:  09 2F 2A 20 6E 6F 6E 65 20 67 69 76 65 6E 2E 2E    ./* none given..
010790:  2E 20 2A 2F 0D 0A 09 09 09 7D 0D 0A 09 09 6C 69    . */.....}....li
0107A0:  6E 65 31 3D 30 3B 0D 0A 09 09 69 66 20 28 28 69    ne1=0;....if ((i
0107B0:  6E 70 75 74 3D 66 6F 70 65 6E 28 6C 69 6E 65 2C    nput=fopen(line,
0107C0:  66 69 6E 70 29 29 20 3D 3D 20 45 52 52 4F 52 29    finp)) == ERROR)
0107D0:  20 7B 0D 0A 09 09 09 69 6E 70 75 74 3D 30 3B 09     {.....input=0;.
0107E0:  2F 2A 20 63 61 6E 27 74 20 6F 70 65 6E 20 69 74    /* can't open it
0107F0:  20 2A 2F 0D 0A 09 09 09 70 6C 28 22 4F 70 65 6E     */.....pl("Open
010800:  20 66 61 69 6C 75 72 65 22 29 3B 0D 0A 09 09 09     failure");.....
010810:  7D 0D 0A 09 09 7D 0D 0A 09 6B 69 6C 6C 28 29 3B    }....}...kill();
010820:  09 20 2F 2A 20 65 72 61 73 65 20 6C 69 6E 65 20    . /* erase line 
010830:  2A 2F 0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09 09 2A    */...}../*.....*
010840:  2F 0D 0A 2F 2A 09 4F 70 65 6E 20 61 6E 20 69 6E    /../*.Open an in
010850:  63 6C 75 64 65 20 66 69 6C 65 09 09 2A 2F 0D 0A    clude file..*/..
010860:  2F 2A 09 09 09 09 09 2A 2F 0D 0A 64 6F 69 6E 63    /*.....*/..doinc
010870:  6C 75 64 65 28 29 0D 0A 7B 0D 0A 09 63 68 61 72    lude()..{...char
010880:  20 66 6E 61 6D 65 5B 33 31 5D 3B 09 2F 2A 20 70     fname[31];./* p
010890:  6C 61 63 65 20 74 6F 20 6F 70 65 6E 20 66 69 6C    lace to open fil
0108A0:  65 20 6E 61 6D 65 20 2A 2F 0D 0A 09 63 68 61 72    e name */...char
0108B0:  20 66 65 6E 64 3B 09 2F 2A 20 65 6E 64 69 6E 67     fend;./* ending
0108C0:  20 63 68 61 72 61 63 74 65 72 20 66 6F 72 20 66     character for f
0108D0:  69 6C 65 20 6E 61 6D 65 20 2A 2F 0D 0A 09 69 6E    ile name */...in
0108E0:  74 20 20 6C 65 6E 67 68 74 3B 09 2F 2A 20 73 69    t  lenght;./* si
0108F0:  7A 65 20 6F 66 20 66 69 6C 65 20 6E 61 6D 65 20    ze of file name 
010900:  2C 27 29 3B 20 20 20 2F 2A 20 73 65 70 61 72 61    ,');   /* separa
010910:  74 65 20 62 79 74 65 73 20 2A 2F 0D 0A 09 09 09    te bytes */.....
010920:  7D 0D 0A 09 09 7D 0D 0A 09 6C 69 74 70 74 72 3D    }....}...litptr=
010930:  30 3B 0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09 09 2A    0;...}../*.....*
010940:  2F 0D 0A 2F 2A 09 44 75 6D 70 20 61 6C 6C 20 73    /../*.Dump all s
010950:  74 61 74 69 63 20 76 61 72 69 61 62 6C 65 73 09    tatic variables.
010960:  2A 2F 0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 64    */../*.....*/..d
010970:  75 6D 70 67 6C 62 73 28 29 0D 0A 7B 0D 0A 09 69    umpglbs()..{...i
010980:  6E 74 20 6A 3B 0D 0A 09 64 73 65 63 74 28 22 40    nt j;...dsect("@
010990:  67 6C 6F 62 61 6C 73 22 29 3B 0D 0A 09 63 70 74    globals");...cpt
0109A0:  72 3D 73 74 61 72 74 67 6C 62 3B 0D 0A 09 77 68    r=startglb;...wh
0109B0:  69 6C 65 28 63 70 74 72 3C 67 6C 62 70 74 72 29    ile(cptr<glbptr)
0109C0:  20 7B 0D 0A 09 09 69 66 20 28 63 70 74 72 5B 69     {....if (cptr[i
0109D0:  64 65 6E 74 5D 20 21 3D 20 66 75 6E 63 74 69 6F    dent] != functio
0109E0:  6E 29 20 7B 0D 0A 09 09 09 2F 2A 20 64 6F 20 69    n) {...../* do i
0109F0:  66 20 61 6E 79 74 68 69 6E 67 20 62 75 74 20 66    f anything but f
010A00:  75 6E 63 74 69 6F 6E 20 2A 2F 0D 0A 09 09 09 6F    unction */.....o
010A10:  75 74 73 74 72 28 63 70 74 72 29 3B 63 6F 6C 28    utstr(cptr);col(
010A20:  29 3B 0D 0A 09 09 09 09 2F 2A 20 6F 75 74 70 75    );....../* outpu
010A30:  74 20 6E 61 6D 65 20 61 73 20 6C 61 62 65 6C 2E    t name as label.
010A40:  2E 2E 20 2A 2F 0D 0A 09 09 09 64 65 66 73 74 6F    .. */.....defsto
010A50:  72 61 67 65 28 29 3B 20 20 20 2F 2A 64 65 66 69    rage();   /*defi
010A60:  6E 65 20 73 74 6F 72 61 67 65 20 2A 2F 0D 0A 09    ne storage */...
010A70:  09 09 6A 3D 28 28 63 70 74 72 5B 6F 66 66 73 65    ..j=((cptr[offse
010A80:  74 5D 26 32 35 35 29 2B 0D 0A 09 09 09 09 28 28    t]&255)+......((
010A90:  63 70 74 72 5B 6F 66 66 73 65 74 2B 31 5D 26 32    cptr[offset+1]&2
010AA0:  35 35 29 3C 3C 38 29 29 3B 0D 0A 09 09 09 09 09    55)<<8));.......
010AB0:  2F 2A 20 63 61 6C 63 20 23 20 62 79 74 65 73 20    /* calc # bytes 
010AC0:  2A 2F 0D 0A 09 09 09 6F 75 74 64 65 63 28 6A 29    */.....outdec(j)
010AD0:  3B 20 20 20 20 20 20 2F 2A 20 6E 65 65 64 20 74    ;      /* need t
010AE0:  68 61 74 20 6D 61 6E 79 20 2A 2F 0D 0A 09 09 09    hat many */.....
010AF0:  6E 6C 28 29 3B 0D 0A 09 09 09 7D 0D 0A 09 09 63    nl();.....}....c
010B00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
010B10:  0E 00 01 00 02 09 52 E5 0E 00 C1 02 00 00 00 02    ......R.........
010B20:  0E 00 C6 02 00 00 00 02 0E 00 C2 02 00 00 00 02    ................
010B30:  0E 00 C7 02 00 00 00 02 0E 00 C3 02 00 00 00 02    ................
010B40:  0E 00 C8 02 00 00 00 02 0E 00 C4 02 00 00 00 02    ................
010B50:  0E 00 C9 02 00 00 00 02 0E 00 C5 02 00 00 00 02    ................
010B60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
010B70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
010B80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
010B90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
010BA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
010BB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
010BC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
010BD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
010BE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
010BF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
010C00:  2A 2F 0D 0A 09 77 68 69 6C 65 28 69 73 73 70 61    */...while(isspa
010C10:  63 65 28 63 68 28 29 29 29 20 67 63 68 28 29 3B    ce(ch())) gch();
010C20:  20 09 2F 2A 20 73 6B 69 70 20 6F 76 65 72 20 74     ./* skip over t
010C30:  6F 20 6E 61 6D 65 20 2A 2F 0D 0A 09 66 65 6E 64    o name */...fend
010C40:  3D 27 20 27 3B 0D 0A 09 69 66 20 28 63 68 28 29    =' ';...if (ch()
010C50:  3D 3D 27 3C 27 29 20 7B 0D 0A 09 09 66 65 6E 64    =='<') {....fend
010C60:  3D 27 3E 27 3B 0D 0A 09 09 67 63 68 28 29 3B 0D    ='>';....gch();.
010C70:  0A 09 09 7D 0D 0A 09 69 66 20 28 63 68 28 29 3D    ...}...if (ch()=
010C80:  3D 27 5C 22 27 29 20 7B 0D 0A 09 09 66 65 6E 64    ='\"') {....fend
010C90:  3D 27 5C 22 27 3B 0D 0A 09 09 67 63 68 28 29 3B    ='\"';....gch();
010CA0:  0D 0A 09 09 7D 0D 0A 09 6C 65 6E 67 68 74 3D 30    ....}...lenght=0
010CB0:  3B 0D 0A 09 77 68 69 6C 65 28 6C 65 6E 67 68 74    ;...while(lenght
010CC0:  3C 33 30 20 26 26 20 63 68 28 29 20 26 26 20 63    <30 && ch() && c
010CD0:  68 28 29 21 3D 66 65 6E 64 29 20 7B 0D 0A 09 09    h()!=fend) {....
010CE0:  66 6E 61 6D 65 5B 6C 65 6E 67 68 74 2B 2B 5D 3D    fname[lenght++]=
010CF0:  63 68 28 29 3B 0D 0A 09 09 67 63 68 28 29 3B 0D    ch();....gch();.
010D00:  0A 09 09 7D 0D 0A 09 66 6E 61 6D 65 5B 6C 65 6E    ...}...fname[len
010D10:  67 68 74 5D 3D 30 3B 0D 0A 09 69 66 20 28 21 28    ght]=0;...if (!(
010D20:  66 65 6E 64 20 3D 3D 20 63 68 28 29 20 7C 7C 20    fend == ch() || 
010D30:  28 66 65 6E 64 20 3D 3D 27 20 27 20 26 26 20 20    (fend ==' ' &&  
010D40:  21 63 68 28 29 29 29 29 20 7B 0D 0A 09 09 65 72    !ch()))) {....er
010D50:  72 6F 72 28 22 69 6E 76 61 69 6C 64 20 66 69 6C    ror("invaild fil
010D60:  65 20 6E 61 6D 65 20 66 6F 72 20 69 6E 63 6C 75    e name for inclu
010D70:  64 65 22 29 3B 0D 0A 09 09 6B 69 6C 6C 28 29 3B    de");....kill();
010D80:  0D 0A 09 09 72 65 74 75 72 6E 3B 0D 0A 09 09 7D    ....return;....}
010D90:  0D 0A 09 69 66 20 28 21 6C 65 6E 67 68 74 29 20    ...if (!lenght) 
010DA0:  7B 0D 0A 09 09 65 72 72 6F 72 28 22 6D 69 73 73    {....error("miss
010DB0:  69 6E 67 20 66 69 6C 65 20 6E 61 6D 65 20 66 6F    ing file name fo
010DC0:  72 20 69 6E 63 6C 75 64 65 22 29 3B 0D 0A 09 09    r include");....
010DD0:  6B 69 6C 6C 28 29 3B 0D 0A 09 09 72 65 74 75 72    kill();....retur
010DE0:  6E 3B 0D 0A 09 09 7D 0D 0A 09 6C 69 6E 65 32 3D    n;....}...line2=
010DF0:  30 3B 0D 0A 09 69 66 20 28 69 6E 70 75 74 32 29    0;...if (input2)
010E00:  69 6E 65 20 73 74 61 63 6B 20 2A 2F 0D 0A 2F 2A    ine stack */../*
010E10:  09 61 6E 64 20 61 64 64 73 20 73 79 6D 62 6F 6C    .and adds symbol
010E20:  20 74 61 62 6C 65 20 65 6E 74 72 79 20 77 69 74     table entry wit
010E30:  68 20 61 70 70 72 6F 70 72 69 61 74 65 09 2A 2F    h appropriate.*/
010E40:  0D 0A 2F 2A 09 73 74 61 63 6B 20 6F 66 66 73 65    ../*.stack offse
010E50:  74 20 74 6F 20 66 69 6E 64 20 69 74 20 61 67 61    t to find it aga
010E60:  69 6E 09 09 09 2A 2F 0D 0A 64 65 63 6C 6C 6F 63    in...*/..declloc
010E70:  28 74 79 70 29 09 20 20 20 20 2F 2A 20 74 79 70    (typ).    /* typ
010E80:  20 69 73 20 63 63 68 61 72 20 6F 72 20 63 69 6E     is cchar or cin
010E90:  74 20 2A 2F 0D 0A 69 6E 74 20 74 79 70 3B 0D 0A    t */..int typ;..
010EA0:  7B 0D 0A 09 69 6E 74 20 6A 3B 0D 0A 09 69 6E 74    {...int j;...int
010EB0:  20 63 6F 75 6E 74 3B 0D 0A 09 63 68 61 72 20 73     count;...char s
010EC0:  6E 61 6D 65 5B 6E 61 6D 65 73 69 7A 65 5D 3B 0D    name[namesize];.
010ED0:  0A 09 77 68 69 6C 65 28 31 29 20 7B 0D 0A 09 09    ..while(1) {....
010EE0:  63 6F 75 6E 74 3D 30 3B 0D 0A 09 09 69 66 20 28    count=0;....if (
010EF0:  65 6E 64 73 74 28 29 29 20 72 65 74 75 72 6E 3B    endst()) return;
010F00:  0D 0A 09 09 69 66 20 28 6D 61 74 63 68 28 22 2A    ....if (match("*
010F10:  22 29 29 20 7B 20 0D 0A 09 09 09 6A 3D 70 6F 69    ")) { .....j=poi
010F20:  6E 74 65 72 3B 0D 0A 09 09 09 2B 2B 63 6F 75 6E    nter;.....++coun
010F30:  74 3B 0D 0A 09 09 09 77 68 69 6C 65 28 63 68 28    t;.....while(ch(
010F40:  29 3D 3D 27 2A 27 29 20 7B 0D 0A 09 09 09 09 2B    )=='*') {......+
010F50:  2B 63 6F 75 6E 74 3B 0D 0A 09 09 09 09 67 63 68    +count;......gch
010F60:  28 29 3B 0D 0A 09 09 09 09 7D 0D 0A 09 09 09 7D    ();......}.....}
010F70:  0D 0A 09 09 65 6C 73 65 20 6A 3D 76 61 72 69 61    ....else j=varia
010F80:  62 6C 65 3B 0D 0A 09 09 69 66 20 28 21 73 79 6D    ble;....if (!sym
010F90:  6E 61 6D 65 28 73 6E 61 6D 65 29 29 20 69 6C 6C    name(sname)) ill
010FA0:  6E 61 6D 65 28 29 3B 0D 0A 09 09 69 66 20 28 66    name();....if (f
010FB0:  69 6E 64 6C 6F 63 28 73 6E 61 6D 65 29 29 20 6D    indloc(sname)) m
010FC0:  75 6C 74 69 64 65 66 28 73 6E 61 6D 65 29 3B 0D    ultidef(sname);.
010FD0:  0A 09 09 64 61 74 61 5F 70 61 72 73 65 28 73 6E    ...data_parse(sn
010FE0:  61 6D 65 2C 74 79 70 2C 73 74 6B 6C 6F 63 2C 6A    ame,typ,stkloc,j
010FF0:  2C 63 6F 75 6E 74 29 3B 0D 0A 09 09 69 66 20 28    ,count);....if (
011000:  20 7B 0D 0A 09 09 65 72 72 6F 72 28 22 6E 65 73     {....error("nes
011010:  74 65 64 20 69 6E 63 6C 75 64 65 20 6E 6F 74 20    ted include not 
011020:  61 6C 6F 75 64 22 29 3B 0D 0A 09 09 6B 69 6C 6C    aloud");....kill
011030:  28 29 3B 0D 0A 09 09 72 65 74 75 72 6E 3B 0D 0A    ();....return;..
011040:  09 09 7D 0D 0A 09 69 66 20 28 28 69 6E 70 75 74    ..}...if ((input
011050:  32 3D 66 6F 70 65 6E 28 66 6E 61 6D 65 2C 66 69    2=fopen(fname,fi
011060:  6E 70 32 29 29 20 3D 3D 20 45 52 52 4F 52 29 20    np2)) == ERROR) 
011070:  7B 20 0D 0A 09 09 65 72 72 6F 72 28 22 4F 70 65    { ....error("Ope
011080:  6E 20 66 61 69 6C 75 72 65 20 6F 6E 20 69 6E 63    n failure on inc
011090:  6C 75 64 65 20 66 69 6C 65 22 29 3B 0D 0A 09 09    lude file");....
0110A0:  69 6E 70 75 74 32 3D 30 3B 0D 0A 09 09 7D 0D 0A    input2=0;....}..
0110B0:  09 6B 69 6C 6C 28 29 3B 0D 0A 09 7D 0D 0A 2F 2A    .kill();...}../*
0110C0:  09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 23 69 66 6E    .....*/../*.#ifn
0110D0:  64 65 66 20 09 09 09 2A 2F 0D 0A 2F 2A 09 09 09    def ...*/../*...
0110E0:  09 09 2A 2F 0D 0A 64 6F 69 66 6E 64 65 66 28 29    ..*/..doifndef()
0110F0:  0D 0A 7B 0D 0A 09 63 68 61 72 20 73 6E 61 6D 65    ..{...char sname
011100:  5B 6E 61 6D 65 73 69 7A 65 5D 3B 0D 0A 09 69 6E    [namesize];...in
011110:  74 20 6C 76 61 6C 5B 32 5D 3B 0D 0A 0D 0A 09 2F    t lval[2];...../
011120:  2A 20 63 68 65 63 6B 20 74 6F 20 69 66 20 64 65    * check to if de
011130:  66 69 6E 65 20 61 73 20 63 6F 6E 73 74 61 6E 74    fine as constant
011140:  20 2A 2F 0D 0A 09 62 6C 61 6E 6B 73 28 29 3B 0D     */...blanks();.
011150:  0A 09 69 66 20 28 63 6F 6E 73 74 61 6E 74 28 6C    ..if (constant(l
011160:  76 61 6C 29 29 20 7B 0D 0A 09 09 63 69 66 3D 46    val)) {....cif=F
011170:  41 4C 53 45 3B 0D 0A 09 09 72 65 74 75 72 6E 3B    ALSE;....return;
011180:  0D 0A 09 09 7D 0D 0A 0D 0A 09 2F 2A 20 63 68 65    ....}...../* che
011190:  63 6B 20 74 6F 20 73 65 65 20 69 66 20 76 61 69    ck to see if vai
0111A0:  6C 64 20 73 79 73 6D 62 6F 6C 20 2A 2F 0D 0A 09    ld sysmbol */...
0111B0:  69 66 20 28 21 73 79 6D 6E 61 6D 65 28 73 6E 61    if (!symname(sna
0111C0:  6D 65 29 29 20 7B 0D 0A 09 09 65 72 72 6F 72 28    me)) {....error(
0111D0:  22 69 6E 76 61 69 6C 64 20 69 64 65 6E 74 69 66    "invaild identif
0111E0:  69 65 72 22 29 3B 0D 0A 09 09 6B 69 6C 6C 28 29    ier");....kill()
0111F0:  3B 0D 0A 09 09 72 65 74 75 72 6E 3B 0D 0A 09 09    ;....return;....
011200:  21 6D 61 74 63 68 28 22 2C 22 29 29 20 72 65 74    !match(",")) ret
011210:  75 72 6E 3B 0D 0A 09 09 7D 0D 0A 09 7D 0D 0A 2F    urn;....}...}../
011220:  2A 09 09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 70 61    *......*/../*.pa
011230:  72 73 65 20 6F 75 74 20 64 61 74 61 20 69 74 65    rse out data ite
011240:  6D 20 61 6E 64 20 61 64 64 20 74 6F 20 73 79 6D    m and add to sym
011250:  62 6F 6C 09 2A 2F 0D 0A 2F 2A 09 73 79 6D 62 6F    bol.*/../*.symbo
011260:  6C 20 74 61 62 6C 65 2E 09 09 09 09 2A 2F 0D 0A    l table.....*/..
011270:  2F 2A 09 09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 77    /*......*/../*.w
011280:  72 69 74 74 65 6E 20 41 70 72 69 6C 20 38 2C 20    ritten April 8, 
011290:  31 39 38 31 20 42 79 20 4D 69 6B 65 20 42 65 72    1981 By Mike Ber
0112A0:  6E 73 6F 6E 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09    nson.*/../*.....
0112B0:  09 2A 2F 0D 0A 64 61 74 61 5F 70 61 72 73 65 28    .*/..data_parse(
0112C0:  73 6E 61 6D 65 2C 74 79 70 2C 63 6C 61 73 73 5F    sname,typ,class_
0112D0:  69 64 2C 69 64 65 6E 74 5F 74 79 70 2C 63 6F 75    id,ident_typ,cou
0112E0:  6E 74 29 0D 0A 63 68 61 72 20 2A 73 6E 61 6D 65    nt)..char *sname
0112F0:  3B 09 09 2F 2A 20 70 6F 69 6E 74 65 72 20 74 6F    ;../* pointer to
011300:  20 6E 61 6D 65 20 6F 66 20 73 79 6D 62 6F 6C 20     name of symbol 
011310:  2A 2F 0D 0A 63 68 61 72 20 74 79 70 3B 09 09 2F    */..char typ;../
011320:  2A 20 74 79 70 65 20 6F 66 20 64 61 74 61 20 63    * type of data c
011330:  68 61 72 20 6F 72 20 69 6E 74 20 2A 2F 0D 0A 63    har or int */..c
011340:  68 61 72 20 63 6C 61 73 73 5F 69 64 3B 09 09 2F    har class_id;../
011350:  2A 20 74 79 70 20 6F 66 20 73 74 6F 72 61 67 65    * typ of storage
011360:  20 73 74 61 74 69 63 20 61 75 74 6F 6D 69 63 20     static automic 
011370:  2A 2F 0D 0A 63 68 61 72 20 69 64 65 6E 74 5F 74    */..char ident_t
011380:  79 70 3B 09 09 2F 2A 20 74 79 70 65 20 6F 66 20    yp;../* type of 
011390:  76 61 72 62 6C 65 20 70 6F 69 6E 74 65 72 20 6F    varble pointer o
0113A0:  72 20 76 61 72 62 6C 65 20 2A 2F 0D 0A 69 6E 74    r varble */..int
0113B0:  20 20 63 6F 75 6E 74 3B 09 09 2F 2A 20 6E 75 6D      count;../* num
0113C0:  62 65 72 20 6F 66 20 6C 65 76 65 6C 20 6F 66 20    ber of level of 
0113D0:  70 6F 69 6E 74 65 72 73 20 2A 2F 0D 0A 7B 0D 0A    pointers */..{..
0113E0:  09 69 6E 74 20 73 69 7A 65 3B 09 2F 2A 20 61 6D    .int size;./* am
0113F0:  6F 75 6E 74 20 6F 66 20 6D 65 6D 6F 72 79 20 6E    ount of memory n
011400:  7D 0D 0A 0D 0A 09 2F 2A 20 63 68 65 63 6B 20 74    }...../* check t
011410:  6F 20 73 65 65 20 69 66 20 73 79 6D 62 6F 6C 20    o see if symbol 
011420:  69 73 20 64 65 66 69 6E 65 20 2A 2F 0D 0A 09 69    is define */...i
011430:  66 20 28 66 69 6E 64 6C 6F 63 28 73 6E 61 6D 65    f (findloc(sname
011440:  29 20 7C 7C 20 66 69 6E 64 67 6C 62 28 73 6E 61    ) || findglb(sna
011450:  6D 65 29 29 0D 0A 09 09 63 69 66 3D 46 41 4C 53    me))....cif=FALS
011460:  45 3B 20 65 6C 73 65 20 63 69 66 3D 54 52 55 45    E; else cif=TRUE
011470:  3B 0D 0A 09 7D 0D 0A 2F 2A 09 09 09 2A 2F 0D 0A    ;...}../*...*/..
011480:  2F 2A 09 23 69 66 64 65 66 09 09 2A 2F 0D 0A 2F    /*.#ifdef..*/../
011490:  2A 09 09 09 2A 2F 0D 0A 64 6F 69 66 64 65 66 28    *...*/..doifdef(
0114A0:  29 0D 0A 7B 0D 0A 09 63 68 61 72 20 73 6E 61 6D    )..{...char snam
0114B0:  65 5B 6E 61 6D 65 73 69 7A 65 5D 3B 0D 0A 09 69    e[namesize];...i
0114C0:  6E 74 20 20 6C 76 61 6C 5B 32 5D 3B 0D 0A 0D 0A    nt  lval[2];....
0114D0:  09 2F 2A 20 63 68 65 63 6B 20 74 6F 20 73 65 65    ./* check to see
0114E0:  20 69 66 20 63 6F 6E 73 74 61 6E 74 20 2A 2F 0D     if constant */.
0114F0:  0A 09 62 6C 61 6E 6B 73 28 29 3B 0D 0A 09 69 66    ..blanks();...if
011500:  20 28 21 63 6F 6E 73 74 61 6E 74 28 6C 76 61 6C     (!constant(lval
011510:  29 29 20 7B 0D 0A 09 09 63 69 66 3D 46 41 4C 53    )) {....cif=FALS
011520:  45 3B 0D 0A 09 09 72 65 74 75 72 6E 3B 0D 0A 09    E;....return;...
011530:  09 7D 0D 0A 0D 0A 09 2F 2A 20 63 68 65 63 6B 20    .}...../* check 
011540:  74 6F 20 73 65 65 20 69 66 20 76 61 69 6C 64 20    to see if vaild 
011550:  73 79 6D 62 6F 6C 09 2A 2F 0D 0A 09 69 66 20 28    symbol.*/...if (
011560:  21 73 79 6D 6E 61 6D 65 28 73 6E 61 6D 65 29 29    !symname(sname))
011570:  20 7B 0D 0A 09 09 65 72 72 6F 72 28 22 69 6E 76     {....error("inv
011580:  61 69 6C 64 20 69 64 65 6E 74 69 66 69 65 72 22    aild identifier"
011590:  29 3B 0D 0A 09 09 6B 69 6C 6C 28 29 3B 0D 0A 09    );....kill();...
0115A0:  09 7D 0D 0A 0D 0A 09 2F 2A 20 63 68 65 63 6B 20    .}...../* check 
0115B0:  74 6F 20 73 65 65 20 69 66 20 73 79 6D 62 6F 6C    to see if symbol
0115C0:  20 69 73 20 64 65 66 69 6E 65 20 2A 2F 0D 0A 09     is define */...
0115D0:  69 66 20 28 66 69 6E 64 6C 6F 63 28 73 6E 61 6D    if (findloc(snam
0115E0:  65 29 20 7C 7C 20 66 69 6E 64 67 6C 62 28 73 6E    e) || findglb(sn
0115F0:  61 6D 65 29 29 20 0D 0A 09 09 63 69 66 3D 54 52    ame)) ....cif=TR
011600:  65 65 64 65 64 20 66 6F 72 20 76 61 72 62 6C 65    eeded for varble
011610:  20 2A 2F 0D 0A 09 69 6E 74 20 76 61 6C 75 65 3B     */...int value;
011620:  09 2F 2A 20 75 73 65 64 20 74 6F 20 68 6F 6C 64    ./* used to hold
011630:  20 76 61 6C 75 65 20 66 6F 72 20 6F 66 66 73 65     value for offse
011640:  74 20 2A 2F 0D 0A 09 63 68 61 72 20 2A 70 74 72    t */...char *ptr
011650:  3B 09 2F 2A 20 70 6F 69 6E 74 65 72 20 74 6F 20    ;./* pointer to 
011660:  66 72 65 65 20 73 6C 6F 74 20 69 6E 20 73 79 6D    free slot in sym
011670:  62 6F 6C 20 74 61 62 6C 65 20 2A 2F 0D 0A 0D 0A    bol table */....
011680:  09 2F 2A 20 63 68 65 63 6B 20 74 6F 20 73 65 65    ./* check to see
011690:  20 69 66 20 73 75 62 73 63 72 69 70 74 20 2A 2F     if subscript */
0116A0:  0D 0A 09 69 66 20 28 6D 61 74 63 68 28 22 5B 22    ...if (match("["
0116B0:  29 29 20 7B 0D 0A 0D 0A 09 09 2F 2A 20 61 64 64    )) {....../* add
0116C0:  20 31 20 74 6F 20 69 6E 64 65 72 69 63 74 20 63     1 to inderict c
0116D0:  6F 75 6E 74 20 2A 2F 0D 0A 09 09 2B 2B 63 6F 75    ount */....++cou
0116E0:  6E 74 3B 0D 0A 0D 0A 09 09 2F 2A 20 63 68 65 63    nt;....../* chec
0116F0:  6B 20 74 6F 20 73 65 65 20 6E 75 6C 6C 20 73 75    k to see null su
011700:  62 73 63 72 69 70 74 20 2A 2F 0D 0A 09 09 69 66    bscript */....if
011710:  20 28 73 69 7A 65 3D 6E 65 65 64 73 75 62 28 29     (size=needsub()
011720:  29 20 7B 0D 0A 0D 0A 09 09 09 2F 2A 20 73 75 62    ) {......./* sub
011730:  73 63 72 69 70 74 20 73 69 7A 65 20 6E 6F 74 20    script size not 
011740:  6E 75 6C 6C 20 2A 2F 0D 0A 09 09 09 69 66 20 28    null */.....if (
011750:  69 64 65 6E 74 5F 74 79 70 3D 3D 70 6F 69 6E 74    ident_typ==point
011760:  65 72 29 20 7B 0D 0A 0D 0A 09 09 09 09 2F 2A 20    er) {......../* 
011770:  61 72 72 61 79 20 6F 66 20 70 6F 69 6E 74 65 72    array of pointer
011780:  20 2A 74 65 6D 70 5B 73 69 7A 65 5D 20 2A 2F 0D     *temp[size] */.
011790:  0A 09 09 09 09 73 69 7A 65 3D 73 69 7A 65 2B 73    .....size=size+s
0117A0:  69 7A 65 3B 0D 0A 09 09 09 09 7D 0D 0A 09 09 09    ize;......}.....
0117B0:  65 6C 73 65 20 7B 0D 0A 0D 0A 09 09 09 09 2F 2A    else {......../*
0117C0:  20 61 72 72 61 79 20 74 65 6D 70 5B 73 69 7A 65     array temp[size
0117D0:  5D 20 2A 2F 0D 0A 09 09 09 09 69 64 65 6E 74 5F    ] */......ident_
0117E0:  74 79 70 3D 61 72 72 61 79 3B 0D 0A 09 09 09 09    typ=array;......
0117F0:  69 66 20 28 74 79 70 3D 3D 63 69 6E 74 29 20 73    if (typ==cint) s
011800:  55 45 3B 20 65 6C 73 65 20 63 69 66 3D 46 41 4C    UE; else cif=FAL
011810:  53 45 3B 0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09 09    SE;...}../*.....
011820:  2A 2F 0D 0A 2F 2A 09 43 6C 6F 73 65 20 74 68 65    */../*.Close the
011830:  20 6F 75 74 70 75 74 20 66 69 6C 65 09 09 2A 2F     output file..*/
011840:  0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 63 6C 6F    ../*.....*/..clo
011850:  73 65 6F 75 74 28 29 0D 0A 7B 0D 0A 09 69 66 20    seout()..{...if 
011860:  28 6F 75 74 70 75 74 29 20 7B 09 2F 2A 20 69 66    (output) {./* if
011870:  20 6F 70 65 6E 20 6D 61 72 6B 20 65 6E 64 2C 20     open mark end, 
011880:  63 6C 6F 73 65 20 69 74 20 2A 2F 0D 0A 09 09 70    close it */....p
011890:  75 74 63 28 32 36 2C 66 6F 75 74 29 3B 0D 0A 09    utc(26,fout);...
0118A0:  09 66 66 6C 75 73 68 28 66 6F 75 74 29 3B 0D 0A    .fflush(fout);..
0118B0:  09 09 66 63 6C 6F 73 65 28 6F 75 74 70 75 74 29    ..fclose(output)
0118C0:  3B 0D 0A 09 09 7D 0D 0A 09 6F 75 74 70 75 74 3D    ;....}...output=
0118D0:  30 3B 09 20 20 20 20 20 20 2F 2A 20 6D 61 72 6B    0;.      /* mark
0118E0:  20 61 73 20 63 6C 6F 73 65 64 20 2A 2F 0D 0A 09     as closed */...
0118F0:  7D 0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 2F 2A    }../*.....*/../*
011900:  09 44 65 63 6C 61 72 65 20 61 20 73 74 61 74 69    .Declare a stati
011910:  63 20 76 61 72 69 61 62 6C 65 09 2A 2F 0D 0A 2F    c variable.*/../
011920:  2A 09 28 69 2E 65 2E 20 64 65 66 69 6E 65 20 66    *.(i.e. define f
011930:  6F 72 20 75 73 65 29 09 09 2A 2F 0D 0A 2F 2A 09    or use)..*/../*.
011940:  09 09 09 09 2A 2F 0D 0A 2F 2A 20 6D 61 6B 65 73    ....*/../* makes
011950:  20 61 6E 20 65 6E 74 72 79 20 69 6E 20 74 68 65     an entry in the
011960:  20 73 79 6D 62 6F 6C 20 74 61 62 6C 65 20 73 6F     symbol table so
011970:  20 73 75 62 73 65 71 75 65 6E 74 20 2A 2F 0D 0A     subsequent */..
011980:  2F 2A 20 20 72 65 66 65 72 65 6E 63 65 73 20 63    /*  references c
011990:  61 6E 20 63 61 6C 6C 20 73 79 6D 62 6F 6C 20 62    an call symbol b
0119A0:  79 20 6E 61 6D 65 20 20 2A 2F 0D 0A 64 65 63 6C    y name  */..decl
0119B0:  67 6C 62 28 74 79 70 29 09 20 20 20 20 2F 2A 20    glb(typ).    /* 
0119C0:  74 79 70 20 69 73 20 63 63 68 61 72 20 6F 72 20    typ is cchar or 
0119D0:  63 69 6E 74 20 2A 2F 0D 0A 09 69 6E 74 20 74 79    cint */...int ty
0119E0:  70 3B 0D 0A 7B 0D 0A 09 69 6E 74 20 6A 3B 0D 0A    p;..{...int j;..
0119F0:  09 69 6E 74 20 63 6F 75 6E 74 3B 0D 0A 09 63 68    .int count;...ch
011A00:  69 7A 65 3D 73 69 7A 65 2B 73 69 7A 65 3B 0D 0A    ize=size+size;..
011A10:  09 09 09 09 7D 0D 0A 09 09 09 7D 0D 0A 09 09 65    ....}.....}....e
011A20:  6C 73 65 20 7B 0D 0A 0D 0A 09 09 09 2F 2A 20 6E    lse {......./* n
011A30:  75 6C 6C 20 73 69 7A 65 20 73 75 62 73 63 72 69    ull size subscri
011A40:  70 74 20 2A 2F 0D 0A 09 09 09 69 64 65 6E 74 5F    pt */.....ident_
011A50:  74 79 70 3D 70 6F 69 6E 74 65 72 3B 0D 0A 09 09    typ=pointer;....
011A60:  09 73 69 7A 65 3D 32 3B 0D 0A 09 09 09 7D 0D 0A    .size=2;.....}..
011A70:  09 09 7D 0D 0A 09 65 6C 73 65 20 7B 0D 0A 09 09    ..}...else {....
011A80:  2F 2A 20 6E 6F 20 73 75 62 73 63 72 69 70 74 20    /* no subscript 
011A90:  2A 2F 0D 0A 09 09 69 66 20 28 69 64 65 6E 74 5F    */....if (ident_
011AA0:  74 79 70 3D 3D 70 6F 69 6E 74 65 72 29 20 73 69    typ==pointer) si
011AB0:  7A 65 3D 32 3B 0D 0A 09 09 65 6C 73 65 20 69 66    ze=2;....else if
011AC0:  20 28 74 79 70 20 3D 3D 20 63 69 6E 74 29 20 73     (typ == cint) s
011AD0:  69 7A 65 3D 32 3B 20 65 6C 73 65 20 73 69 7A 65    ize=2; else size
011AE0:  3D 31 3B 0D 0A 09 09 7D 0D 0A 09 2F 2A 20 61 64    =1;....}.../* ad
011AF0:  64 20 64 61 74 61 20 65 6C 65 6D 65 6E 74 20 74    d data element t
011B00:  6F 20 73 79 6D 62 6F 6C 20 74 61 62 6C 65 20 2A    o symbol table *
011B10:  2F 0D 0A 09 73 77 69 74 63 68 28 63 6C 61 73 73    /...switch(class
011B20:  5F 69 64 29 20 7B 0D 0A 0D 0A 09 09 2F 2A 20 67    _id) {....../* g
011B30:  6C 6F 62 61 6C 20 73 79 6D 62 6F 6C 20 2A 2F 0D    lobal symbol */.
011B40:  0A 09 09 63 61 73 65 20 73 74 61 74 69 6B 20 3A    ...case statik :
011B50:  0D 0A 09 09 09 69 66 20 28 67 6C 62 70 74 72 3E    .....if (glbptr>
011B60:  3D 65 6E 64 67 6C 62 29 20 7B 0D 0A 09 09 09 09    =endglb) {......
011B70:  65 72 72 6F 72 28 22 67 6C 6F 62 61 6C 20 73 79    error("global sy
011B80:  6D 6E 6F 6C 20 74 61 62 6C 65 20 6F 76 65 72 66    mnol table overf
011B90:  6C 6F 77 22 29 3B 0D 0A 09 09 09 09 72 65 74 75    low");......retu
011BA0:  72 6E 20 30 3B 0D 0A 09 09 09 09 7D 0D 0A 09 09    rn 0;......}....
011BB0:  09 70 74 72 3D 67 6C 62 70 74 72 3B 0D 0A 09 09    .ptr=glbptr;....
011BC0:  09 67 6C 62 70 74 72 2B 3D 73 79 6D 73 69 7A 3B    .glbptr+=symsiz;
011BD0:  0D 0A 09 09 09 76 61 6C 75 65 3D 73 69 7A 65 3B    .....value=size;
011BE0:  0D 0A 09 09 09 62 72 65 61 6B 3B 0D 0A 09 0D 0A    .....break;.....
011BF0:  09 09 2F 2A 20 73 74 61 63 6B 20 6C 6F 63 61 6C    ../* stack local
011C00:  61 72 20 73 6E 61 6D 65 5B 6E 61 6D 65 73 69 7A    ar sname[namesiz
011C10:  65 5D 3B 0D 0A 0D 0A 09 77 68 69 6C 65 28 31 29    e];.....while(1)
011C20:  20 7B 0D 0A 09 09 63 6F 75 6E 74 3D 30 3B 09 0D     {....count=0;..
011C30:  0A 09 09 69 66 20 28 65 6E 64 73 74 28 29 29 20    ...if (endst()) 
011C40:  72 65 74 75 72 6E 3B 0D 0A 09 09 69 66 28 6D 61    return;....if(ma
011C50:  74 63 68 28 22 2A 22 29 29 20 7B 0D 0A 09 09 09    tch("*")) {.....
011C60:  6A 3D 70 6F 69 6E 74 65 72 3B 0D 0A 09 09 09 2B    j=pointer;.....+
011C70:  2B 63 6F 75 6E 74 3B 20 0D 0A 09 09 09 77 68 69    +count; .....whi
011C80:  6C 65 28 63 68 28 29 3D 3D 27 2A 27 29 20 7B 0D    le(ch()=='*') {.
011C90:  0A 09 09 09 09 2B 2B 63 6F 75 6E 74 3B 0D 0A 09    .....++count;...
011CA0:  09 09 09 67 63 68 28 29 3B 0D 0A 09 09 09 09 7D    ...gch();......}
011CB0:  0D 0A 09 09 09 7D 09 09 0D 0A 09 09 65 6C 73 65    .....}......else
011CC0:  20 6A 3D 76 61 72 69 61 62 6C 65 3B 0D 0A 09 09     j=variable;....
011CD0:  69 66 20 28 21 73 79 6D 6E 61 6D 65 28 73 6E 61    if (!symname(sna
011CE0:  6D 65 29 29 20 69 6C 6C 6E 61 6D 65 28 29 3B 0D    me)) illname();.
011CF0:  0A 09 09 69 66 28 66 69 6E 64 67 6C 62 28 73 6E    ...if(findglb(sn
011D00:  61 6D 65 29 29 20 6D 75 6C 74 69 64 65 66 28 73    ame)) multidef(s
011D10:  6E 61 6D 65 29 3B 0D 0A 09 09 64 61 74 61 5F 70    name);....data_p
011D20:  61 72 73 65 28 73 6E 61 6D 65 2C 74 79 70 2C 73    arse(sname,typ,s
011D30:  74 61 74 69 6B 2C 6A 2C 63 6F 75 6E 74 29 3B 0D    tatik,j,count);.
011D40:  0A 09 09 69 66 20 28 6D 61 74 63 68 28 22 2C 22    ...if (match(","
011D50:  29 3D 3D 30 29 20 72 65 74 75 72 6E 3B 20 2F 2A    )==0) return; /*
011D60:  20 6D 6F 72 65 3F 20 2A 2F 0D 0A 09 09 7D 0D 0A     more? */....}..
011D70:  09 7D 0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 2F    .}../*.....*/../
011D80:  2A 20 20 20 20 20 20 44 65 63 6C 61 72 65 20 6C    *      Declare l
011D90:  6F 63 61 6C 20 76 61 72 69 61 62 6C 65 73 09 09    ocal variables..
011DA0:  2A 2F 0D 0A 2F 2A 20 20 20 20 20 20 28 69 2E 65    */../*      (i.e
011DB0:  2E 20 64 65 66 69 6E 65 20 66 6F 72 20 75 73 65    . define for use
011DC0:  29 09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 2A 2F    )..*/../*.....*/
011DD0:  0D 0A 2F 2A 20 77 6F 72 6B 73 20 6A 75 73 74 20    ../* works just 
011DE0:  6C 69 6B 65 20 22 64 65 63 6C 67 6C 62 22 20 62    like "declglb" b
011DF0:  75 74 20 6D 6F 64 69 66 69 65 73 20 6D 61 63 68    ut modifies mach
011E00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
011E10:  0F 00 01 00 02 09 52 E5 0F 00 C1 02 00 00 00 02    ......R.........
011E20:  0F 00 C6 02 00 00 00 02 0F 00 C2 02 00 00 00 02    ................
011E30:  0F 00 C7 02 00 00 00 02 0F 00 C3 02 00 00 00 02    ................
011E40:  0F 00 C8 02 00 00 00 02 0F 00 C4 02 00 00 00 02    ................
011E50:  0F 00 C9 02 00 00 00 02 0F 00 C5 02 00 00 00 02    ................
011E60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
011E70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
011E80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
011E90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
011EA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
011EB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
011EC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
011ED0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
011EE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
011EF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
011F00:  20 76 61 72 62 6C 65 20 2A 2F 20 0D 0A 09 09 63     varble */ ....c
011F10:  61 73 65 20 73 74 6B 6C 6F 63 20 3A 0D 0A 09 09    ase stkloc :....
011F20:  09 73 70 3D 6D 6F 64 73 74 6B 28 73 70 2D 73 69    .sp=modstk(sp-si
011F30:  7A 65 29 3B 0D 0A 09 09 09 76 61 6C 75 65 3D 73    ze);.....value=s
011F40:  70 3B 0D 0A 09 09 09 69 66 20 28 6C 6F 63 70 74    p;.....if (locpt
011F50:  72 3E 3D 65 6E 64 6C 6F 63 29 20 7B 0D 0A 09 09    r>=endloc) {....
011F60:  09 09 65 72 72 6F 72 28 22 6C 6F 63 61 6C 20 73    ..error("local s
011F70:  79 6D 62 6F 6C 20 74 61 62 6C 65 20 6F 76 65 72    ymbol table over
011F80:  66 6C 6F 77 22 29 3B 0D 0A 09 09 09 09 72 65 74    flow");......ret
011F90:  75 72 6E 20 30 3B 0D 0A 09 09 09 09 7D 0D 0A 09    urn 0;......}...
011FA0:  09 09 70 74 72 3D 6C 6F 63 70 74 72 3B 0D 0A 09    ..ptr=locptr;...
011FB0:  09 09 6C 6F 63 70 74 72 2B 3D 73 79 6D 73 69 7A    ..locptr+=symsiz
011FC0:  3B 0D 0A 09 09 09 62 72 65 61 6B 3B 0D 0A 0D 0A    ;.....break;....
011FD0:  09 09 2F 2A 20 61 72 67 20 73 74 61 63 6B 20 2A    ../* arg stack *
011FE0:  2F 0D 0A 09 09 63 61 73 65 20 73 74 6B 61 72 67    /....case stkarg
011FF0:  20 3A 0D 0A 09 09 09 76 61 6C 75 65 3D 61 72 67     :.....value=arg
012000:  73 74 6B 3B 0D 0A 09 09 09 61 72 67 73 74 6B 2D    stk;.....argstk-
012010:  3D 32 3B 0D 0A 09 09 09 69 66 20 28 6C 6F 63 70    =2;.....if (locp
012020:  74 72 3E 3D 65 6E 64 6C 6F 63 29 20 7B 0D 0A 09    tr>=endloc) {...
012030:  09 09 09 65 72 72 6F 72 28 22 6C 6F 63 61 6C 20    ...error("local 
012040:  73 79 6D 62 6F 6C 20 74 61 62 6C 65 20 6F 76 65    symbol table ove
012050:  72 66 6C 6F 77 22 29 3B 0D 0A 09 09 09 09 72 65    rflow");......re
012060:  74 75 72 6E 20 30 3B 0D 0A 09 09 09 09 7D 0D 0A    turn 0;......}..
012070:  09 09 09 70 74 72 3D 6C 6F 63 70 74 72 3B 0D 0A    ...ptr=locptr;..
012080:  09 09 09 6C 6F 63 70 74 72 2B 3D 73 79 6D 73 69    ...locptr+=symsi
012090:  7A 3B 0D 0A 09 09 09 62 72 65 61 6B 3B 0D 0A 09    z;.....break;...
0120A0:  09 7D 0D 0A 09 2F 2A 20 66 69 6C 65 20 69 6E 20    .}.../* file in 
0120B0:  73 79 6D 62 6F 6C 20 74 61 62 6C 65 20 65 6E 74    symbol table ent
0120C0:  72 79 20 2A 2F 0D 0A 09 73 74 72 63 70 79 28 70    ry */...strcpy(p
0120D0:  74 72 2B 6E 61 6D 65 2C 73 6E 61 6D 65 29 3B 0D    tr+name,sname);.
0120E0:  0A 09 70 74 72 5B 69 64 65 6E 74 5D 3D 69 64 65    ..ptr[ident]=ide
0120F0:  6E 74 5F 74 79 70 3B 0D 0A 09 70 74 72 5B 74 79    nt_typ;...ptr[ty
012100:  61 72 61 74 69 6F 6E 22 29 3B 0D 0A 09 09 6B 69    aration");....ki
012110:  6C 6C 28 29 3B 0D 0A 09 09 72 65 74 75 72 6E 3B    ll();....return;
012120:  0D 0A 09 09 7D 0D 0A 09 69 66 28 70 74 72 3D 66    ....}...if(ptr=f
012130:  69 6E 64 67 6C 62 28 6E 29 29 20 7B 20 20 20 20    indglb(n)) {    
012140:  20 20 2F 2A 20 61 6C 72 65 61 64 79 20 69 6E 20      /* already in 
012150:  73 79 6D 62 6F 6C 20 74 61 62 6C 65 20 3F 20 2A    symbol table ? *
012160:  2F 0D 0A 09 09 69 66 20 28 70 74 72 5B 69 64 65    /....if (ptr[ide
012170:  6E 74 5D 20 21 3D 20 66 75 6E 63 74 69 6F 6E 29    nt] != function)
012180:  20 6D 75 6C 74 69 64 65 66 28 6E 29 3B 0D 0A 09     multidef(n);...
012190:  09 09 2F 2A 20 61 6C 72 65 61 64 79 20 76 61 72    ../* already var
0121A0:  69 61 62 6C 65 20 62 79 20 74 68 61 74 20 6E 61    iable by that na
0121B0:  6D 65 20 2A 2F 0D 0A 09 09 65 6C 73 65 20 69 66    me */....else if
0121C0:  28 70 74 72 5B 6F 66 66 73 65 74 5D 20 3D 3D 20    (ptr[offset] == 
0121D0:  66 75 6E 63 74 69 6F 6E 29 20 6D 75 6C 74 69 64    function) multid
0121E0:  65 66 28 6E 29 3B 0D 0A 09 09 09 2F 2A 20 61 6C    ef(n);...../* al
0121F0:  72 65 61 64 79 20 66 75 6E 63 74 69 6F 6E 20 62    ready function b
012200:  79 20 74 68 61 74 20 6E 61 6D 65 20 2A 2F 0D 0A    y that name */..
012210:  09 09 65 6C 73 65 20 7B 0D 0A 09 09 09 70 74 72    ..else {.....ptr
012220:  5B 6F 66 66 73 65 74 5D 3D 66 75 6E 63 74 69 6F    [offset]=functio
012230:  6E 3B 0D 0A 09 09 09 63 73 65 63 74 28 6E 29 3B    n;.....csect(n);
012240:  0D 0A 09 09 09 7D 0D 0A 09 09 09 2F 2A 20 6F 74    .....}...../* ot
012250:  68 65 72 77 69 73 65 20 77 65 20 68 61 76 65 20    herwise we have 
012260:  77 68 61 74 20 77 61 73 20 65 61 72 6C 69 65 72    what was earlier
012270:  2A 2F 0D 0A 09 09 09 2F 2A 20 20 61 73 73 75 6D    */...../*  assum
012280:  65 64 20 74 6F 20 62 65 20 61 20 66 75 6E 63 74    ed to be a funct
012290:  69 6F 6E 20 2A 2F 0D 0A 09 09 7D 0D 0A 09 2F 2A    ion */....}.../*
0122A0:  20 69 66 20 6E 6F 74 20 69 6E 20 74 61 62 6C 65     if not in table
0122B0:  2C 20 64 65 66 69 6E 65 20 61 73 20 61 20 66 75    , define as a fu
0122C0:  6E 63 74 69 6F 6E 20 6E 6F 77 20 2A 2F 0D 0A 09    nction now */...
0122D0:  65 6C 73 65 20 7B 0D 0A 09 09 2F 2A 20 66 69 6C    else {..../* fil
0122E0:  6C 20 69 6E 20 67 6F 62 61 6C 20 73 79 6D 62 6F    l in gobal symbo
0122F0:  6C 20 74 61 62 6C 65 20 2A 2F 0D 0A 09 09 69 66    l table */....if
012300:  70 65 5D 3D 74 79 70 3B 0D 0A 09 70 74 72 5B 73    pe]=typ;...ptr[s
012310:  74 6F 72 61 67 65 5D 3D 63 6C 61 73 73 5F 69 64    torage]=class_id
012320:  3B 0D 0A 09 70 74 72 5B 6F 66 66 73 65 74 5D 3D    ;...ptr[offset]=
012330:  76 61 6C 75 65 3B 0D 0A 09 70 74 72 5B 6F 66 66    value;...ptr[off
012340:  73 65 74 2B 31 5D 3D 76 61 6C 75 65 3E 3E 38 3B    set+1]=value>>8;
012350:  0D 0A 09 70 74 72 5B 69 6E 64 63 6E 74 5D 3D 63    ...ptr[indcnt]=c
012360:  6F 75 6E 74 3B 0D 0A 09 72 65 74 75 72 6E 20 54    ount;...return T
012370:  52 55 45 3B 0D 0A 09 7D 0D 0A 1A 09 2F 2A 20 61    RUE;...}..../* a
012380:  09 22 5E 5B 52 4F 22 09 20 20 2E 2E 2E 45 53 43    ."^[RO".  ...ESC
012390:  41 50 45 2C 52 2C 4F 0D 0A 38 20 20 4E 20 53 09    APE,R,O..8  N S.
0123A0:  20 22 5E 48 22 09 20 20 20 43 55 52 53 4F 52 20     "^H".   CURSOR 
0123B0:  4C 45 46 54 0D 0A 38 20 20 20 20 20 43 20 20 22    LEFT..8     C  "
0123C0:  5E 55 22 09 20 20 20 43 55 52 53 4F 52 20 43 4F    ^U".   CURSOR CO
0123D0:  4C 55 4D 4E 20 30 0D 0A 31 33 20 20 20 20 43 20    LUMN 0..13    C 
0123E0:  22 5E 27 23 39 44 27 22 20 20 48 4F 4D 45 2E 2E    "^'#9D'"  HOME..
0123F0:  2E 0D 0A 45 20 20 23 39 44 09 22 5E 5B 48 22 09    ...E  #9D."^[H".
012400:  20 20 2E 2E 2E 45 53 43 41 50 45 2C 48 0D 0A 36      ...ESCAPE,H..6
012410:  36 20 4E 20 53 20 43 20 22 5E 27 23 39 45 27 22    6 N S C "^'#9E'"
012420:  20 45 58 50 41 4E 44 20 45 53 43 20 4B 45 59 2E     EXPAND ESC KEY.
012430:  2E 2E 0D 0A 45 20 20 23 39 45 09 20 22 5E 5B 5E    ....E  #9E. "^[^
012440:  5B 22 20 20 20 2E 2E 2E 45 53 43 41 50 45 2C 45    ["   ...ESCAPE,E
012450:  53 43 41 50 45 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A    SCAPE...........
012460:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
012470:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
012480:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
012490:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0124A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0124B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0124C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0124D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0124E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0124F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
012500:  20 28 67 6C 62 70 74 72 3E 3D 65 6E 64 67 6C 62     (glbptr>=endglb
012510:  29 20 0D 0A 09 09 09 65 72 72 6F 72 28 22 67 6F    ) .....error("go
012520:  62 61 6C 20 73 79 6D 62 6F 6C 20 74 61 62 6C 65    bal symbol table
012530:  20 6F 76 65 72 66 6C 6F 77 22 29 3B 0D 0A 09 09     overflow");....
012540:  65 6C 73 65 20 7B 0D 0A 09 09 09 70 74 72 3D 67    else {.....ptr=g
012550:  6C 62 70 74 72 3B 0D 0A 09 09 09 67 6C 62 70 74    lbptr;.....glbpt
012560:  72 2B 3D 73 79 6D 73 69 7A 3B 0D 0A 09 09 09 73    r+=symsiz;.....s
012570:  74 72 63 70 79 28 70 74 72 2B 6E 61 6D 65 2C 6E    trcpy(ptr+name,n
012580:  29 3B 0D 0A 09 09 09 70 74 72 5B 69 64 65 6E 74    );.....ptr[ident
012590:  5D 3D 66 75 6E 63 74 69 6F 6E 3B 0D 0A 09 09 09    ]=function;.....
0125A0:  70 74 72 5B 74 79 70 65 5D 3D 69 6E 74 3B 0D 0A    ptr[type]=int;..
0125B0:  09 09 09 70 74 72 5B 6F 66 66 73 65 74 5D 3D 66    ...ptr[offset]=f
0125C0:  75 6E 63 74 69 6F 6E 3B 0D 0A 09 09 09 70 74 72    unction;.....ptr
0125D0:  5B 6F 66 66 73 65 74 31 5D 3D 0D 0A 09 09 09 70    [offset1]=.....p
0125E0:  74 72 5B 69 6E 64 63 6E 74 5D 3D 0D 0A 09 09 09    tr[indcnt]=.....
0125F0:  70 74 72 5B 73 74 6F 72 61 67 65 5D 3D 30 3B 0D    ptr[storage]=0;.
012600:  0A 09 09 09 7D 0D 0A 09 09 63 73 65 63 74 28 6E    ....}....csect(n
012610:  29 3B 0D 0A 09 09 7D 0D 0A 0D 0A 09 61 72 67 73    );....}.....args
012620:  74 6B 3D 30 3B 09 20 20 20 20 20 20 20 2F 2A 20    tk=0;.       /* 
012630:  69 6E 69 74 20 61 72 67 20 63 6F 75 6E 74 20 2A    init arg count *
012640:  2F 0D 0A 09 77 68 69 6C 65 28 6D 61 74 63 68 28    /...while(match(
012650:  22 29 22 29 20 3D 3D 20 30 29 20 7B 20 20 20 20    ")") == 0) {    
012660:  2F 2A 20 74 68 65 6E 20 63 6F 75 6E 74 20 61 72    /* then count ar
012670:  67 73 20 2A 2F 0D 0A 09 09 2F 2A 20 61 6E 79 20    gs */..../* any 
012680:  6C 65 67 61 6C 20 6E 61 6D 65 20 62 75 6D 70 73    legal name bumps
012690:  20 61 72 67 20 63 6F 75 6E 74 20 2A 2F 0D 0A 09     arg count */...
0126A0:  09 69 66 20 28 73 79 6D 6E 61 6D 65 28 6E 29 29    .if (symname(n))
0126B0:  20 61 72 67 73 74 6B 3D 61 72 67 73 74 6B 2B 32     argstk=argstk+2
0126C0:  3B 0D 0A 09 09 65 6C 73 65 7B 0D 0A 09 09 09 65    ;....else{.....e
0126D0:  72 72 6F 72 28 22 69 6C 6C 65 67 61 6C 20 61 72    rror("illegal ar
0126E0:  67 75 6D 65 6E 74 20 6E 61 6D 65 22 29 3B 0D 0A    gument name");..
0126F0:  09 09 09 6A 75 6E 6B 28 29 3B 0D 0A 09 09 09 7D    ...junk();.....}
012700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0127A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0127B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0127C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0127D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0127E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0127F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0128A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0128B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0128C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0128D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0128E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0128F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
012900:  0D 0A 09 09 62 6C 61 6E 6B 73 28 29 3B 0D 0A 09    ....blanks();...
012910:  09 2F 2A 20 69 66 20 6E 6F 74 20 63 6C 6F 73 69    ./* if not closi
012920:  6E 67 20 70 61 72 65 6E 2C 20 73 68 6F 75 6C 64    ng paren, should
012930:  20 62 65 20 61 20 63 6F 6D 6D 61 20 2A 2F 0D 0A     be a comma */..
012940:  09 09 69 66 28 20 73 74 72 65 71 28 6C 69 6E 65    ..if( streq(line
012950:  2B 6C 70 74 72 2C 22 29 22 29 20 3D 3D 20 30 29    +lptr,")") == 0)
012960:  20 7B 0D 0A 09 09 09 69 66 28 6D 61 74 63 68 28     {.....if(match(
012970:  22 2C 22 29 3D 3D 30 29 0D 0A 09 09 09 65 72 72    ",")==0).....err
012980:  6F 72 28 22 65 78 70 65 63 74 65 64 20 63 6F 6D    or("expected com
012990:  6D 61 22 29 3B 0D 0A 09 09 09 7D 0D 0A 09 09 69    ma");.....}....i
0129A0:  66 28 65 6E 64 73 74 28 29 29 62 72 65 61 6B 3B    f(endst())break;
0129B0:  0D 0A 09 09 7D 0D 0A 09 6C 6F 63 70 74 72 3D 73    ....}...locptr=s
0129C0:  74 61 72 74 6C 6F 63 3B 09 2F 2A 20 22 63 6C 65    tartloc;./* "cle
0129D0:  61 72 22 20 6C 6F 63 61 6C 20 73 79 6D 62 6F 6C    ar" local symbol
0129E0:  20 74 61 62 6C 65 2A 2F 0D 0A 09 73 70 3D 30 3B     table*/...sp=0;
0129F0:  09 09 20 20 20 2F 2A 20 70 72 65 73 65 74 20 73    ..   /* preset s
012A00:  74 61 63 6B 20 70 74 72 20 2A 2F 0D 0A 09 77 68    tack ptr */...wh
012A10:  69 6C 65 28 61 72 67 73 74 6B 29 20 7B 0D 0A 09    ile(argstk) {...
012A20:  09 2F 2A 20 6E 6F 77 20 6C 65 74 20 75 73 65 72    ./* now let user
012A30:  20 64 65 63 6C 61 72 65 20 77 68 61 74 20 74 79     declare what ty
012A40:  70 65 73 20 6F 66 20 74 68 69 6E 67 73 20 2A 2F    pes of things */
012A50:  0D 0A 09 09 2F 2A 20 20 20 20 20 20 74 68 6F 73    ..../*      thos
012A60:  65 20 61 72 67 75 6D 65 6E 74 73 20 77 65 72 65    e arguments were
012A70:  20 2A 2F 0D 0A 09 09 69 66 20 28 61 6D 61 74 63     */....if (amatc
012A80:  68 28 22 63 68 61 72 22 2C 34 29 29 20 7B 0D 0A    h("char",4)) {..
012A90:  09 09 09 67 65 74 61 72 67 28 63 63 68 61 72 29    ...getarg(cchar)
012AA0:  3B 0D 0A 09 09 09 6E 73 28 29 3B 0D 0A 09 09 09    ;.....ns();.....
012AB0:  7D 0D 0A 09 09 65 6C 73 65 20 69 66 20 28 61 6D    }....else if (am
012AC0:  61 74 63 68 28 22 69 6E 74 22 2C 33 29 29 20 7B    atch("int",3)) {
012AD0:  0D 0A 09 09 09 67 65 74 61 72 67 28 63 69 6E 74    .....getarg(cint
012AE0:  29 3B 0D 0A 09 09 09 6E 73 28 29 3B 0D 0A 09 09    );.....ns();....
012AF0:  09 7D 0D 0A 09 09 65 6C 73 65 20 7B 0D 0A 09 09    .}....else {....
012B00:  0D 0A 0D 0A 23 69 66 6E 64 65 66 20 54 52 55 45    ....#ifndef TRUE
012B10:  09 2F 2A 20 73 65 65 20 69 66 20 6E 65 65 64 20    ./* see if need 
012B20:  69 6E 63 6C 75 64 65 20 66 69 6C 65 20 2A 2F 0D    include file */.
012B30:  0A 23 69 6E 63 6C 75 64 65 20 3C 63 2E 64 65 66    .#include <c.def
012B40:  3E 0D 0A 23 65 6E 64 69 66 0D 0A 0D 0A 2F 2A 09    >..#endif..../*.
012B50:  09 09 09 09 2A 2F 0D 0A 2F 2A 09 47 65 74 20 72    ....*/../*.Get r
012B60:  65 71 75 69 72 65 64 20 61 72 72 61 79 20 73 69    equired array si
012B70:  7A 65 09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 2A    ze..*/../*.....*
012B80:  2F 0D 0A 2F 2A 20 69 6E 76 6F 6B 65 64 20 77 68    /../* invoked wh
012B90:  65 6E 20 64 65 63 6C 61 72 65 64 20 76 61 72 69    en declared vari
012BA0:  61 62 6C 65 20 69 73 20 66 6F 6C 6C 77 65 64 20    able is follwed 
012BB0:  62 79 20 22 5B 22 20 2A 2F 0D 0A 2F 2A 20 20 20    by "[" */../*   
012BC0:  20 20 20 74 68 69 73 20 72 6F 75 74 69 6E 65 20       this routine 
012BD0:  6D 61 6B 65 73 20 73 75 62 73 63 72 69 70 74 20    makes subscript 
012BE0:  74 68 65 20 61 62 73 6F 6C 75 74 65 20 2A 2F 0D    the absolute */.
012BF0:  0A 2F 2A 20 20 20 20 20 20 73 69 7A 65 20 6F 66    ./*      size of
012C00:  20 74 68 65 20 61 72 72 61 79 2E 20 2A 2F 0D 0A     the array. */..
012C10:  6E 65 65 64 73 75 62 28 29 0D 0A 7B 0D 0A 09 69    needsub()..{...i
012C20:  6E 74 20 6E 75 6D 5B 31 5D 3B 0D 0A 09 69 66 20    nt num[1];...if 
012C30:  28 6D 61 74 63 68 28 22 5D 22 29 29 20 72 65 74    (match("]")) ret
012C40:  75 72 6E 20 30 3B 09 2F 2A 20 6E 75 6C 6C 20 73    urn 0;./* null s
012C50:  69 7A 65 20 2A 2F 0D 0A 09 69 66 20 28 6E 75 6D    ize */...if (num
012C60:  62 65 72 28 6E 75 6D 29 3D 3D 30 29 20 7B 09 09    ber(num)==0) {..
012C70:  2F 2A 20 67 6F 20 61 66 74 65 72 20 61 20 6E 75    /* go after a nu
012C80:  6D 62 65 72 20 2A 2F 0D 0A 09 09 65 72 72 6F 72    mber */....error
012C90:  28 22 6D 75 73 74 20 62 65 20 63 6F 6E 73 74 61    ("must be consta
012CA0:  6E 74 22 29 3B 20 20 20 20 20 2F 2A 20 69 74 20    nt");     /* it 
012CB0:  69 73 6E 27 74 20 2A 2F 0D 0A 09 09 77 68 69 6C    isn't */....whil
012CC0:  65 28 63 68 28 29 20 21 3D 20 27 2C 27 20 26 26    e(ch() != ',' &&
012CD0:  20 63 68 28 29 20 21 3D 20 27 3B 27 20 26 26 20     ch() != ';' && 
012CE0:  63 68 28 29 29 20 67 63 68 28 29 3B 0D 0A 09 09    ch()) gch();....
012CF0:  72 65 74 75 72 6E 20 31 3B 20 0D 0A 09 09 7D 0D    return 1; ....}.
012D00:  09 65 72 72 6F 72 28 22 77 72 6F 6E 67 20 6E 75    .error("wrong nu
012D10:  6D 62 65 72 20 61 72 67 73 22 29 3B 0D 0A 09 09    mber args");....
012D20:  09 62 72 65 61 6B 3B 0D 0A 09 09 09 7D 0D 0A 09    .break;.....}...
012D30:  09 7D 0D 0A 09 69 66 28 73 74 61 74 65 6D 65 6E    .}...if(statemen
012D40:  74 28 29 21 3D 73 74 72 65 74 75 72 6E 29 20 20    t()!=streturn)  
012D50:  7B 0D 0A 09 09 09 2F 2A 20 64 6F 20 61 20 73 74    {...../* do a st
012D60:  61 74 65 6D 65 6E 74 2C 20 62 75 74 20 69 66 20    atement, but if 
012D70:  2A 2F 0D 0A 09 09 09 2F 2A 20 69 74 27 73 20 61    */...../* it's a
012D80:  20 72 65 74 75 72 6E 2C 20 73 6B 69 70 20 2A 2F     return, skip */
012D90:  0D 0A 09 09 09 2F 2A 20 63 6C 65 61 6E 69 6E 67    ...../* cleaning
012DA0:  20 75 70 20 74 68 65 20 73 74 61 63 6B 20 2A 2F     up the stack */
012DB0:  0D 0A 09 09 6D 6F 64 73 74 6B 28 30 29 3B 0D 0A    ....modstk(0);..
012DC0:  09 09 72 65 74 28 29 3B 0D 0A 09 09 7D 0D 0A 09    ..ret();....}...
012DD0:  73 70 3D 30 3B 0D 0A 09 6C 6F 63 70 74 72 3D 73    sp=0;...locptr=s
012DE0:  74 61 72 74 6C 6F 63 3B 0D 0A 09 64 75 6D 70 6C    tartloc;...dumpl
012DF0:  69 74 73 28 29 3B 0D 0A 09 6C 69 74 6C 61 62 3D    its();...litlab=
012E00:  67 65 74 6C 61 62 65 6C 28 29 3B 0D 0A 09 7D 0D    getlabel();...}.
012E10:  0A 2F 2A 09 09 09 09 20 20 20 20 20 20 2A 2F 0D    ./*....      */.
012E20:  0A 2F 2A 20 20 20 20 20 20 44 65 63 6C 61 72 65    ./*      Declare
012E30:  20 61 72 67 75 6D 65 6E 74 20 74 79 70 65 73 09     argument types.
012E40:  20 20 2A 2F 0D 0A 2F 2A 09 09 09 09 20 20 20 20      */../*....    
012E50:  20 20 2A 2F 0D 0A 2F 2A 20 63 61 6C 6C 65 64 20      */../* called 
012E60:  66 72 6F 6D 20 22 6E 65 77 66 75 6E 63 22 20 74    from "newfunc" t
012E70:  68 69 73 20 72 6F 75 74 69 6E 65 20 61 64 64 73    his routine adds
012E80:  20 61 20 65 6E 74 72 79 20 69 6E 20 74 68 65 20     a entry in the 
012E90:  2A 2F 0D 0A 2F 2A 20 20 20 20 20 20 6C 6F 63 61    */../*      loca
012EA0:  6C 20 73 79 6D 62 6F 6C 20 74 61 62 6C 65 20 66    l symbol table f
012EB0:  6F 72 20 65 61 63 68 20 6E 61 6D 65 64 20 61 72    or each named ar
012EC0:  67 75 6D 65 6E 74 20 2A 2F 0D 0A 67 65 74 61 72    gument */..getar
012ED0:  67 28 74 29 09 20 20 20 20 20 20 20 2F 2A 20 74    g(t).       /* t
012EE0:  20 3D 20 63 63 68 61 72 20 6F 72 20 63 69 6E 74     = cchar or cint
012EF0:  20 2A 2F 0D 0A 69 6E 74 20 74 3B 0D 0A 7B 0D 0A     */..int t;..{..
012F00:  0A 09 69 66 20 28 6E 75 6D 5B 30 5D 3C 30 29 20    ..if (num[0]<0) 
012F10:  7B 0D 0A 09 09 65 72 72 6F 72 28 22 6E 65 67 61    {....error("nega
012F20:  74 69 76 65 20 73 69 7A 65 20 69 6C 6C 65 67 61    tive size illega
012F30:  6C 22 29 3B 0D 0A 09 09 6E 75 6D 5B 30 5D 3D 28    l");....num[0]=(
012F40:  2D 6E 75 6D 5B 30 5D 29 3B 0D 0A 09 09 7D 0D 0A    -num[0]);....}..
012F50:  09 6E 65 65 64 62 72 61 63 6B 28 22 5D 22 29 3B    .needbrack("]");
012F60:  09 09 2F 2A 20 66 6F 72 63 65 20 73 69 6E 67 6C    ../* force singl
012F70:  65 20 64 69 6D 65 6E 73 69 6F 6E 20 2A 2F 0D 0A    e dimension */..
012F80:  09 72 65 74 75 72 6E 20 6E 75 6D 5B 30 5D 3B 09    .return num[0];.
012F90:  09 2F 2A 20 61 6E 64 20 72 65 74 75 72 6E 20 73    ./* and return s
012FA0:  69 7A 65 20 2A 2F 0D 0A 09 7D 0D 0A 2F 2A 09 09    ize */...}../*..
012FB0:  09 09 2A 2F 0D 0A 2F 2A 20 20 20 20 20 20 42 65    ..*/../*      Be
012FC0:  67 69 6E 20 61 20 66 75 6E 63 74 69 6F 6E 09 2A    gin a function.*
012FD0:  2F 0D 0A 2F 2A 09 09 09 09 2A 2F 0D 0A 2F 2A 20    /../*....*/../* 
012FE0:  43 61 6C 6C 65 64 20 66 72 6F 6D 20 22 70 61 72    Called from "par
012FF0:  73 65 22 20 74 68 69 73 20 72 6F 75 74 69 6E 65    se" this routine
013000:  20 74 72 69 65 73 20 74 6F 20 6D 61 6B 65 20 61     tries to make a
013010:  20 66 75 6E 63 74 69 6F 6E 20 2A 2F 0D 0A 2F 2A     function */../*
013020:  20 20 20 20 20 20 6F 75 74 20 6F 66 20 77 68 61          out of wha
013030:  74 20 66 6F 6C 6C 6F 77 73 2E 20 20 20 20 2A 2F    t follows.    */
013040:  0D 0A 6E 65 77 66 75 6E 63 28 29 0D 0A 7B 0D 0A    ..newfunc()..{..
013050:  09 63 68 61 72 20 6E 5B 6E 61 6D 65 73 69 7A 65    .char n[namesize
013060:  5D 2C 2A 70 74 72 3B 0D 0A 09 69 66 20 28 73 79    ],*ptr;...if (sy
013070:  6D 6E 61 6D 65 28 6E 29 20 3D 3D 20 30 29 20 7B    mname(n) == 0) {
013080:  0D 0A 09 09 65 72 72 6F 72 28 22 69 6C 6C 65 67    ....error("illeg
013090:  61 6C 20 66 75 6E 63 74 69 6F 6E 20 6F 72 20 64    al function or d
0130A0:  65 63 6C 61 72 61 74 69 6F 6E 22 29 3B 0D 0A 09    eclaration");...
0130B0:  09 6B 69 6C 6C 28 29 3B 0D 0A 09 09 72 65 74 75    .kill();....retu
0130C0:  72 6E 3B 0D 0A 09 09 7D 0D 0A 09 69 66 20 28 21    rn;....}...if (!
0130D0:  6D 61 74 63 68 28 22 28 22 29 29 20 7B 0D 0A 09    match("(")) {...
0130E0:  09 65 72 72 6F 72 28 22 69 6C 6C 65 67 61 6C 20    .error("illegal 
0130F0:  66 75 6E 63 74 69 6F 6E 20 6F 72 20 64 65 63 6C    function or decl
013100:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
013110:  10 00 01 00 02 09 52 E5 10 00 C1 02 00 00 00 02    ......R.........
013120:  10 00 C6 02 00 00 00 02 10 00 C2 02 00 00 00 02    ................
013130:  10 00 C7 02 00 00 00 02 10 00 C3 02 00 00 00 02    ................
013140:  10 00 C8 02 00 00 00 02 10 00 C4 02 00 00 00 02    ................
013150:  10 00 C9 02 00 00 00 02 10 00 C5 02 00 00 00 02    ................
013160:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
013170:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
013180:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
013190:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0131A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0131B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0131C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0131D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0131E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0131F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
013200:  09 63 68 61 72 20 6E 5B 6E 61 6D 65 73 69 7A 65    .char n[namesize
013210:  5D 2C 63 3B 69 6E 74 20 6A 2C 63 6F 75 6E 74 3B    ],c;int j,count;
013220:  0D 0A 09 77 68 69 6C 65 28 31 29 20 7B 0D 0A 09    ...while(1) {...
013230:  09 63 6F 75 6E 74 3D 30 3B 0D 0A 09 09 69 66 20    .count=0;....if 
013240:  28 61 72 67 73 74 6B 20 3D 3D 20 30 29 20 72 65    (argstk == 0) re
013250:  74 75 72 6E 3B 20 20 20 2F 2A 20 6E 6F 20 6D 6F    turn;   /* no mo
013260:  72 65 20 61 72 67 73 20 2A 2F 0D 0A 09 09 69 66    re args */....if
013270:  20 28 6D 61 74 63 68 28 22 2A 22 29 29 20 7B 0D     (match("*")) {.
013280:  0A 09 09 09 6A 3D 70 6F 69 6E 74 65 72 3B 0D 0A    ....j=pointer;..
013290:  09 09 09 2B 2B 63 6F 75 6E 74 3B 0D 0A 09 09 09    ...++count;.....
0132A0:  77 68 69 6C 65 28 63 68 28 29 3D 3D 27 2A 27 29    while(ch()=='*')
0132B0:  20 7B 0D 0A 09 09 09 09 2B 2B 63 6F 75 6E 74 3B     {......++count;
0132C0:  0D 0A 09 09 09 09 67 63 68 28 29 3B 0D 0A 09 09    ......gch();....
0132D0:  09 09 7D 0D 0A 09 09 09 7D 0D 0A 09 09 65 6C 73    ..}.....}....els
0132E0:  65 20 6A 3D 76 61 72 69 61 62 6C 65 3B 0D 0A 09    e j=variable;...
0132F0:  09 69 66 20 28 73 79 6D 6E 61 6D 65 28 6E 29 20    .if (symname(n) 
013300:  3D 3D 20 30 29 20 69 6C 6C 6E 61 6D 65 28 29 3B    == 0) illname();
013310:  0D 0A 09 09 69 66 20 28 66 69 6E 64 6C 6F 63 28    ....if (findloc(
013320:  6E 29 29 20 6D 75 6C 74 69 64 65 66 28 6E 29 3B    n)) multidef(n);
013330:  0D 0A 09 09 64 61 74 61 5F 70 61 72 73 65 28 6E    ....data_parse(n
013340:  2C 74 2C 73 74 6B 61 72 67 2C 6A 2C 63 6F 75 6E    ,t,stkarg,j,coun
013350:  74 29 3B 0D 0A 09 09 69 66 28 65 6E 64 73 74 28    t);....if(endst(
013360:  29 29 72 65 74 75 72 6E 3B 0D 0A 09 09 69 66 28    ))return;....if(
013370:  6D 61 74 63 68 28 22 2C 22 29 3D 3D 30 29 65 72    match(",")==0)er
013380:  72 6F 72 28 22 65 78 70 65 63 74 65 64 20 63 6F    ror("expected co
013390:  6D 6D 61 22 29 3B 0D 0A 09 09 7D 0D 0A 09 7D 0D    mma");....}...}.
0133A0:  0A 2F 2A 09 09 09 09 20 20 20 20 20 20 2A 2F 0D    ./*....      */.
0133B0:  0A 2F 2A 20 20 20 20 20 20 53 74 61 74 65 6D 65    ./*      Stateme
0133C0:  6E 74 20 70 61 72 73 65 72 09 09 2A 2F 0D 0A 2F    nt parser..*/../
0133D0:  2A 09 09 09 09 20 20 20 20 20 20 2A 2F 0D 0A 2F    *....      */../
0133E0:  2A 20 63 61 6C 6C 65 64 20 77 68 65 6E 65 76 65    * called wheneve
0133F0:  72 20 73 79 6E 74 61 78 20 72 65 71 75 69 72 65    r syntax require
013400:  2F 38 31 09 2A 2F 0D 0A 6E 65 65 64 63 62 72 61    /81.*/..needcbra
013410:  63 65 28 29 0D 0A 7B 0D 0A 09 69 66 20 28 6D 61    ce()..{...if (ma
013420:  74 63 68 28 22 7D 22 29 29 09 72 65 74 75 72 6E    tch("}")).return
013430:  20 46 41 4C 53 45 3B 0D 0A 09 65 72 72 6F 72 28     FALSE;...error(
013440:  22 4D 69 73 73 69 6E 67 20 72 69 67 68 74 20 62    "Missing right b
013450:  72 61 63 65 22 29 3B 0D 0A 09 6A 75 6E 6B 28 29    race");...junk()
013460:  3B 0D 0A 09 72 65 74 75 72 6E 20 54 52 55 45 3B    ;...return TRUE;
013470:  0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09 20 20 20 20    ...}../*....    
013480:  20 20 2A 2F 0D 0A 2F 2A 20 20 20 20 20 20 43 6F      */../*      Co
013490:  6D 70 6F 75 6E 64 20 73 74 61 74 65 6D 65 6E 74    mpound statement
0134A0:  09 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 09 09 09    .      */../*...
0134B0:  09 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 20 61 6C    .      */../* al
0134C0:  6C 6F 77 20 61 6E 79 20 6E 75 6D 62 65 72 20 6F    low any number o
0134D0:  66 20 73 74 61 74 65 6D 65 6E 74 73 20 74 6F 20    f statements to 
0134E0:  66 61 6C 6C 20 62 65 74 77 65 65 6E 20 22 7B 7D    fall between "{}
0134F0:  22 20 2A 2F 0D 0A 63 6F 6D 70 6F 75 6E 64 28 29    " */..compound()
013500:  0D 0A 09 7B 0D 0A 09 2B 2B 6E 63 6D 70 3B 09 20    ...{...++ncmp;. 
013510:  2F 2A 20 6E 65 77 20 6C 65 76 65 6C 20 6F 70 65    /* new level ope
013520:  6E 20 2A 2F 0D 0A 09 77 68 69 6C 65 28 6D 61 74    n */...while(mat
013530:  63 68 28 22 7D 22 29 3D 3D 30 29 0D 0A 09 09 69    ch("}")==0)....i
013540:  66 28 65 6F 66 29 20 72 65 74 75 72 6E 3B 0D 0A    f(eof) return;..
013550:  09 09 65 6C 73 65 20 73 74 61 74 65 6D 65 6E 74    ..else statement
013560:  28 29 3B 0D 0A 09 2D 2D 6E 63 6D 70 3B 09 20 2F    ();...--ncmp;. /
013570:  2A 20 63 6C 6F 73 65 20 63 75 72 72 65 6E 74 20    * close current 
013580:  6C 65 76 65 6C 20 2A 2F 0D 0A 09 7D 0D 0A 2F 2A    level */...}../*
013590:  09 09 09 09 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A    ....      */../*
0135A0:  09 20 20 20 20 20 20 22 69 66 22 20 73 74 61 74    .      "if" stat
0135B0:  65 6D 65 6E 74 09 20 20 2A 2F 0D 0A 2F 2A 09 09    ement.  */../*..
0135C0:  09 09 20 20 20 20 20 20 2A 2F 0D 0A 64 6F 69 66    ..      */..doif
0135D0:  28 29 0D 0A 09 7B 0D 0A 09 69 6E 74 20 66 6C 65    ()...{...int fle
0135E0:  76 2C 66 73 70 2C 66 6C 61 62 31 2C 66 6C 61 62    v,fsp,flab1,flab
0135F0:  32 3B 0D 0A 09 66 6C 65 76 3D 6C 6F 63 70 74 72    2;...flev=locptr
013600:  73 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 20 20 20    s      */../*   
013610:  20 20 20 61 20 73 74 61 74 65 6D 65 6E 74 2E 09       a statement..
013620:  09 20 20 20 20 20 2A 2F 0D 0A 2F 2A 20 20 74 68    .     */../*  th
013630:  69 73 20 72 6F 75 74 69 6E 65 20 70 65 72 66 6F    is routine perfo
013640:  72 6D 73 20 74 68 61 74 20 73 74 61 74 65 6D 65    rms that stateme
013650:  6E 74 20 2A 2F 0D 0A 2F 2A 20 20 61 6E 64 20 72    nt */../*  and r
013660:  65 74 75 72 6E 73 20 61 20 6E 75 6D 62 65 72 20    eturns a number 
013670:  74 65 6C 6C 69 6E 67 20 77 68 69 63 68 20 6F 6E    telling which on
013680:  65 20 2A 2F 0D 0A 73 74 61 74 65 6D 65 6E 74 28    e */..statement(
013690:  29 0D 0A 20 7B 20 20 20 20 20 20 69 66 20 28 21    ).. {      if (!
0136A0:  63 68 28 29 20 26 26 20 65 6F 66 29 20 72 65 74    ch() && eof) ret
0136B0:  75 72 6E 3B 0D 0A 09 65 6C 73 65 20 69 66 28 61    urn;...else if(a
0136C0:  6D 61 74 63 68 28 22 63 68 61 72 22 2C 34 29 29    match("char",4))
0136D0:  20 7B 0D 0A 09 09 64 65 63 6C 6C 6F 63 28 63 63     {....declloc(cc
0136E0:  68 61 72 29 3B 0D 0A 09 09 6E 73 28 29 3B 0D 0A    har);....ns();..
0136F0:  09 09 7D 0D 0A 09 65 6C 73 65 20 69 66 28 61 6D    ..}...else if(am
013700:  61 74 63 68 28 22 69 6E 74 22 2C 33 29 29 20 7B    atch("int",3)) {
013710:  0D 0A 09 09 64 65 63 6C 6C 6F 63 28 63 69 6E 74    ....declloc(cint
013720:  29 3B 0D 0A 09 09 6E 73 28 29 3B 0D 0A 09 09 7D    );....ns();....}
013730:  0D 0A 09 65 6C 73 65 20 69 66 28 6D 61 74 63 68    ...else if(match
013740:  28 22 7B 22 29 29 20 63 6F 6D 70 6F 75 6E 64 28    ("{")) compound(
013750:  29 3B 0D 0A 09 65 6C 73 65 20 69 66 28 61 6D 61    );...else if(ama
013760:  74 63 68 28 22 69 66 22 2C 32 29 29 20 7B 0D 0A    tch("if",2)) {..
013770:  09 09 64 6F 69 66 28 29 3B 0D 0A 09 09 6C 61 73    ..doif();....las
013780:  74 73 74 3D 73 74 69 66 3B 0D 0A 09 09 7D 0D 0A    tst=stif;....}..
013790:  09 65 6C 73 65 20 69 66 28 61 6D 61 74 63 68 28    .else if(amatch(
0137A0:  22 77 68 69 6C 65 22 2C 35 29 29 20 7B 0D 0A 09    "while",5)) {...
0137B0:  09 64 6F 77 68 69 6C 65 28 29 3B 0D 0A 09 09 6C    .dowhile();....l
0137C0:  61 73 74 73 74 3D 73 74 77 68 69 6C 65 3B 09 0D    astst=stwhile;..
0137D0:  0A 09 09 7D 0D 0A 09 65 6C 73 65 20 69 66 20 28    ...}...else if (
0137E0:  61 6D 61 74 63 68 28 22 66 6F 72 22 2C 33 29 29    amatch("for",3))
0137F0:  20 7B 0D 0A 09 09 64 6F 66 6F 72 28 29 3B 0D 0A     {....dofor();..
013800:  3B 20 20 20 20 2F 2A 20 72 65 63 6F 72 64 20 63    ;    /* record c
013810:  75 72 72 65 6E 74 20 6C 6F 63 61 6C 20 6C 65 76    urrent local lev
013820:  65 6C 20 2A 2F 0D 0A 09 66 73 70 3D 73 70 3B 09    el */...fsp=sp;.
013830:  20 2F 2A 20 72 65 63 6F 72 64 20 63 75 72 72 65     /* record curre
013840:  6E 74 20 73 74 6B 20 70 74 72 20 2A 2F 0D 0A 09    nt stk ptr */...
013850:  66 6C 61 62 31 3D 20 67 65 74 6C 61 62 65 6C 28    flab1= getlabel(
013860:  29 3B 20 2F 2A 20 67 65 74 20 6C 61 62 65 6C 20    ); /* get label 
013870:  66 6F 72 20 66 61 6C 73 65 20 62 72 61 6E 63 68    for false branch
013880:  20 2A 2F 0D 0A 09 74 65 73 74 28 66 6C 61 62 31     */...test(flab1
013890:  29 3B 20 20 20 20 2F 2A 67 65 74 20 65 78 70 72    );    /*get expr
0138A0:  65 73 73 69 6F 6E 2C 20 61 6E 64 20 62 72 61 6E    ession, and bran
0138B0:  63 68 20 66 61 6C 73 65 20 2A 2F 0D 0A 09 73 74    ch false */...st
0138C0:  61 74 65 6D 65 6E 74 28 29 3B 20 20 20 20 2F 2A    atement();    /*
0138D0:  20 69 66 20 74 72 75 65 2C 20 64 6F 20 61 20 73     if true, do a s
0138E0:  74 61 74 65 6D 65 6E 74 20 2A 2F 0D 0A 09 73 70    tatement */...sp
0138F0:  3D 6D 6F 64 73 74 6B 28 66 73 70 29 3B 20 2F 2A    =modstk(fsp); /*
013900:  20 74 68 65 6E 20 63 6C 65 61 6E 20 75 70 20 74     then clean up t
013910:  68 65 20 73 74 61 63 6B 20 2A 2F 0D 0A 09 6C 6F    he stack */...lo
013920:  63 70 74 72 3D 66 6C 65 76 3B 20 20 20 20 2F 2A    cptr=flev;    /*
013930:  20 61 6E 64 20 64 65 61 6C 6C 6F 63 61 74 65 20     and deallocate 
013940:  61 6E 79 20 6C 6F 63 61 6C 73 20 2A 2F 0D 0A 09    any locals */...
013950:  69 66 20 28 61 6D 61 74 63 68 28 22 65 6C 73 65    if (amatch("else
013960:  22 2C 34 29 3D 3D 30 29 09 2F 2A 20 69 66 2E 2E    ",4)==0)./* if..
013970:  2E 65 6C 73 65 20 3F 20 2A 2F 0D 0A 09 09 2F 2A    .else ? */..../*
013980:  20 73 69 6D 70 6C 65 20 22 69 66 22 2E 2E 2E 70     simple "if"...p
013990:  72 69 6E 74 20 66 61 6C 73 65 20 6C 61 62 65 6C    rint false label
0139A0:  20 2A 2F 0D 0A 09 09 7B 73 70 72 69 6E 74 6C 61     */....{sprintla
0139B0:  62 65 6C 28 66 6C 61 62 31 29 3B 0D 0A 09 09 72    bel(flab1);....r
0139C0:  65 74 75 72 6E 3B 20 2F 2A 20 61 6E 64 20 65 78    eturn; /* and ex
0139D0:  69 74 20 2A 2F 0D 0A 09 09 7D 0D 0A 09 2F 2A 20    it */....}.../* 
0139E0:  61 6E 20 22 69 66 2E 2E 2E 65 6C 73 65 22 20 73    an "if...else" s
0139F0:  74 61 74 65 6D 65 6E 74 2E 20 2A 2F 0D 0A 09 6A    tatement. */...j
013A00:  09 09 6C 61 73 74 73 74 3D 73 74 66 6F 72 3B 0D    ..lastst=stfor;.
013A10:  0A 09 09 7D 0D 0A 09 65 6C 73 65 20 69 66 20 28    ...}...else if (
013A20:  61 6D 61 74 63 68 28 22 73 77 69 74 63 68 22 2C    amatch("switch",
013A30:  36 29 29 20 7B 0D 0A 09 09 64 6F 73 77 69 74 63    6)) {....doswitc
013A40:  68 28 29 3B 0D 0A 09 09 6C 61 73 74 73 74 3D 73    h();....lastst=s
013A50:  74 73 77 69 74 63 68 3B 0D 0A 09 09 7D 0D 0A 09    tswitch;....}...
013A60:  65 6C 73 65 20 69 66 28 61 6D 61 74 63 68 28 22    else if(amatch("
013A70:  72 65 74 75 72 6E 22 2C 36 29 29 20 7B 0D 0A 09    return",6)) {...
013A80:  09 64 6F 72 65 74 75 72 6E 28 29 3B 0D 0A 09 09    .doreturn();....
013A90:  6E 73 28 29 3B 0D 0A 09 09 6C 61 73 74 73 74 3D    ns();....lastst=
013AA0:  73 74 72 65 74 75 72 6E 3B 0D 0A 09 09 7D 0D 0A    streturn;....}..
013AB0:  09 65 6C 73 65 20 69 66 28 61 6D 61 74 63 68 28    .else if(amatch(
013AC0:  22 62 72 65 61 6B 22 2C 35 29 29 20 7B 0D 0A 09    "break",5)) {...
013AD0:  09 64 6F 62 72 65 61 6B 28 29 3B 0D 0A 09 09 6E    .dobreak();....n
013AE0:  73 28 29 3B 0D 0A 09 09 6C 61 73 74 73 74 3D 73    s();....lastst=s
013AF0:  74 62 72 65 61 6B 3B 0D 0A 09 09 7D 0D 0A 09 65    tbreak;....}...e
013B00:  6C 73 65 20 69 66 28 61 6D 61 74 63 68 28 22 63    lse if(amatch("c
013B10:  6F 6E 74 69 6E 75 65 22 2C 38 29 29 20 7B 0D 0A    ontinue",8)) {..
013B20:  09 09 64 6F 63 6F 6E 74 28 29 3B 0D 0A 09 09 6E    ..docont();....n
013B30:  73 28 29 3B 0D 0A 09 09 6C 61 73 74 73 74 3D 73    s();....lastst=s
013B40:  74 63 6F 6E 74 3B 0D 0A 09 09 7D 0D 0A 09 65 6C    tcont;....}...el
013B50:  73 65 20 69 66 28 6D 61 74 63 68 28 22 3B 22 29    se if(match(";")
013B60:  29 3B 0D 0A 09 65 6C 73 65 20 69 66 28 6D 61 74    );...else if(mat
013B70:  63 68 28 22 23 61 73 6D 22 29 29 20 7B 0D 0A 09    ch("#asm")) {...
013B80:  09 64 6F 61 73 6D 28 29 3B 0D 0A 09 09 6E 73 28    .doasm();....ns(
013B90:  29 3B 0D 0A 09 09 6C 61 73 74 73 74 3D 73 74 61    );....lastst=sta
013BA0:  73 6D 3B 0D 0A 09 09 7D 0D 0A 09 2F 2A 20 69 66    sm;....}.../* if
013BB0:  20 6E 6F 74 68 69 6E 67 20 65 6C 73 65 2C 20 61     nothing else, a
013BC0:  73 73 75 6D 65 20 69 74 27 73 20 61 6E 20 65 78    ssume it's an ex
013BD0:  70 72 65 73 73 69 6F 6E 20 2A 2F 0D 0A 09 65 6C    pression */...el
013BE0:  73 65 20 7B 0D 0A 09 09 65 78 70 72 65 73 73 69    se {....expressi
013BF0:  6F 6E 28 29 3B 0D 0A 09 09 6E 73 28 29 3B 0D 0A    on();....ns();..
013C00:  75 6D 70 28 66 6C 61 62 32 3D 67 65 74 6C 61 62    ump(flab2=getlab
013C10:  65 6C 28 29 29 3B 20 2F 2A 20 6A 75 6D 70 20 61    el()); /* jump a
013C20:  72 6F 75 6E 64 20 74 68 65 20 66 61 6C 73 65 20    round the false 
013C30:  63 6F 64 65 20 2A 2F 0D 0A 09 73 70 72 69 6E 74    code */...sprint
013C40:  6C 61 62 65 6C 28 66 6C 61 62 31 29 3B 20 20 20    label(flab1);   
013C50:  20 2F 2A 20 70 72 69 6E 74 20 74 72 75 65 20 6C     /* print true l
013C60:  61 62 65 6C 20 2A 2F 0D 0A 09 73 74 61 74 65 6D    abel */...statem
013C70:  65 6E 74 28 29 3B 09 09 2F 2A 20 61 6E 64 20 64    ent();../* and d
013C80:  6F 20 65 6C 73 65 20 63 6C 61 75 73 65 20 2A 2F    o else clause */
013C90:  0D 0A 09 73 70 3D 6D 6F 64 73 74 6B 28 66 73 70    ...sp=modstk(fsp
013CA0:  29 3B 09 09 2F 2A 20 74 68 65 6E 20 63 6C 65 61    );../* then clea
013CB0:  6E 20 75 70 20 73 74 61 63 6B 20 70 74 72 20 2A    n up stack ptr *
013CC0:  2F 0D 0A 09 6C 6F 63 70 74 72 3D 66 6C 65 76 3B    /...locptr=flev;
013CD0:  09 09 2F 2A 20 64 65 6C 6C 6F 63 61 74 65 20 6C    ../* dellocate l
013CE0:  6F 63 61 6C 73 20 2A 2F 0D 0A 09 73 70 72 69 6E    ocals */...sprin
013CF0:  74 6C 61 62 65 6C 28 66 6C 61 62 32 29 3B 09 2F    tlabel(flab2);./
013D00:  2A 20 70 72 69 6E 74 20 74 72 75 65 20 6C 61 62    * print true lab
013D10:  65 6C 20 2A 2F 0D 0A 09 7D 0D 0A 2F 2A 09 09 09    el */...}../*...
013D20:  09 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 20 20 20    .      */../*   
013D30:  20 20 20 22 77 68 69 6C 65 22 20 73 74 61 74 65       "while" state
013D40:  6D 65 6E 74 09 20 20 20 20 20 20 20 2A 2F 0D 0A    ment.       */..
013D50:  2F 2A 09 09 09 09 20 20 20 20 20 20 2A 2F 0D 0A    /*....      */..
013D60:  64 6F 77 68 69 6C 65 28 29 0D 0A 09 7B 0D 0A 09    dowhile()...{...
013D70:  69 6E 74 20 71 75 65 5B 77 71 73 69 7A 5D 3B 09    int que[wqsiz];.
013D80:  20 20 20 20 09 09 2F 2A 20 61 6C 6C 6F 63 61 74        ../* allocat
013D90:  65 20 6C 6F 63 61 6C 20 71 75 65 75 65 20 2A 2F    e local queue */
013DA0:  0D 0A 0D 0A 09 71 75 65 5B 77 71 73 79 6D 5D 3D    .....que[wqsym]=
013DB0:  6C 6F 63 70 74 72 3B 20 20 20 20 20 20 09 2F 2A    locptr;      ./*
013DC0:  20 72 65 63 6F 72 64 20 6C 6F 63 61 6C 20 6C 65     record local le
013DD0:  76 65 6C 20 2A 2F 0D 0A 09 71 75 65 5B 77 71 73    vel */...que[wqs
013DE0:  70 5D 3D 73 70 3B 09 20 20 20 09 09 2F 2A 20 61    p]=sp;.   ../* a
013DF0:  6E 64 20 73 74 6B 20 70 74 72 20 2A 2F 0D 0A 09    nd stk ptr */...
013E00:  09 09 6C 61 73 74 73 74 3D 73 74 65 78 70 3B 0D    ..lastst=stexp;.
013E10:  0A 09 09 7D 0D 0A 09 72 65 74 75 72 6E 20 6C 61    ...}...return la
013E20:  73 74 73 74 3B 0D 0A 09 7D 0D 0A 2F 2A 09 09 09    stst;...}../*...
013E30:  09 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 20 20 20    .      */../*   
013E40:  20 20 20 53 65 6D 69 63 6F 6C 6F 6E 20 65 6E 66       Semicolon enf
013E50:  6F 72 63 65 72 09 20 20 20 20 20 20 2A 2F 0D 0A    orcer.      */..
013E60:  2F 2A 09 09 09 09 20 20 20 20 20 20 2A 2F 0D 0A    /*....      */..
013E70:  2F 2A 20 63 61 6C 6C 65 64 20 77 68 65 6E 65 76    /* called whenev
013E80:  65 72 20 73 79 6E 74 61 78 20 72 65 71 75 69 72    er syntax requir
013E90:  65 73 20 61 20 73 65 6D 69 63 6F 6C 6F 6E 20 2A    es a semicolon *
013EA0:  2F 0D 0A 6E 73 28 29 20 20 20 20 7B 69 66 28 6D    /..ns()    {if(m
013EB0:  61 74 63 68 28 22 3B 22 29 3D 3D 30 29 65 72 72    atch(";")==0)err
013EC0:  6F 72 28 22 6D 69 73 73 69 6E 67 20 73 65 6D 69    or("missing semi
013ED0:  63 6F 6C 6F 6E 22 29 3B 7D 0D 0A 2F 2A 09 09 09    colon");}../*...
013EE0:  09 09 2A 2F 0D 0A 2F 2A 09 6E 65 65 64 20 73 65    ..*/../*.need se
013EF0:  6D 69 63 6F 6C 6F 6E 09 09 09 2A 2F 0D 0A 2F 2A    micolon...*/../*
013F00:  09 77 72 69 74 74 65 6E 09 62 79 20 4D 69 6B 65    .written.by Mike
013F10:  09 42 65 72 6E 73 6F 6E 09 31 2F 38 31 09 2A 2F    .Bernson.1/81.*/
013F20:  0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 6E 65 65    ../*.....*/..nee
013F30:  64 73 65 6D 28 29 0D 0A 7B 0D 0A 09 69 66 20 28    dsem()..{...if (
013F40:  6D 61 74 63 68 28 22 3B 22 29 29 09 72 65 74 75    match(";")).retu
013F50:  72 6E 20 46 41 4C 53 45 3B 0D 0A 09 65 72 72 6F    rn FALSE;...erro
013F60:  72 28 22 4D 69 73 73 69 6E 67 20 73 65 6D 69 63    r("Missing semic
013F70:  6F 6C 6F 6E 22 29 3B 0D 0A 09 6A 75 6E 6B 28 29    olon");...junk()
013F80:  3B 0D 0A 09 72 65 74 75 72 6E 20 54 52 55 45 3B    ;...return TRUE;
013F90:  0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D    ...}../*.....*/.
013FA0:  0A 2F 2A 09 6E 65 65 64 20 6F 70 65 6E 69 6E 67    ./*.need opening
013FB0:  20 70 61 72 6E 09 09 2A 2F 0D 0A 2F 2A 09 77 72     parn..*/../*.wr
013FC0:  69 74 74 65 6E 09 62 79 20 4D 69 6B 65 09 42 65    itten.by Mike.Be
013FD0:  72 6E 73 6F 6E 09 31 2F 38 31 09 2A 2F 0D 0A 6E    rnson.1/81.*/..n
013FE0:  65 65 64 6F 70 61 72 6E 28 29 0D 0A 7B 0D 0A 09    eedoparn()..{...
013FF0:  69 66 20 28 6D 61 74 63 68 28 22 28 22 29 29 09    if (match("(")).
014000:  71 75 65 5B 77 71 6C 6F 6F 70 5D 3D 09 09 09 2F    que[wqloop]=.../
014010:  2A 20 61 6E 64 20 6C 6F 6F 70 69 6E 67 20 6C 61    * and looping la
014020:  62 65 6C 20 2A 2F 0D 0A 09 71 75 65 5B 77 71 65    bel */...que[wqe
014030:  6E 64 5D 3D 67 65 74 6C 61 62 65 6C 28 29 3B 09    nd]=getlabel();.
014040:  09 2F 2A 20 63 6F 6E 74 69 6E 75 65 20 6C 61 62    ./* continue lab
014050:  65 6C 20 2A 2F 0D 0A 09 71 75 65 5B 77 71 6C 61    el */...que[wqla
014060:  62 5D 3D 67 65 74 6C 61 62 65 6C 28 29 3B 09 09    b]=getlabel();..
014070:  2F 2A 20 61 6E 64 20 65 78 69 74 20 6C 61 62 65    /* and exit labe
014080:  6C 20 2A 2F 0D 0A 09 61 64 64 77 68 69 6C 65 28    l */...addwhile(
014090:  71 75 65 29 3B 09 09 09 2F 2A 20 61 64 64 20 74    que);.../* add t
0140A0:  6F 20 6C 6F 6F 70 69 6E 67 20 73 74 61 63 6B 09    o looping stack.
0140B0:  2A 2F 0D 0A 09 73 70 72 69 6E 74 6C 61 62 65 6C    */...sprintlabel
0140C0:  28 71 75 65 5B 77 71 6C 6F 6F 70 5D 29 3B 09 2F    (que[wqloop]);./
0140D0:  2A 20 6C 6F 6F 70 20 6C 61 62 65 6C 20 2A 2F 0D    * loop label */.
0140E0:  0A 09 74 65 73 74 28 71 75 65 5B 77 71 6C 61 62    ..test(que[wqlab
0140F0:  5D 29 3B 09 09 2F 2A 20 73 65 65 20 69 66 20 74    ]);../* see if t
014100:  72 75 65 20 2A 2F 0D 0A 09 73 74 61 74 65 6D 65    rue */...stateme
014110:  6E 74 28 29 3B 09 09 09 2F 2A 20 69 66 20 73 6F    nt();.../* if so
014120:  2C 20 64 6F 20 61 20 73 74 61 74 65 6D 65 6E 74    , do a statement
014130:  20 2A 2F 0D 0A 09 6A 75 6D 70 28 71 75 65 5B 77     */...jump(que[w
014140:  71 6C 6F 6F 70 5D 29 3B 09 09 2F 2A 20 6C 6F 6F    qloop]);../* loo
014150:  70 09 74 6F 20 6C 61 62 65 6C 20 2A 2F 0D 0A 09    p.to label */...
014160:  73 70 72 69 6E 74 6C 61 62 65 6C 28 71 75 65 5B    sprintlabel(que[
014170:  77 71 6C 61 62 5D 29 3B 09 2F 2A 20 65 78 69 74    wqlab]);./* exit
014180:  20 6C 61 62 65 6C 20 2A 2F 0D 0A 09 6C 6F 63 70     label */...locp
014190:  74 72 3D 71 75 65 5B 77 71 73 79 6D 5D 3B 09 09    tr=que[wqsym];..
0141A0:  2F 2A 20 64 65 61 6C 6C 6F 63 61 74 65 20 6C 6F    /* deallocate lo
0141B0:  63 61 6C 73 20 2A 2F 0D 0A 09 73 70 3D 6D 6F 64    cals */...sp=mod
0141C0:  73 74 6B 28 71 75 65 5B 77 71 73 70 5D 29 3B 09    stk(que[wqsp]);.
0141D0:  09 2F 2A 20 63 6C 65 61 6E 20 75 70 20 73 74 6B    ./* clean up stk
0141E0:  09 70 74 72 20 2A 2F 0D 0A 09 64 65 6C 77 68 69    .ptr */...delwhi
0141F0:  6C 65 28 29 3B 09 09 09 2F 2A 20 64 65 6C 65 74    le();.../* delet
014200:  72 65 74 75 72 6E 20 46 41 4C 53 45 3B 0D 0A 09    return FALSE;...
014210:  65 72 72 6F 72 28 22 4D 69 73 73 69 6E 67 20 6C    error("Missing l
014220:  65 66 74 20 70 61 72 6E 74 68 69 73 22 29 3B 0D    eft parnthis");.
014230:  0A 09 6A 75 6E 6B 28 29 3B 0D 0A 09 72 65 74 75    ..junk();...retu
014240:  72 6E 20 54 52 55 45 3B 0D 0A 09 7D 0D 0A 2F 2A    rn TRUE;...}../*
014250:  09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 6E 65 65 64    .....*/../*.need
014260:  20 63 6C 6F 73 69 6E 67 20 70 61 72 6E 09 09 2A     closing parn..*
014270:  2F 0D 0A 2F 2A 09 77 72 69 74 74 65 6E 09 62 79    /../*.written.by
014280:  20 4D 69 6B 65 09 42 65 72 6E 73 6F 6E 09 31 2F     Mike.Bernson.1/
014290:  38 31 09 2A 2F 0D 0A 6E 65 65 64 63 70 61 72 6E    81.*/..needcparn
0142A0:  28 29 0D 0A 7B 0D 0A 09 69 66 20 28 6D 61 74 63    ()..{...if (matc
0142B0:  68 28 22 29 22 29 29 09 72 65 74 75 72 6E 20 46    h(")")).return F
0142C0:  41 4C 53 45 3B 0D 0A 09 65 72 72 6F 72 28 22 4D    ALSE;...error("M
0142D0:  69 73 73 69 6E 67 20 72 69 67 68 74 20 70 61 72    issing right par
0142E0:  6E 74 68 69 73 22 29 3B 0D 0A 09 6A 75 6E 6B 28    nthis");...junk(
0142F0:  29 3B 0D 0A 09 72 65 74 75 72 6E 20 54 52 55 45    );...return TRUE
014300:  3B 0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09 09 2A 2F    ;...}../*.....*/
014310:  0D 0A 2F 2A 09 6E 65 65 64 20 6F 70 65 6E 69 6E    ../*.need openin
014320:  67 20 62 72 61 63 65 09 09 2A 2F 0D 0A 2F 2A 09    g brace..*/../*.
014330:  77 72 69 74 74 65 6E 09 62 79 20 4D 69 6B 65 09    written.by Mike.
014340:  42 65 72 6E 73 6F 6E 09 31 2F 38 31 09 2A 2F 0D    Bernson.1/81.*/.
014350:  0A 6E 65 65 64 6F 62 72 61 63 65 28 29 0D 0A 7B    .needobrace()..{
014360:  0D 0A 09 69 66 20 28 6D 61 74 63 68 28 22 7B 22    ...if (match("{"
014370:  29 29 09 72 65 74 75 72 6E 20 46 41 4C 53 45 3B    )).return FALSE;
014380:  0D 0A 09 65 72 72 6F 72 28 22 4D 69 73 73 69 6E    ...error("Missin
014390:  67 20 6C 65 66 74 20 62 72 61 63 65 22 29 3B 0D    g left brace");.
0143A0:  0A 09 6A 75 6E 6B 28 29 3B 0D 0A 09 72 65 74 75    ..junk();...retu
0143B0:  72 6E 20 54 52 55 45 3B 0D 0A 09 7D 0D 0A 2F 2A    rn TRUE;...}../*
0143C0:  09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 6E 65 65 64    .....*/../*.need
0143D0:  20 63 6C 6F 73 69 6E 67 20 62 72 61 63 65 09 09     closing brace..
0143E0:  2A 2F 0D 0A 2F 2A 09 77 72 69 74 74 65 6E 09 62    */../*.written.b
0143F0:  79 20 4D 69 6B 65 09 42 65 72 6E 73 6F 6E 09 31    y Mike.Bernson.1
014400:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
014410:  11 00 01 00 02 09 52 E5 11 00 C1 02 00 00 00 02    ......R.........
014420:  11 00 C6 02 00 00 00 02 11 00 C2 02 00 00 00 02    ................
014430:  11 00 C7 02 00 00 00 02 11 00 C3 02 00 00 00 02    ................
014440:  11 00 C8 02 00 00 00 02 11 00 C4 02 00 00 00 02    ................
014450:  11 00 C9 02 00 00 00 02 11 00 C5 02 00 00 00 02    ................
014460:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
014470:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
014480:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
014490:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0144A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0144B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0144C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0144D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0144E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0144F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
014500:  65 20 71 75 65 75 65 09 65 6E 74 72 79 20 2A 2F    e queue.entry */
014510:  0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D    ...}../*.....*/.
014520:  0A 2F 2A 09 22 53 77 69 74 63 68 22 20 73 74 61    ./*."Switch" sta
014530:  74 65 6D 65 6E 74 09 09 2A 2F 0D 0A 2F 2A 09 09    tement..*/../*..
014540:  09 09 09 2A 2F 0D 0A 2F 2A 09 77 72 69 74 74 65    ...*/../*.writte
014550:  6E 20 62 79 20 4D 69 6B 65 20 42 65 72 6E 73 6F    n by Mike Bernso
014560:  6E 20 31 2F 38 31 09 2A 2F 0D 0A 2F 2A 09 09 09    n 1/81.*/../*...
014570:  09 09 2A 2F 0D 0A 64 6F 73 77 69 74 63 68 28 29    ..*/..doswitch()
014580:  0D 0A 7B 0D 0A 09 69 6E 74 20 76 61 6C 75 65 5B    ..{...int value[
014590:  53 57 49 54 43 48 5F 4D 41 58 5D 3B 20 20 2F 2A    SWITCH_MAX];  /*
0145A0:  20 76 61 6C 75 65 20 66 6F 72 20 63 61 73 65 20     value for case 
0145B0:  73 74 61 74 65 6D 61 6E 74 20 2A 2F 0D 0A 09 69    statemant */...i
0145C0:  6E 74 20 6C 61 62 65 6C 5B 53 57 49 54 43 48 5F    nt label[SWITCH_
0145D0:  4D 41 58 5D 3B 20 20 2F 2A 20 76 61 6C 75 65 20    MAX];  /* value 
0145E0:  66 6F 72 20 65 61 63 68 20 6C 61 62 65 6C 20 2A    for each label *
0145F0:  2F 0D 0A 09 69 6E 74 20 63 6F 75 6E 74 2C 74 65    /...int count,te
014600:  6E 70 3B 20 09 2F 2A 20 6E 75 6D 62 65 72 20 6F    np; ./* number o
014610:  66 20 73 77 69 74 63 68 65 73 20 2A 2F 0D 0A 09    f switches */...
014620:  69 6E 74 20 65 6E 64 5F 6C 61 62 65 6C 3B 20 20    int end_label;  
014630:  09 2F 2A 20 6C 61 62 65 6C 20 66 6F 72 20 64 65    ./* label for de
014640:  66 61 75 6C 74 20 2A 2F 0D 0A 09 69 6E 74 20 6C    fault */...int l
014650:  61 62 65 6C 5F 73 77 69 74 63 68 3B 09 2F 2A 20    abel_switch;./* 
014660:  75 73 65 64 20 66 6F 72 20 73 77 69 74 63 68 20    used for switch 
014670:  6C 61 62 65 6C 20 2A 2F 0D 0A 09 69 6E 74 20 74    label */...int t
014680:  65 6D 70 2C 76 61 6C 5B 32 5D 3B 0D 0A 09 69 6E    emp,val[2];...in
014690:  74 20 71 75 65 5B 77 71 73 69 7A 5D 3B 09 09 2F    t que[wqsiz];../
0146A0:  2A 20 6C 6F 63 61 6C 20 71 75 65 20 61 72 65 61    * local que area
0146B0:  20 2A 2F 0D 0A 09 63 6F 75 6E 74 3D 30 3B 09 09     */...count=0;..
0146C0:  2F 2A 20 6E 75 6D 62 65 72 20 6F 66 20 63 61 73    /* number of cas
0146D0:  65 20 73 74 61 74 65 6D 65 6E 74 73 20 2A 2F 0D    e statements */.
0146E0:  0A 09 71 75 65 5B 77 71 73 79 6D 5D 3D 6C 6F 63    ..que[wqsym]=loc
0146F0:  70 74 72 3B 09 2F 2A 20 6C 6F 63 61 6C 20 76 61    ptr;./* local va
014700:  2F 0D 0A 09 71 75 65 5B 77 71 62 6F 64 79 5D 3D    /...que[wqbody]=
014710:  67 65 74 6C 61 62 65 6C 28 29 3B 09 2F 2A 20 62    getlabel();./* b
014720:  6F 64 79 20 66 6F 72 20 63 6F 64 79 20 2A 2F 0D    ody for cody */.
014730:  0A 09 61 64 64 77 68 69 6C 65 28 71 75 65 29 3B    ..addwhile(que);
014740:  09 09 2F 2A 20 61 64 64 20 77 68 69 6C 65 20 74    ../* add while t
014750:  6F 20 6C 6F 6F 70 20 71 75 65 20 2A 2F 0D 0A 09    o loop que */...
014760:  69 66 20 28 6E 65 65 64 6F 70 61 72 6E 28 29 29    if (needoparn())
014770:  20 7B 09 2F 2A 20 63 68 65 63 6B 20 66 6F 72 20     {./* check for 
014780:  6F 70 65 6E 20 70 61 72 6E 20 2A 2F 0D 0A 09 09    open parn */....
014790:  64 65 6C 77 68 69 6C 65 28 29 3B 09 2F 2A 20 64    delwhile();./* d
0147A0:  65 6C 65 74 65 20 66 6F 72 20 65 6E 74 72 79 20    elete for entry 
0147B0:  66 72 6F 6D 20 71 75 65 20 2A 2F 0D 0A 09 09 72    from que */....r
0147C0:  65 74 75 72 6E 3B 0D 0A 09 09 7D 0D 0A 09 65 78    eturn;....}...ex
0147D0:  70 72 65 73 73 69 6F 6E 28 29 3B 09 09 2F 2A 20    pression();../* 
0147E0:  69 6E 69 74 09 65 78 70 72 65 73 73 09 2A 2F 0D    init.express.*/.
0147F0:  0A 09 69 66 20 28 6E 65 65 64 73 65 6D 28 29 29    ..if (needsem())
014800:  20 7B 09 2F 2A 20 63 68 65 63 6B 20 66 6F 72 20     {./* check for 
014810:  73 65 6D 63 6F 6C 20 2A 2F 0D 0A 09 09 64 65 6C    semcol */....del
014820:  77 68 69 6C 65 28 29 3B 09 2F 2A 20 64 65 6C 65    while();./* dele
014830:  74 65 20 71 75 65 20 65 6E 74 72 79 20 2A 2F 0D    te que entry */.
014840:  0A 09 09 72 65 74 75 72 6E 3B 0D 0A 09 09 7D 0D    ...return;....}.
014850:  0A 09 73 70 72 69 6E 74 6C 61 62 65 6C 28 71 75    ..sprintlabel(qu
014860:  65 5B 77 71 6C 6F 6F 70 5D 29 3B 09 2F 2A 20 63    e[wqloop]);./* c
014870:  6F 6E 74 72 6F 6C 20 6C 6F 6F 70 09 6C 61 62 65    ontrol loop.labe
014880:  6C 20 2A 2F 0D 0A 09 73 74 61 74 75 73 3D 65 78    l */...status=ex
014890:  70 72 65 73 73 69 6F 6E 28 29 3B 09 09 2F 2A 20    pression();../* 
0148A0:  6C 6F 6F 70 20 63 6F 6E 74 72 6F 6C 20 65 78 70    loop control exp
0148B0:  72 65 73 73 20 2A 2F 0D 0A 09 74 65 73 74 6A 75    ress */...testju
0148C0:  6D 70 28 71 75 65 5B 77 71 6C 61 62 5D 2C 73 74    mp(que[wqlab],st
0148D0:  61 74 75 73 29 3B 09 2F 2A 20 73 65 65 20 69 66    atus);./* see if
0148E0:  20 65 78 69 74 20 74 69 6D 65 20 2A 2F 0D 0A 09     exit time */...
0148F0:  6A 75 6D 70 28 71 75 65 5B 77 71 62 6F 64 79 5D    jump(que[wqbody]
014900:  62 6C 65 20 70 6F 69 6E 74 65 72 20 2A 2F 0D 0A    ble pointer */..
014910:  09 71 75 65 5B 77 71 73 70 5D 3D 73 70 3B 09 09    .que[wqsp]=sp;..
014920:  2F 2A 20 73 61 76 65 20 63 75 72 72 65 6E 74 20    /* save current 
014930:  73 74 61 63 6B 20 70 6F 69 6E 74 65 72 20 2A 2F    stack pointer */
014940:  0D 0A 09 65 6E 64 5F 6C 61 62 65 6C 3D 09 09 2F    ...end_label=../
014950:  2A 20 64 65 66 61 75 6C 74 20 65 78 69 74 20 6C    * default exit l
014960:  61 62 65 6C 20 2A 2F 0D 0A 09 71 75 65 5B 77 71    abel */...que[wq
014970:  6C 6F 6F 70 5D 3D 09 09 2F 2A 20 6C 6F 6F 70 69    loop]=../* loopi
014980:  6E 67 20 6C 61 62 65 6C 20 2A 2F 0D 0A 09 71 75    ng label */...qu
014990:  65 5B 77 71 6C 61 62 5D 3D 09 09 2F 2A 20 6C 6F    e[wqlab]=../* lo
0149A0:  6F 70 20 65 78 69 74 20 76 61 72 62 6C 65 20 2A    op exit varble *
0149B0:  2F 0D 0A 09 71 75 65 5B 77 71 65 6E 64 5D 3D 67    /...que[wqend]=g
0149C0:  65 74 6C 61 62 65 6C 28 29 3B 09 2F 2A 20 63 6F    etlabel();./* co
0149D0:  6E 74 69 6E 75 65 20 6C 61 62 65 6C 20 2A 2F 0D    ntinue label */.
0149E0:  0A 09 61 64 64 77 68 69 6C 65 28 71 75 65 29 3B    ..addwhile(que);
0149F0:  09 09 2F 2A 20 61 64 64 20 74 6F 20 77 68 69 6C    ../* add to whil
014A00:  65 20 73 74 61 63 6B 20 2A 2F 0D 0A 09 69 66 20    e stack */...if 
014A10:  28 6E 65 65 64 6F 70 61 72 6E 28 29 29 20 7B 09    (needoparn()) {.
014A20:  2F 2A 20 63 68 65 63 6B 20 74 6F 20 73 65 65 09    /* check to see.
014A30:  69 66 22 28 22 20 65 78 69 74 73 20 2A 2F 0D 0A    if"(" exits */..
014A40:  09 09 64 65 6C 77 68 69 6C 65 28 29 3B 09 2F 2A    ..delwhile();./*
014A50:  20 6E 6F 20 64 65 6C 65 74 65 20 73 77 69 74 63     no delete switc
014A60:  68 20 65 6E 74 72 79 20 61 6E 64 20 2A 2F 0D 0A    h entry and */..
014A70:  09 09 72 65 74 75 72 6E 3B 09 09 2F 2A 20 72 65    ..return;../* re
014A80:  74 75 72 6E 20 6F 75 74 20 6F 66 20 73 77 69 74    turn out of swit
014A90:  63 68 09 2A 2F 0D 0A 09 09 7D 0D 0A 09 65 78 70    ch.*/....}...exp
014AA0:  72 65 73 73 69 6F 6E 28 29 3B 09 09 2F 2A 20 65    ression();../* e
014AB0:  78 70 72 65 73 73 69 6F 6E 20 66 6F 72 20 73 77    xpression for sw
014AC0:  69 74 63 68 20 2A 2F 0D 0A 09 70 75 73 68 28 29    itch */...push()
014AD0:  3B 0D 0A 09 69 66 20 28 6E 65 65 64 63 70 61 72    ;...if (needcpar
014AE0:  6E 28 29 29 20 7B 09 2F 2A 20 63 68 65 63 6B 20    n()) {./* check 
014AF0:  66 6F 72 20 22 29 22 20 2A 2F 0D 0A 09 09 64 65    for ")" */....de
014B00:  29 3B 09 2F 2A 20 6E 6F 74 20 74 69 6D 65 20 74    );./* not time t
014B10:  6F 20 65 78 69 74 20 64 6F 20 62 6F 64 79 20 2A    o exit do body *
014B20:  2F 0D 0A 09 69 66 20 28 6E 65 65 64 73 65 6D 28    /...if (needsem(
014B30:  29 29 20 7B 09 2F 2A 20 63 68 65 63 6B 20 66 6F    )) {./* check fo
014B40:  72 20 73 65 6D 63 6F 6C 20 2A 2F 0D 0A 09 09 64    r semcol */....d
014B50:  65 6C 77 68 69 6C 65 28 29 3B 09 2F 2A 20 64 65    elwhile();./* de
014B60:  6C 65 74 65 20 31 20 71 75 65 09 65 6E 74 72 79    lete 1 que.entry
014B70:  20 2A 2F 0D 0A 09 09 72 65 74 75 72 6E 3B 0D 0A     */....return;..
014B80:  09 09 7D 0D 0A 09 73 70 72 69 6E 74 6C 61 62 65    ..}...sprintlabe
014B90:  6C 28 71 75 65 5B 77 71 65 6E 64 5D 29 3B 09 2F    l(que[wqend]);./
014BA0:  2A 20 70 72 69 6E 74 20 65 6E 64 20 6F 66 20 6C    * print end of l
014BB0:  6F 6F 70 20 2A 2F 0D 0A 09 65 78 70 72 65 73 73    oop */...express
014BC0:  69 6F 6E 28 29 3B 09 09 2F 2A 20 65 6E 64 20 6C    ion();../* end l
014BD0:  6F 6F 70 20 65 78 70 72 65 73 73 69 6F 6E 20 2A    oop expression *
014BE0:  2F 0D 0A 09 6A 75 6D 70 28 71 75 65 5B 77 71 6C    /...jump(que[wql
014BF0:  6F 6F 70 5D 29 3B 09 2F 2A 20 64 6F 20 6C 6F 6F    oop]);./* do loo
014C00:  70 20 63 6F 6E 74 72 6F 6C 20 65 78 70 72 65 73    p control expres
014C10:  73 69 6F 6E 20 2A 2F 0D 0A 09 69 66 20 28 6E 65    sion */...if (ne
014C20:  65 64 63 70 61 72 6E 28 29 29 20 7B 0D 0A 09 09    edcparn()) {....
014C30:  64 65 6C 77 68 69 6C 65 28 29 3B 0D 0A 09 09 72    delwhile();....r
014C40:  65 74 75 72 6E 3B 0D 0A 09 09 7D 0D 0A 09 73 70    eturn;....}...sp
014C50:  72 69 6E 74 6C 61 62 65 6C 28 71 75 65 5B 77 71    rintlabel(que[wq
014C60:  62 6F 64 79 5D 29 3B 0D 0A 09 73 74 61 74 65 6D    body]);...statem
014C70:  65 6E 74 28 29 3B 0D 0A 09 6A 75 6D 70 28 71 75    ent();...jump(qu
014C80:  65 5B 77 71 65 6E 64 5D 29 3B 0D 0A 09 73 70 72    e[wqend]);...spr
014C90:  69 6E 74 6C 61 62 65 6C 28 71 75 65 5B 77 71 6C    intlabel(que[wql
014CA0:  61 62 5D 29 3B 0D 0A 09 6C 6F 63 70 74 72 3D 71    ab]);...locptr=q
014CB0:  75 65 5B 77 71 73 79 6D 5D 3B 0D 0A 09 73 70 3D    ue[wqsym];...sp=
014CC0:  6D 6F 64 73 74 6B 28 71 75 65 5B 77 71 73 70 5D    modstk(que[wqsp]
014CD0:  29 3B 0D 0A 09 64 65 6C 77 68 69 6C 65 28 29 3B    );...delwhile();
014CE0:  0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09 20 20 20 20    ...}../*....    
014CF0:  20 20 20 2A 2F 0D 0A 2F 2A 20 20 20 20 20 20 22       */../*      "
014D00:  6C 77 68 69 6C 65 28 29 3B 09 2F 2A 20 6E 6F 74    lwhile();./* not
014D10:  20 66 6F 75 6C 64 20 64 65 74 65 6C 65 20 71 75     fould detele qu
014D20:  65 09 65 6E 74 72 79 20 2A 2F 0D 0A 09 09 72 65    e.entry */....re
014D30:  74 75 72 6E 3B 09 09 2F 2A 20 61 6E 64 20 65 78    turn;../* and ex
014D40:  69 74 20 73 77 69 74 63 68 20 73 74 61 74 65 6D    it switch statem
014D50:  61 6E 74 20 2A 2F 0D 0A 09 09 7D 0D 0A 09 69 66    ant */....}...if
014D60:  20 28 6E 65 65 64 6F 62 72 61 63 65 28 29 29 20     (needobrace()) 
014D70:  7B 0D 0A 09 09 64 65 6C 77 68 69 6C 65 28 29 3B    {....delwhile();
014D80:  0D 0A 09 09 72 65 74 75 72 6E 3B 0D 0A 09 09 7D    ....return;....}
014D90:  0D 0A 09 6A 75 6D 70 28 6C 61 62 65 6C 5F 73 77    ...jump(label_sw
014DA0:  69 74 63 68 3D 67 65 74 6C 61 62 65 6C 28 29 29    itch=getlabel())
014DB0:  3B 0D 0A 09 73 70 3D 73 70 2B 32 3B 0D 0A 0D 0A    ;...sp=sp+2;....
014DC0:  09 77 68 69 6C 65 28 31 29 20 7B 0D 0A 20 09 69    .while(1) {.. .i
014DD0:  66 20 28 61 6D 61 74 63 68 28 22 63 61 73 65 22    f (amatch("case"
014DE0:  2C 34 29 29 20 7B 0D 0A 09 09 09 69 66 20 28 63    ,4)) {.....if (c
014DF0:  6F 6E 73 74 5F 65 78 70 28 76 61 6C 29 20 3D 3D    onst_exp(val) ==
014E00:  20 30 20 29 20 7B 0D 0A 09 09 09 09 65 72 72 6F     0 ) {......erro
014E10:  72 28 22 42 61 64 20 63 6F 6E 73 74 61 6E 74 22    r("Bad constant"
014E20:  29 3B 0D 0A 09 09 09 09 63 6F 6E 74 69 6E 75 65    );......continue
014E30:  3B 0D 0A 09 09 09 09 7D 0D 0A 09 09 09 69 66 20    ;......}.....if 
014E40:  28 63 6F 75 6E 74 3C 53 57 49 54 43 48 5F 4D 41    (count<SWITCH_MA
014E50:  58 2D 32 29 20 7B 0D 0A 09 09 09 09 76 61 6C 75    X-2) {......valu
014E60:  65 5B 63 6F 75 6E 74 5D 3D 76 61 6C 5B 30 5D 3B    e[count]=val[0];
014E70:  0D 0A 09 09 09 09 73 70 72 69 6E 74 6C 61 62 65    ......sprintlabe
014E80:  6C 28 6C 61 62 65 6C 5B 63 6F 75 6E 74 2B 2B 5D    l(label[count++]
014E90:  3D 67 65 74 6C 61 62 65 6C 28 29 29 3B 0D 0A 09    =getlabel());...
014EA0:  09 09 09 7D 0D 0A 09 09 09 65 6C 73 65 20 65 72    ...}.....else er
014EB0:  72 6F 72 28 22 54 6F 6F 20 6D 61 6E 79 20 63 61    ror("Too many ca
014EC0:  73 65 20 73 74 61 74 6D 65 6E 74 73 22 29 3B 0D    se statments");.
014ED0:  0A 09 09 09 69 66 20 28 21 6D 61 74 63 68 28 22    ....if (!match("
014EE0:  3A 22 29 29 20 65 72 72 6F 72 28 22 4D 69 73 73    :")) error("Miss
014EF0:  69 6E 67 20 63 6F 6C 6F 6E 22 29 3B 0D 0A 09 09    ing colon");....
014F00:  72 65 74 75 72 6E 22 20 73 74 61 74 65 6D 65 6E    return" statemen
014F10:  74 09 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 09 09    t.      */../*..
014F20:  09 09 20 20 20 20 20 20 2A 2F 0D 0A 64 6F 72 65    ..      */..dore
014F30:  74 75 72 6E 28 29 0D 0A 09 7B 0D 0A 09 2F 2A 20    turn()...{.../* 
014F40:  69 66 20 6E 6F 74 20 65 6E 64 20 6F 66 20 73 74    if not end of st
014F50:  61 74 65 6D 65 6E 74 2C 20 67 65 74 20 61 6E 20    atement, get an 
014F60:  65 78 70 72 65 73 73 69 6F 6E 20 2A 2F 0D 0A 09    expression */...
014F70:  69 66 28 65 6E 64 73 74 28 29 3D 3D 30 29 65 78    if(endst()==0)ex
014F80:  70 72 65 73 73 69 6F 6E 28 29 3B 0D 0A 09 6D 6F    pression();...mo
014F90:  64 73 74 6B 28 30 29 3B 20 20 20 20 20 20 2F 2A    dstk(0);      /*
014FA0:  20 63 6C 65 61 6E 20 75 70 20 73 74 6B 20 2A 2F     clean up stk */
014FB0:  0D 0A 09 72 65 74 28 29 3B 09 20 20 2F 2A 20 61    ...ret();.  /* a
014FC0:  6E 64 20 65 78 69 74 20 66 75 6E 63 74 69 6F 6E    nd exit function
014FD0:  20 2A 2F 0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09 20     */...}../*.... 
014FE0:  20 20 20 20 20 2A 2F 0D 0A 2F 2A 20 20 20 20 20         */../*     
014FF0:  20 22 62 72 65 61 6B 22 20 73 74 61 74 65 6D 65     "break" stateme
015000:  6E 74 09 20 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A    nt.       */../*
015010:  09 09 09 09 20 20 20 20 20 20 2A 2F 0D 0A 64 6F    ....      */..do
015020:  62 72 65 61 6B 28 29 0D 0A 09 7B 0D 0A 09 69 6E    break()...{...in
015030:  74 20 2A 70 74 72 3B 0D 0A 09 2F 2A 20 73 65 65    t *ptr;.../* see
015040:  20 69 66 20 61 6E 79 20 22 77 68 69 6C 65 73 22     if any "whiles"
015050:  20 61 72 65 20 6F 70 65 6E 20 2A 2F 0D 0A 09 69     are open */...i
015060:  66 20 28 28 70 74 72 3D 72 65 61 64 77 68 69 6C    f ((ptr=readwhil
015070:  65 28 29 29 3D 3D 30 29 20 72 65 74 75 72 6E 3B    e())==0) return;
015080:  20 20 20 20 20 20 20 2F 2A 20 6E 6F 20 2A 2F 0D           /* no */.
015090:  0A 09 6D 6F 64 73 74 6B 28 70 74 72 5B 77 71 73    ..modstk(ptr[wqs
0150A0:  70 5D 29 3B 20 20 20 20 2F 2A 20 65 6C 73 65 20    p]);    /* else 
0150B0:  63 6C 65 61 6E 20 75 70 20 73 74 6B 20 70 74 72    clean up stk ptr
0150C0:  20 2A 2F 0D 0A 09 6A 75 6D 70 28 70 74 72 5B 77     */...jump(ptr[w
0150D0:  71 6C 61 62 5D 29 3B 20 20 20 20 20 20 20 2F 2A    qlab]);       /*
0150E0:  20 6A 75 6D 70 20 74 6F 20 65 78 69 74 20 6C 61     jump to exit la
0150F0:  62 65 6C 20 2A 2F 0D 0A 09 7D 0D 0A 2F 2A 09 09    bel */...}../*..
015100:  09 7D 0D 0A 09 65 6C 73 65 20 69 66 20 28 61 6D    .}...else if (am
015110:  61 74 63 68 28 22 64 65 66 61 75 6C 74 22 2C 37    atch("default",7
015120:  29 29 20 7B 0D 0A 09 09 65 6E 64 5F 6C 61 62 65    )) {....end_labe
015130:  6C 3D 67 65 74 6C 61 62 65 6C 28 29 3B 0D 0A 09    l=getlabel();...
015140:  09 73 70 72 69 6E 74 6C 61 62 65 6C 28 65 6E 64    .sprintlabel(end
015150:  5F 6C 61 62 65 6C 29 3B 0D 0A 09 09 69 66 20 28    _label);....if (
015160:  21 6D 61 74 63 68 28 22 3A 22 29 29 20 65 72 72    !match(":")) err
015170:  6F 72 28 22 4D 69 73 73 69 6E 67 20 63 6F 6C 6F    or("Missing colo
015180:  6E 22 29 3B 0D 0A 09 09 7D 0D 0A 09 65 6C 73 65    n");....}...else
015190:  20 69 66 20 28 6D 61 74 63 68 28 22 7D 22 29 29     if (match("}"))
0151A0:  20 7B 0D 0A 09 09 6A 75 6D 70 28 71 75 65 5B 77     {....jump(que[w
0151B0:  71 6C 61 62 5D 29 3B 09 2F 2A 20 6A 75 6D 70 20    qlab]);./* jump 
0151C0:  70 61 73 74 20 73 77 69 74 63 68 20 64 61 74 61    past switch data
0151D0:  20 2A 2F 0D 0A 09 09 74 65 6D 70 3D 30 3B 0D 0A     */....temp=0;..
0151E0:  09 09 73 70 72 69 6E 74 6C 61 62 65 6C 28 6C 61    ..sprintlabel(la
0151F0:  62 65 6C 5F 73 77 69 74 63 68 29 3B 0D 0A 09 09    bel_switch);....
015200:  65 78 65 63 5F 73 77 69 74 63 68 28 63 6F 75 6E    exec_switch(coun
015210:  74 2C 6C 61 62 65 6C 5F 73 77 69 74 63 68 3D 67    t,label_switch=g
015220:  65 74 6C 61 62 65 6C 28 29 2C 65 6E 64 5F 6C 61    etlabel(),end_la
015230:  62 65 6C 29 3B 0D 0A 09 09 73 70 72 69 6E 74 6C    bel);....sprintl
015240:  61 62 65 6C 28 6C 61 62 65 6C 5F 73 77 69 74 63    abel(label_switc
015250:  68 29 3B 0D 0A 09 09 77 68 69 6C 65 28 74 65 6D    h);....while(tem
015260:  70 3C 63 6F 75 6E 74 29 20 7B 0D 0A 09 09 09 64    p<count) {.....d
015270:  65 66 77 6F 72 64 28 29 3B 0D 0A 09 09 09 6F 75    efword();.....ou
015280:  74 64 65 63 28 76 61 6C 75 65 5B 74 65 6D 70 5D    tdec(value[temp]
015290:  29 3B 0D 0A 09 09 09 6F 75 74 73 74 72 28 22 2C    );.....outstr(",
0152A0:  22 29 3B 0D 0A 09 09 09 70 72 69 6E 74 6C 61 62    ");.....printlab
0152B0:  65 6C 28 6C 61 62 65 6C 5B 74 65 6D 70 2B 2B 5D    el(label[temp++]
0152C0:  29 3B 0D 0A 09 09 09 6E 6C 28 29 3B 0D 0A 09 09    );.....nl();....
0152D0:  09 7D 0D 0A 09 09 64 65 6C 77 68 69 6C 65 28 29    .}....delwhile()
0152E0:  3B 0D 0A 09 09 73 70 72 69 6E 74 6C 61 62 65 6C    ;....sprintlabel
0152F0:  28 71 75 65 5B 77 71 6C 61 62 5D 29 3B 0D 0A 09    (que[wqlab]);...
015300:  09 09 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 20 20    ..      */../*  
015310:  20 20 20 20 22 63 6F 6E 74 69 6E 75 65 22 20 73        "continue" s
015320:  74 61 74 65 6D 65 6E 74 09 20 20 20 20 2A 2F 0D    tatement.    */.
015330:  0A 2F 2A 09 09 09 09 20 20 20 20 20 20 2A 2F 0D    ./*....      */.
015340:  0A 64 6F 63 6F 6E 74 28 29 0D 0A 09 7B 0D 0A 09    .docont()...{...
015350:  69 6E 74 20 2A 70 74 72 3B 0D 0A 09 2F 2A 20 73    int *ptr;.../* s
015360:  65 65 20 69 66 20 61 6E 79 20 22 77 68 69 6C 65    ee if any "while
015370:  73 22 20 61 72 65 20 6F 70 65 6E 20 2A 2F 0D 0A    s" are open */..
015380:  09 69 66 20 28 28 70 74 72 3D 72 65 61 64 77 68    .if ((ptr=readwh
015390:  69 6C 65 28 29 29 3D 3D 30 29 20 72 65 74 75 72    ile())==0) retur
0153A0:  6E 3B 20 20 20 20 20 20 20 2F 2A 20 6E 6F 20 2A    n;       /* no *
0153B0:  2F 0D 0A 09 6D 6F 64 73 74 6B 28 28 70 74 72 5B    /...modstk((ptr[
0153C0:  77 71 73 70 5D 29 29 3B 20 20 20 20 2F 2A 20 65    wqsp]));    /* e
0153D0:  6C 73 65 20 63 6C 65 61 6E 20 75 70 20 73 74 6B    lse clean up stk
0153E0:  20 70 74 72 20 2A 2F 0D 0A 09 6A 75 6D 70 28 70     ptr */...jump(p
0153F0:  74 72 5B 77 71 65 6E 64 5D 29 3B 20 20 20 20 20    tr[wqend]);     
015400:  20 2F 2A 20 6A 75 6D 70 20 74 6F 20 65 6E 64 20     /* jump to end 
015410:  6C 61 62 65 6C 20 2A 2F 0D 0A 09 7D 0D 0A 2F 2A    label */...}../*
015420:  09 09 09 09 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A    ....      */../*
015430:  20 20 20 20 20 20 22 61 73 6D 22 20 70 73 65 75          "asm" pseu
015440:  64 6F 2D 73 74 61 74 65 6D 65 6E 74 09 20 20 2A    do-statement.  *
015450:  2F 0D 0A 2F 2A 09 09 09 09 20 20 20 20 20 20 2A    /../*....      *
015460:  2F 0D 0A 2F 2A 20 65 6E 74 65 72 73 20 6D 6F 64    /../* enters mod
015470:  65 20 77 68 65 72 65 20 61 73 73 65 6D 62 6C 79    e where assembly
015480:  20 6C 61 6E 67 75 61 67 65 20 73 74 61 74 65 6D     language statem
015490:  65 6E 74 73 20 61 72 65 20 2A 2F 0D 0A 2F 2A 20    ents are */../* 
0154A0:  20 20 20 20 20 70 61 73 73 65 64 20 69 6E 74 61         passed inta
0154B0:  63 74 20 74 68 72 6F 75 67 68 20 70 61 72 73 65    ct through parse
0154C0:  72 20 20 20 20 2A 2F 0D 0A 64 6F 61 73 6D 28 29    r    */..doasm()
0154D0:  0D 0A 09 7B 0D 0A 09 63 6D 6F 64 65 3D 30 3B 09    ...{...cmode=0;.
0154E0:  2F 2A 20 6D 61 72 6B 20 6D 6F 64 65 20 61 73 20    /* mark mode as 
0154F0:  22 61 73 6D 22 20 2A 2F 0D 0A 09 77 68 69 6C 65    "asm" */...while
015500:  09 6C 6F 63 70 74 72 3D 71 75 65 5B 77 71 73 79    .locptr=que[wqsy
015510:  6D 5D 3B 0D 0A 09 09 73 70 3D 6D 6F 64 73 74 6B    m];....sp=modstk
015520:  28 71 75 65 5B 77 71 73 70 5D 29 3B 0D 0A 09 09    (que[wqsp]);....
015530:  72 65 74 75 72 6E 3B 0D 0A 09 09 7D 0D 0A 09 65    return;....}...e
015540:  6C 73 65 20 73 74 61 74 65 6D 65 6E 74 28 29 3B    lse statement();
015550:  0D 0A 09 7D 7D 0D 0A 2F 2A 09 09 09 09 09 2A 2F    ...}}../*.....*/
015560:  0D 0A 2F 2A 09 22 66 6F 72 22 20 73 74 61 74 65    ../*."for" state
015570:  6D 65 6E 74 09 09 09 2A 2F 0D 0A 2F 2A 09 09 09    ment...*/../*...
015580:  09 09 2A 2F 0D 0A 2F 2A 09 77 72 69 74 74 65 6E    ..*/../*.written
015590:  20 62 79 20 4D 69 6B 65 20 42 65 72 6E 73 6F 6E     by Mike Bernson
0155A0:  20 31 2F 38 31 09 2A 2F 0D 0A 2F 2A 09 09 09 09     1/81.*/../*....
0155B0:  09 2A 2F 0D 0A 64 6F 66 6F 72 28 29 0D 0A 7B 0D    .*/..dofor()..{.
0155C0:  0A 09 69 6E 74 20 71 75 65 5B 77 71 73 69 7A 5D    ..int que[wqsiz]
0155D0:  3B 09 09 2F 2A 20 6C 6F 63 61 6C 20 71 75 65 20    ;../* local que 
0155E0:  61 72 65 61 20 2A 2F 0D 0A 09 69 6E 74 20 73 74    area */...int st
0155F0:  61 74 75 73 3B 09 09 2F 2A 20 6D 61 63 68 69 6E    atus;../* machin
015600:  65 20 73 74 61 74 75 73 20 61 66 74 65 72 20 65    e status after e
015610:  78 70 65 73 73 69 6F 6E 20 2A 2F 0D 0A 0D 0A 09    xpession */.....
015620:  71 75 65 5B 77 71 73 79 6D 5D 3D 6C 6F 63 70 74    que[wqsym]=locpt
015630:  72 3B 20 20 20 20 2F 2A 20 73 61 76 65 20 6C 6F    r;    /* save lo
015640:  63 61 4C 20 4C 45 56 45 4C 20 2A 2F 0D 0A 09 71    caL LEVEL */...q
015650:  75 65 5B 77 71 73 70 5D 3D 73 70 3B 09 09 2F 2A    ue[wqsp]=sp;../*
015660:  20 61 6E 64 20 73 74 61 63 6B 20 70 6F 69 6E 74     and stack point
015670:  65 72 20 2A 2F 0D 0A 09 71 75 65 5B 77 71 6C 6F    er */...que[wqlo
015680:  6F 70 5D 3D 67 65 74 6C 61 62 65 6C 28 29 3B 09    op]=getlabel();.
015690:  2F 2A 20 6C 6F 6F 70 69 6E 67 20 6C 61 62 65 6C    /* looping label
0156A0:  20 2A 2F 0D 0A 09 71 75 65 5B 77 71 6C 61 62 5D     */...que[wqlab]
0156B0:  3D 67 65 74 6C 61 62 65 6C 28 29 3B 09 2F 2A 20    =getlabel();./* 
0156C0:  6C 6F 6F 70 20 65 78 69 74 20 76 61 72 62 6C 65    loop exit varble
0156D0:  20 2A 2F 0D 0A 09 71 75 65 5B 77 71 65 6E 64 5D     */...que[wqend]
0156E0:  3D 67 65 74 6C 61 62 65 6C 28 29 3B 09 2F 2A 20    =getlabel();./* 
0156F0:  6C 6F 6F 70 20 65 6E 64 20 6C 61 62 65 6C 20 2A    loop end label *
015700:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
015710:  12 00 01 00 02 09 52 E5 12 00 C1 02 00 00 00 02    ......R.........
015720:  12 00 C6 02 00 00 00 02 12 00 C2 02 00 00 00 02    ................
015730:  12 00 C7 02 00 00 00 02 12 00 C3 02 00 00 00 02    ................
015740:  12 00 C8 02 00 00 00 02 12 00 C4 02 00 00 00 02    ................
015750:  12 00 C9 02 00 00 00 02 12 00 C5 02 00 00 00 02    ................
015760:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
015770:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
015780:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
015790:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0157A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0157B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0157C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0157D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0157E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0157F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
015800:  28 31 29 0D 0A 09 09 7B 69 6E 6C 69 6E 65 28 29    (1)....{inline()
015810:  3B 20 20 20 20 20 20 2F 2A 20 67 65 74 20 61 6E    ;      /* get an
015820:  64 20 70 72 69 6E 74 20 6C 69 6E 65 73 20 2A 2F    d print lines */
015830:  0D 0A 09 09 69 66 20 28 6D 61 74 63 68 28 22 23    ....if (match("#
015840:  65 6E 64 61 73 6D 22 29 29 20 62 72 65 61 6B 3B    endasm")) break;
015850:  20 20 20 20 2F 2A 20 75 6E 74 69 6C 2E 2E 2E 20        /* until... 
015860:  2A 2F 0D 0A 09 09 69 66 28 65 6F 66 29 62 72 65    */....if(eof)bre
015870:  61 6B 3B 0D 0A 09 09 6F 75 74 73 74 72 28 6C 69    ak;....outstr(li
015880:  6E 65 29 3B 0D 0A 09 09 6E 6C 28 29 3B 0D 0A 09    ne);....nl();...
015890:  09 7D 0D 0A 09 6B 69 6C 6C 28 29 3B 09 20 2F 2A    .}...kill();. /*
0158A0:  20 69 6E 76 61 6C 69 64 61 74 65 20 6C 69 6E 65     invalidate line
0158B0:  20 2A 2F 0D 0A 09 63 6D 6F 64 65 3D 31 3B 0D 0A     */...cmode=1;..
0158C0:  09 7D 0D 0A 0D 0A 0D 0A 0D 0A 1A 6B 69 6C 6C 28    .}.........kill(
0158D0:  29 3B 09 20 2F 2A 20 69 6E 76 61 6C 69 64 61 74    );. /* invalidat
0158E0:  65 20 6C 69 6E 65 20 2A 2F 0D 0A 09 63 6D 6F 64    e line */...cmod
0158F0:  65 3D 31 3B 0D 0A 09 7D 0D 0A 0D 0A 0D 0A 0D 0A    e=1;...}........
015900:  09 20 2A 2F 0D 0A 09 20 20 20 20 7D 0D 0A 09 70    . */...    }...p
015910:  75 74 73 28 22 65 6E 64 20 6C 6F 6F 70 5C 6E 22    uts("end loop\n"
015920:  29 3B 09 2F 2A 20 63 6F 75 6E 74 20 69 73 20 6E    );./* count is n
015930:  6F 77 20 7A 65 72 6F 2E 20 43 61 6C 6C 20 70 75    ow zero. Call pu
015940:  74 73 20 74 6F 0D 0A 09 09 09 09 20 2A 20 6F 75    ts to...... * ou
015950:  74 70 75 74 20 73 74 61 72 69 6E 67 20 74 6F 20    tput staring to 
015960:  73 63 72 65 65 6E 0D 0A 09 09 09 09 20 2A 2F 0D    screen...... */.
015970:  0A 09 7D 0D 0A 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ..}.............
015980:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
015990:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0159A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0159B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0159C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0159D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0159E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0159F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
015A00:  09 09 77 68 69 6C 65 28 63 3D 6D 61 63 71 5B 6B    ..while(c=macq[k
015A10:  2B 2B 5D 29 0D 0A 09 09 09 09 09 6B 65 65 70 63    ++]).......keepc
015A20:  68 28 63 29 3B 0D 0A 09 09 09 65 6C 73 65 20 7B    h(c);.....else {
015A30:  0D 0A 09 09 09 09 6B 3D 30 3B 0D 0A 09 09 09 09    ......k=0;......
015A40:  77 68 69 6C 65 28 63 3D 73 6E 61 6D 65 5B 6B 2B    while(c=sname[k+
015A50:  2B 5D 29 0D 0A 09 09 09 09 09 6B 65 65 70 63 68    +]).......keepch
015A60:  28 63 29 3B 0D 0A 09 09 09 09 7D 0D 0A 09 09 09    (c);......}.....
015A70:  7D 0D 0A 09 09 65 6C 73 65 20 6B 65 65 70 63 68    }....else keepch
015A80:  28 67 63 68 28 29 29 3B 0D 0A 09 09 7D 0D 0A 09    (gch());....}...
015A90:  6B 65 65 70 63 68 28 30 29 3B 0D 0A 09 69 66 28    keepch(0);...if(
015AA0:  6D 70 74 72 3E 3D 6D 70 6D 61 78 29 20 65 72 72    mptr>=mpmax) err
015AB0:  6F 72 28 22 6C 69 6E 65 20 74 6F 6F 20 6C 6F 6E    or("line too lon
015AC0:  67 22 29 3B 0D 0A 09 6C 70 74 72 3D 6D 70 74 72    g");...lptr=mptr
015AD0:  3D 30 3B 0D 0A 09 77 68 69 6C 65 28 6C 69 6E 65    =0;...while(line
015AE0:  5B 6C 70 74 72 2B 2B 5D 3D 6D 6C 69 6E 65 5B 6D    [lptr++]=mline[m
015AF0:  70 74 72 2B 2B 5D 29 3B 0D 0A 09 6C 70 74 72 3D    ptr++]);...lptr=
015B00:  30 3B 0D 0A 09 7D 0D 0A 61 64 64 6D 61 63 28 29    0;...}..addmac()
015B10:  0D 0A 7B 0D 0A 09 63 68 61 72 20 73 6E 61 6D 65    ..{...char sname
015B20:  5B 6E 61 6D 65 73 69 7A 65 5D 3B 0D 0A 09 69 6E    [namesize];...in
015B30:  74 20 6B 3B 0D 0A 09 69 66 20 28 73 79 6D 6E 61    t k;...if (symna
015B40:  6D 65 28 73 6E 61 6D 65 29 20 3D 3D 20 30 29 20    me(sname) == 0) 
015B50:  7B 0D 0A 09 09 69 6C 6C 6E 61 6D 65 28 29 3B 0D    {....illname();.
015B60:  0A 09 09 6B 69 6C 6C 28 29 3B 0D 0A 09 09 72 65    ...kill();....re
015B70:  74 75 72 6E 3B 0D 0A 09 09 7D 0D 0A 09 6B 3D 30    turn;....}...k=0
015B80:  3B 0D 0A 09 77 68 69 6C 65 28 70 75 74 6D 61 63    ;...while(putmac
015B90:  28 73 6E 61 6D 65 5B 6B 2B 2B 5D 29 29 3B 0D 0A    (sname[k++]));..
015BA0:  09 77 68 69 6C 65 28 69 73 73 70 61 63 65 28 63    .while(isspace(c
015BB0:  68 28 29 29 29 20 67 63 68 28 29 3B 0D 0A 09 77    h())) gch();...w
015BC0:  68 69 6C 65 28 70 75 74 6D 61 63 28 67 63 68 28    hile(putmac(gch(
015BD0:  29 29 29 3B 0D 0A 09 69 66 20 28 6D 61 63 70 74    )));...if (macpt
015BE0:  72 20 3E 3D 20 6D 61 63 6D 61 78 29 20 65 72 72    r >= macmax) err
015BF0:  6F 72 28 22 6D 61 72 63 6F 20 74 61 62 6C 65 20    or("marco table 
015C00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015C10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015C20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015C30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015C40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015C50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015C60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015C70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015C80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015C90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015CA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015CB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015CC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015CD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015CE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015CF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015D00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015D10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015D20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015D30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015D40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015D50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015D60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015D70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015D80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015D90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015DA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015DB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015DC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015DD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015DE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015DF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
015E00:  66 75 6C 6C 22 29 3B 0D 0A 09 7D 0D 0A 70 75 74    full");...}..put
015E10:  6D 61 63 28 63 29 0D 0A 63 68 61 72 20 63 3B 0D    mac(c)..char c;.
015E20:  0A 7B 0D 0A 09 6D 61 63 71 5B 6D 61 63 70 74 72    .{...macq[macptr
015E30:  5D 3D 63 3B 0D 0A 09 69 66 28 6D 61 63 70 74 72    ]=c;...if(macptr
015E40:  20 3C 20 6D 61 63 6D 61 78 29 20 6D 61 63 70 74     < macmax) macpt
015E50:  72 2B 2B 3B 0D 0A 09 72 65 74 75 72 6E 20 63 3B    r++;...return c;
015E60:  0D 0A 09 7D 0D 0A 66 69 6E 64 6D 61 63 28 73 6E    ...}..findmac(sn
015E70:  61 6D 65 29 0D 0A 63 68 61 72 20 2A 73 6E 61 6D    ame)..char *snam
015E80:  65 3B 0D 0A 7B 0D 0A 09 69 6E 74 20 6B 3B 0D 0A    e;..{...int k;..
015E90:  09 6B 3D 30 3B 0D 0A 09 77 68 69 6C 65 28 6B 3C    .k=0;...while(k<
015EA0:  6D 61 63 70 74 72 29 20 7B 0D 0A 09 09 69 66 28    macptr) {....if(
015EB0:  61 73 74 72 65 71 28 73 6E 61 6D 65 2C 6D 61 63    astreq(sname,mac
015EC0:  71 2B 6B 2C 6E 61 6D 65 6D 61 78 29 29 20 7B 0D    q+k,namemax)) {.
015ED0:  0A 09 09 09 77 68 69 6C 65 28 6D 61 63 71 5B 6B    ....while(macq[k
015EE0:  2B 2B 5D 29 3B 0D 0A 09 09 09 72 65 74 75 72 6E    ++]);.....return
015EF0:  20 6B 3B 0D 0A 09 09 09 7D 0D 0A 09 09 77 68 69     k;.....}....whi
015F00:  6C 65 28 6D 61 63 71 5B 6B 2B 2B 5D 29 3B 0D 0A    le(macq[k++]);..
015F10:  09 09 77 68 69 6C 65 28 6D 61 63 71 5B 6B 2B 2B    ..while(macq[k++
015F20:  5D 29 3B 0D 0A 09 09 7D 0D 0A 09 72 65 74 75 72    ]);....}...retur
015F30:  6E 20 30 3B 0D 0A 09 7D 0D 0A 6F 75 74 62 79 74    n 0;...}..outbyt
015F40:  65 28 63 29 0D 0A 63 68 61 72 20 63 3B 0D 0A 7B    e(c)..char c;..{
015F50:  0D 0A 09 69 66 20 28 21 63 29 20 72 65 74 75 72    ...if (!c) retur
015F60:  6E 20 30 3B 09 2F 2A 20 69 66 20 6E 75 6C 6C 20    n 0;./* if null 
015F70:  72 65 74 75 72 6E 20 2A 2F 0D 0A 09 69 66 20 28    return */...if (
015F80:  6F 75 74 70 75 74 29 20 7B 0D 0A 09 09 69 66 20    output) {....if 
015F90:  28 70 75 74 63 28 63 2C 66 6F 75 74 29 20 3D 3D    (putc(c,fout) ==
015FA0:  20 45 52 52 4F 52 29 20 7B 0D 0A 09 09 09 63 6C     ERROR) {.....cl
015FB0:  6F 73 65 6F 75 74 28 29 3B 0D 0A 09 09 09 65 72    oseout();.....er
015FC0:  72 6F 72 28 22 4F 75 74 70 75 74 20 66 69 6C 65    ror("Output file
015FD0:  20 65 72 72 6F 72 22 29 3B 0D 0A 09 09 09 7D 0D     error");.....}.
015FE0:  0A 09 09 7D 0D 0A 09 65 6C 73 65 20 70 75 74 63    ...}...else putc
015FF0:  68 28 63 29 3B 0D 0A 09 72 65 74 75 72 6E 20 63    h(c);...return c
016000:  2F 2A 09 3E 3E 3E 3E 3E 3E 20 73 74 61 72 74 20    /*.>>>>>> start 
016010:  6F 66 20 63 63 34 20 3C 3C 3C 3C 3C 3C 3C 09 2A    of cc4 <<<<<<<.*
016020:  2F 0D 0A 23 69 66 6E 64 65 66 20 54 52 55 45 09    /..#ifndef TRUE.
016030:  2F 2A 20 63 68 65 63 6B 20 74 6F 20 73 65 65 20    /* check to see 
016040:  69 66 20 6E 65 65 64 20 69 6E 63 6C 75 64 65 20    if need include 
016050:  66 69 6C 65 20 2A 2F 0D 0A 23 69 6E 63 6C 75 64    file */..#includ
016060:  65 20 3C 43 2E 44 45 46 3E 0D 0A 23 65 6E 64 69    e <C.DEF>..#endi
016070:  66 0D 0A 6B 65 65 70 63 68 28 63 29 0D 0A 63 68    f..keepch(c)..ch
016080:  61 72 20 63 3B 0D 0A 7B 0D 0A 09 6D 6C 69 6E 65    ar c;..{...mline
016090:  5B 6D 70 74 72 5D 3D 63 3B 0D 0A 09 69 66 20 28    [mptr]=c;...if (
0160A0:  6D 70 74 72 3C 6D 70 6D 61 78 29 20 6D 70 74 72    mptr<mpmax) mptr
0160B0:  2B 2B 3B 0D 0A 09 72 65 74 75 72 6E 20 63 3B 0D    ++;...return c;.
0160C0:  0A 09 7D 0D 0A 70 72 65 70 72 6F 63 65 73 73 28    ..}..preprocess(
0160D0:  29 0D 0A 7B 0D 0A 09 69 6E 74 20 6B 3B 0D 0A 09    )..{...int k;...
0160E0:  63 68 61 72 20 63 2C 73 6E 61 6D 65 5B 6E 61 6D    char c,sname[nam
0160F0:  65 73 69 7A 65 5D 3B 0D 0A 09 69 66 20 28 21 63    esize];...if (!c
016100:  6D 6F 64 65 29 20 72 65 74 75 72 6E 3B 0D 0A 09    mode) return;...
016110:  6D 70 74 72 3D 6C 70 74 72 3D 30 3B 0D 0A 09 77    mptr=lptr=0;...w
016120:  68 69 6C 65 28 21 63 69 66 20 26 26 20 21 65 6F    hile(!cif && !eo
016130:  66 29 20 7B 0D 0A 09 09 69 66 20 28 6D 61 74 63    f) {....if (matc
016140:  68 28 22 23 65 6E 64 69 66 22 29 29 20 63 69 66    h("#endif")) cif
016150:  3D 54 52 55 45 3B 0D 0A 09 09 65 6C 73 65 20 69    =TRUE;....else i
016160:  6E 6C 69 6E 65 28 29 3B 0D 0A 09 09 7D 0D 0A 09    nline();....}...
016170:  69 66 20 28 63 68 28 29 20 3D 3D 20 27 23 27 29    if (ch() == '#')
016180:  20 6D 61 74 63 68 28 22 23 65 6E 64 69 66 22 29     match("#endif")
016190:  3B 0D 0A 09 77 68 69 6C 65 28 63 68 28 29 29 20    ;...while(ch()) 
0161A0:  7B 0D 0A 09 09 69 66 20 28 69 73 73 70 61 63 65    {....if (isspace
0161B0:  28 63 68 28 29 29 29 20 7B 0D 0A 09 09 09 6B 65    (ch())) {.....ke
0161C0:  65 70 63 68 28 27 20 27 29 3B 0D 0A 09 09 09 77    epch(' ');.....w
0161D0:  68 69 6C 65 28 69 73 73 70 61 63 65 28 63 68 28    hile(isspace(ch(
0161E0:  29 29 29 20 67 63 68 28 29 3B 0D 0A 09 09 09 7D    ))) gch();.....}
0161F0:  0D 0A 09 09 65 6C 73 65 20 69 66 20 28 63 68 28    ....else if (ch(
016200:  3B 0D 0A 09 7D 0D 0A 6F 75 74 73 74 72 28 70 74    ;...}..outstr(pt
016210:  72 29 0D 0A 63 68 61 72 20 2A 70 74 72 3B 0D 0A    r)..char *ptr;..
016220:  7B 0D 0A 09 77 68 69 6C 65 28 6F 75 74 62 79 74    {...while(outbyt
016230:  65 28 2A 70 74 72 2B 2B 29 29 3B 0D 0A 09 7D 0D    e(*ptr++));...}.
016240:  0A 6E 6C 28 29 0D 0A 7B 0D 0A 09 6F 75 74 62 79    .nl()..{...outby
016250:  74 65 28 27 5C 72 27 29 3B 0D 0A 09 6F 75 74 62    te('\r');...outb
016260:  79 74 65 28 27 5C 6E 27 29 3B 0D 0A 09 7D 0D 0A    yte('\n');...}..
016270:  74 61 62 28 29 0D 0A 7B 0D 0A 09 6F 75 74 62 79    tab()..{...outby
016280:  74 65 28 27 5C 74 27 29 3B 0D 0A 09 7D 0D 0A 63    te('\t');...}..c
016290:  6F 6C 28 29 0D 0A 7B 0D 0A 09 6F 75 74 62 79 74    ol()..{...outbyt
0162A0:  65 28 27 3A 27 29 3B 0D 0A 09 7D 0D 0A 65 72 72    e(':');...}..err
0162B0:  6F 72 28 70 74 72 29 0D 0A 63 68 61 72 20 2A 70    or(ptr)..char *p
0162C0:  74 72 3B 0D 0A 7B 0D 0A 09 63 68 61 72 20 62 75    tr;..{...char bu
0162D0:  66 66 5B 38 30 5D 3B 0D 0A 09 69 6E 74 20 20 6A    ff[80];...int  j
0162E0:  2C 6B 3B 0D 0A 09 73 74 72 63 70 79 28 62 75 66    ,k;...strcpy(buf
0162F0:  66 2C 70 74 72 29 3B 0D 0A 09 73 74 72 63 61 74    f,ptr);...strcat
016300:  28 62 75 66 66 2C 22 20 5C 22 22 29 3B 0D 0A 09    (buff," \"");...
016310:  6A 3D 6C 70 74 72 2D 31 30 3B 0D 0A 09 69 66 20    j=lptr-10;...if 
016320:  28 6A 3C 30 29 20 6A 3D 30 3B 0D 0A 09 6B 3D 73    (j<0) j=0;...k=s
016330:  74 72 6C 65 6E 28 62 75 66 66 29 3B 0D 0A 09 77    trlen(buff);...w
016340:  68 69 6C 65 28 6A 2D 31 35 3C 6C 70 74 72 20 26    hile(j-15<lptr &
016350:  26 20 6C 69 6E 65 5B 6A 5D 29 20 62 75 66 66 5B    & line[j]) buff[
016360:  6B 2B 2B 5D 3D 6C 69 6E 65 5B 6A 2B 2B 5D 3B 0D    k++]=line[j++];.
016370:  0A 09 62 75 66 66 5B 6B 5D 3D 30 3B 0D 0A 09 73    ..buff[k]=0;...s
016380:  74 72 63 61 74 28 62 75 66 66 2C 22 5C 22 22 29    trcat(buff,"\"")
016390:  3B 0D 0A 09 65 72 72 6F 72 5F 70 72 69 6E 74 28    ;...error_print(
0163A0:  62 75 66 66 29 3B 0D 0A 09 72 65 74 75 72 6E 3B    buff);...return;
0163B0:  0D 0A 09 7D 0D 0A 65 72 72 6F 72 5F 70 72 69 6E    ...}..error_prin
0163C0:  74 28 70 74 72 29 0D 0A 63 68 61 72 20 70 74 72    t(ptr)..char ptr
0163D0:  5B 5D 3B 0D 0A 7B 0D 0A 09 63 68 61 72 20 62 75    [];..{...char bu
0163E0:  66 66 5B 38 30 5D 3B 0D 0A 09 69 6E 74 20 6B 2C    ff[80];...int k,
0163F0:  6A 3B 0D 0A 09 63 6F 6D 6D 65 6E 74 28 29 3B 6F    j;...comment();o
016400:  29 20 3D 3D 20 27 5C 5C 27 29 20 7B 0D 0A 09 09    ) == '\\') {....
016410:  09 6B 65 65 70 63 68 28 63 68 28 29 29 3B 0D 0A    .keepch(ch());..
016420:  09 09 09 67 63 68 28 29 3B 0D 0A 09 09 09 69 66    ...gch();.....if
016430:  20 28 21 63 68 28 29 29 20 7B 0D 0A 09 09 09 09     (!ch()) {......
016440:  65 72 72 6F 72 28 22 6D 69 73 73 69 6E 67 20 65    error("missing e
016450:  73 63 61 70 65 20 63 68 61 72 61 63 74 65 72 22    scape character"
016460:  29 3B 0D 0A 09 09 09 09 62 72 65 61 6B 3B 0D 0A    );......break;..
016470:  09 09 09 09 7D 0D 0A 09 09 09 6B 65 65 70 63 68    ....}.....keepch
016480:  28 63 68 28 29 29 3B 0D 0A 09 09 09 67 63 68 28    (ch());.....gch(
016490:  29 3B 0D 0A 09 09 09 7D 0D 0A 09 09 65 6C 73 65    );.....}....else
0164A0:  20 69 66 28 63 68 28 29 3D 3D 27 22 27 29 20 7B     if(ch()=='"') {
0164B0:  0D 0A 09 09 09 6B 65 65 70 63 68 28 63 68 28 29    .....keepch(ch()
0164C0:  29 3B 0D 0A 09 09 09 67 63 68 28 29 3B 0D 0A 09    );.....gch();...
0164D0:  09 09 77 68 69 6C 65 28 63 68 28 29 21 3D 27 22    ..while(ch()!='"
0164E0:  27 29 20 7B 0D 0A 09 09 09 09 69 66 28 21 63 68    ') {......if(!ch
0164F0:  28 29 29 20 7B 0D 0A 09 09 09 09 20 20 65 72 72    ()) {......  err
016500:  6F 72 28 22 6D 69 73 73 69 6E 67 20 71 75 6F 74    or("missing quot
016510:  65 22 29 3B 0D 0A 09 09 09 09 20 20 62 72 65 61    e");......  brea
016520:  6B 3B 0D 0A 09 09 09 09 20 20 7D 0D 0A 09 09 09    k;......  }.....
016530:  09 69 66 20 28 63 68 28 29 20 3D 3D 20 27 5C 5C    .if (ch() == '\\
016540:  27 29 20 6B 65 65 70 63 68 28 67 63 68 28 29 29    ') keepch(gch())
016550:  3B 0D 0A 09 09 09 09 6B 65 65 70 63 68 28 67 63    ;......keepch(gc
016560:  68 28 29 29 3B 0D 0A 09 09 09 09 7D 0D 0A 09 09    h());......}....
016570:  09 67 63 68 28 29 3B 0D 0A 09 09 09 6B 65 65 70    .gch();.....keep
016580:  63 68 28 27 22 27 29 3B 0D 0A 09 09 09 7D 0D 0A    ch('"');.....}..
016590:  09 09 65 6C 73 65 20 69 66 28 63 68 28 29 3D 3D    ..else if(ch()==
0165A0:  27 5C 27 27 29 20 7B 0D 0A 09 09 09 6B 65 65 70    '\'') {.....keep
0165B0:  63 68 28 27 5C 27 27 29 3B 0D 0A 09 09 09 67 63    ch('\'');.....gc
0165C0:  68 28 29 3B 0D 0A 09 09 09 77 68 69 6C 65 28 63    h();.....while(c
0165D0:  68 28 29 21 3D 27 5C 27 27 29 20 7B 0D 0A 09 09    h()!='\'') {....
0165E0:  09 09 69 66 28 21 63 68 28 29 29 20 7B 0D 0A 09    ..if(!ch()) {...
0165F0:  09 09 09 20 20 65 72 72 6F 72 28 22 6D 69 73 73    ...  error("miss
016600:  75 74 73 74 72 28 6C 69 6E 65 29 3B 6E 6C 28 29    utstr(line);nl()
016610:  3B 63 6F 6D 6D 65 6E 74 28 29 3B 0D 0A 09 6B 3D    ;comment();...k=
016620:  30 3B 0D 0A 09 77 68 69 6C 65 28 6B 3C 6C 70 74    0;...while(k<lpt
016630:  72 29 20 7B 0D 0A 09 09 69 66 28 6C 69 6E 65 5B    r) {....if(line[
016640:  6B 5D 3D 3D 39 29 20 74 61 62 28 29 3B 0D 0A 09    k]==9) tab();...
016650:  09 09 65 6C 73 65 20 6F 75 74 62 79 74 65 28 27    ..else outbyte('
016660:  20 27 29 3B 0D 0A 09 09 2B 2B 6B 3B 0D 0A 09 09     ');....++k;....
016670:  7D 0D 0A 09 6F 75 74 62 79 74 65 28 27 5E 27 29    }...outbyte('^')
016680:  3B 0D 0A 09 6E 6C 28 29 3B 63 6F 6D 6D 65 6E 74    ;...nl();comment
016690:  28 29 3B 6F 75 74 73 74 72 28 22 2A 2A 2A 2A 2A    ();outstr("*****
0166A0:  2A 20 20 22 29 3B 0D 0A 09 6F 75 74 73 74 72 28    *  ");...outstr(
0166B0:  70 74 72 29 3B 0D 0A 09 6F 75 74 73 74 72 28 22    ptr);...outstr("
0166C0:  20 20 2A 2A 2A 2A 2A 2A 22 29 3B 0D 0A 09 6E 6C      ******");...nl
0166D0:  28 29 3B 0D 0A 09 69 66 20 28 69 6E 70 75 74 32    ();...if (input2
0166E0:  29 20 7B 0D 0A 09 09 73 74 72 63 70 79 28 62 75    ) {....strcpy(bu
0166F0:  66 66 2C 22 45 72 72 6F 72 20 69 6E 20 69 6E 63    ff,"Error in inc
016700:  6C 75 64 65 20 66 69 6C 65 20 61 74 20 6C 69 6E    lude file at lin
016710:  65 20 22 29 3B 0D 0A 09 09 73 64 65 63 28 62 75    e ");....sdec(bu
016720:  66 66 2B 73 74 72 6C 65 6E 28 62 75 66 66 29 2C    ff+strlen(buff),
016730:  6C 69 6E 65 32 29 3B 0D 0A 09 09 7D 0D 0A 09 65    line2);....}...e
016740:  6C 73 65 20 7B 0D 0A 09 09 73 74 72 63 70 79 28    lse {....strcpy(
016750:  62 75 66 66 2C 22 45 72 72 6F 72 20 61 74 20 6C    buff,"Error at l
016760:  69 6E 65 20 22 29 3B 0D 0A 09 09 73 64 65 63 28    ine ");....sdec(
016770:  62 75 66 66 2B 73 74 72 6C 65 6E 28 62 75 66 66    buff+strlen(buff
016780:  29 2C 6C 69 6E 65 31 29 3B 0D 0A 09 09 7D 0D 0A    ),line1);....}..
016790:  09 73 74 72 63 61 74 28 62 75 66 66 2C 22 20 22    .strcat(buff," "
0167A0:  29 3B 0D 0A 09 73 74 72 63 61 74 28 62 75 66 66    );...strcat(buff
0167B0:  2C 70 74 72 29 3B 0D 0A 09 73 74 72 63 61 74 28    ,ptr);...strcat(
0167C0:  62 75 66 66 2C 22 5C 6E 22 29 3B 0D 0A 09 70 6C    buff,"\n");...pl
0167D0:  28 62 75 66 66 29 3B 0D 0A 09 2B 2B 65 72 72 63    (buff);...++errc
0167E0:  6E 74 3B 0D 0A 09 20 7D 0D 0A 6F 6C 28 70 74 72    nt;... }..ol(ptr
0167F0:  29 20 20 20 20 0D 0A 63 68 61 72 20 70 74 72 5B    )    ..char ptr[
016800:  69 6E 67 20 61 70 6F 73 74 72 6F 70 68 65 22 29    ing apostrophe")
016810:  3B 0D 0A 09 09 09 09 20 20 62 72 65 61 6B 3B 0D    ;......  break;.
016820:  0A 09 09 09 09 20 20 7D 0D 0A 09 09 09 09 69 66    .....  }......if
016830:  20 28 63 68 28 29 3D 3D 20 27 5C 5C 27 29 20 6B     (ch()== '\\') k
016840:  65 65 70 63 68 28 67 63 68 28 29 29 3B 0D 0A 09    eepch(gch());...
016850:  09 09 09 6B 65 65 70 63 68 28 67 63 68 28 29 29    ...keepch(gch())
016860:  3B 0D 0A 09 09 09 09 7D 0D 0A 09 09 09 67 63 68    ;......}.....gch
016870:  28 29 3B 0D 0A 09 09 09 6B 65 65 70 63 68 28 27    ();.....keepch('
016880:  5C 27 27 29 3B 0D 0A 09 09 09 7D 0D 0A 09 09 65    \'');.....}....e
016890:  6C 73 65 20 69 66 28 28 63 68 28 29 3D 3D 27 2F    lse if((ch()=='/
0168A0:  27 29 20 26 26 20 28 6E 63 68 28 29 3D 3D 27 2A    ') && (nch()=='*
0168B0:  27 29 29 20 7B 0D 0A 09 09 09 69 6E 63 68 61 72    ')) {.....inchar
0168C0:  28 29 3B 0D 0A 09 09 09 69 6E 63 68 61 72 28 29    ();.....inchar()
0168D0:  3B 0D 0A 09 09 09 77 68 69 6C 65 28 21 28 28 63    ;.....while(!((c
0168E0:  68 28 29 3D 3D 27 2A 27 29 20 26 26 20 28 6E 63    h()=='*') && (nc
0168F0:  68 28 29 3D 3D 27 2F 27 29 29 29 20 7B 0D 0A 09    h()=='/'))) {...
016900:  09 09 09 69 66 28 63 68 28 29 3D 3D 30 29 69 6E    ...if(ch()==0)in
016910:  6C 69 6E 65 28 29 3B 0D 0A 09 09 09 09 65 6C 73    line();......els
016920:  65 20 69 6E 63 68 61 72 28 29 3B 0D 0A 09 09 09    e inchar();.....
016930:  09 69 66 28 65 6F 66 29 62 72 65 61 6B 3B 0D 0A    .if(eof)break;..
016940:  09 09 09 09 7D 0D 0A 09 09 09 69 6E 63 68 61 72    ....}.....inchar
016950:  28 29 3B 0D 0A 09 09 09 69 6E 63 68 61 72 28 29    ();.....inchar()
016960:  3B 0D 0A 09 09 09 7D 0D 0A 09 09 65 6C 73 65 20    ;.....}....else 
016970:  69 66 28 61 6E 28 63 68 28 29 29 29 20 7B 0D 0A    if(an(ch())) {..
016980:  09 09 09 6B 3D 30 3B 0D 0A 09 09 09 77 68 69 6C    ...k=0;.....whil
016990:  65 28 61 6E 28 63 68 28 29 29 29 20 7B 0D 0A 09    e(an(ch())) {...
0169A0:  09 09 09 69 66 28 6B 3C 6E 61 6D 65 6D 61 78 29    ...if(k<namemax)
0169B0:  73 6E 61 6D 65 5B 6B 2B 2B 5D 3D 63 68 28 29 3B    sname[k++]=ch();
0169C0:  0D 0A 09 09 09 09 67 63 68 28 29 3B 0D 0A 09 09    ......gch();....
0169D0:  09 09 7D 0D 0A 09 09 09 73 6E 61 6D 65 5B 6B 5D    ..}.....sname[k]
0169E0:  3D 30 3B 0D 0A 09 09 09 69 66 28 6B 3D 66 69 6E    =0;.....if(k=fin
0169F0:  64 6D 61 63 28 73 6E 61 6D 65 29 29 0D 0A 09 09    dmac(sname))....
016A00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
016A10:  13 00 01 00 02 09 52 E5 13 00 C1 02 00 00 00 02    ......R.........
016A20:  13 00 C6 02 00 00 00 02 13 00 C2 02 00 00 00 02    ................
016A30:  13 00 C7 02 00 00 00 02 13 00 C3 02 00 00 00 02    ................
016A40:  13 00 C8 02 00 00 00 02 13 00 C4 02 00 00 00 02    ................
016A50:  13 00 C9 02 00 00 00 02 13 00 C5 02 00 00 00 02    ................
016A60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
016A70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
016A80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
016A90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
016AA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
016AB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
016AC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
016AD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
016AE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
016AF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
016B00:  5D 3B 0D 0A 7B 0D 0A 09 6F 74 28 70 74 72 29 3B    ];..{...ot(ptr);
016B10:  0D 0A 09 6E 6C 28 29 3B 0D 0A 7D 0D 0A 6F 74 28    ...nl();..}..ot(
016B20:  70 74 72 29 0D 0A 63 68 61 72 20 70 74 72 5B 5D    ptr)..char ptr[]
016B30:  3B 0D 0A 7B 0D 0A 09 74 61 62 28 29 3B 0D 0A 09    ;..{...tab();...
016B40:  6F 75 74 73 74 72 28 70 74 72 29 3B 0D 0A 09 7D    outstr(ptr);...}
016B50:  0D 0A 73 74 72 65 71 28 73 74 72 31 2C 73 74 72    ..streq(str1,str
016B60:  32 29 0D 0A 63 68 61 72 20 73 74 72 31 5B 5D 2C    2)..char str1[],
016B70:  73 74 72 32 5B 5D 3B 0D 0A 7B 0D 0A 09 69 6E 74    str2[];..{...int
016B80:  20 6B 3B 0D 0A 09 6B 3D 30 3B 0D 0A 09 77 68 69     k;...k=0;...whi
016B90:  6C 65 28 73 74 72 32 5B 6B 5D 29 20 7B 0D 0A 09    le(str2[k]) {...
016BA0:  09 69 66 20 28 73 74 72 31 5B 6B 5D 21 3D 73 74    .if (str1[k]!=st
016BB0:  72 32 5B 6B 5D 29 20 72 65 74 75 72 6E 20 30 3B    r2[k]) return 0;
016BC0:  0D 0A 09 09 6B 2B 2B 3B 0D 0A 09 09 7D 0D 0A 09    ....k++;....}...
016BD0:  72 65 74 75 72 6E 20 6B 3B 0D 0A 09 7D 0D 0A 61    return k;...}..a
016BE0:  73 74 72 65 71 28 73 74 72 31 2C 73 74 72 32 2C    streq(str1,str2,
016BF0:  6C 65 6E 29 0D 0A 63 68 61 72 20 73 74 72 31 5B    len)..char str1[
016C00:  5D 2C 73 74 72 32 5B 5D 3B 69 6E 74 20 6C 65 6E    ],str2[];int len
016C10:  3B 0D 0A 7B 0D 0A 09 69 6E 74 20 6B 3B 0D 0A 09    ;..{...int k;...
016C20:  6B 3D 30 3B 0D 0A 09 77 68 69 6C 65 20 28 6B 3C    k=0;...while (k<
016C30:  6C 65 6E 29 20 7B 0D 0A 09 09 69 66 20 28 28 73    len) {....if ((s
016C40:  74 72 31 5B 6B 5D 29 21 3D 28 73 74 72 32 5B 6B    tr1[k])!=(str2[k
016C50:  5D 29 29 62 72 65 61 6B 3B 0D 0A 09 09 69 66 28    ]))break;....if(
016C60:  21 73 74 72 31 5B 6B 5D 29 62 72 65 61 6B 3B 0D    !str1[k])break;.
016C70:  0A 09 09 69 66 28 21 73 74 72 32 5B 6B 5D 29 62    ...if(!str2[k])b
016C80:  72 65 61 6B 3B 0D 0A 09 09 6B 2B 2B 3B 0D 0A 09    reak;....k++;...
016C90:  09 7D 0D 0A 09 69 66 20 28 61 6E 28 73 74 72 31    .}...if (an(str1
016CA0:  5B 6B 5D 29 29 72 65 74 75 72 6E 20 30 3B 0D 0A    [k]))return 0;..
016CB0:  09 69 66 20 28 61 6E 28 73 74 72 32 5B 6B 5D 29    .if (an(str2[k])
016CC0:  29 72 65 74 75 72 6E 20 30 3B 0D 0A 09 72 65 74    )return 0;...ret
016CD0:  75 72 6E 20 6B 3B 0D 0A 09 7D 0D 0A 6D 61 74 63    urn k;...}..matc
016CE0:  68 28 6C 69 74 29 0D 0A 63 68 61 72 20 2A 6C 69    h(lit)..char *li
016CF0:  74 3B 0D 0A 7B 0D 0A 09 69 6E 74 20 6B 3B 0D 0A    t;..{...int k;..
016D00:  0D 0A 2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ../*************
016D10:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
016D20:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
016D30:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F 2A    ***********/../*
016D40:  09 09 09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 65 78    .......*/../*.ex
016D50:  70 72 65 73 73 69 6F 6E 20 68 61 6E 64 6C 65 72    pression handler
016D60:  20 09 09 09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09     ....*/../*.....
016D70:  09 09 2A 2F 0D 0A 2F 2A 09 74 61 62 6C 65 20 62    ..*/../*.table b
016D80:  65 6C 6F 77 20 73 68 6F 77 20 70 72 65 63 65 64    elow show preced
016D90:  65 6E 63 65 20 6F 66 20 6F 70 65 72 61 74 6F 72    ence of operator
016DA0:  09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A    ..*/../*.......*
016DB0:  2F 0D 0A 2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /../************
016DC0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
016DD0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
016DE0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F    ************/../
016DF0:  2A 09 6F 70 65 72 61 74 6F 72 09 2A 20 72 6F 75    *.operator.* rou
016E00:  74 69 6E 65 09 2A 20 61 73 73 6F 63 69 61 74 69    tine.* associati
016E10:  76 69 74 79 09 2A 2F 0D 0A 2F 2A 2A 2A 2A 2A 2A    vity.*/../******
016E20:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
016E30:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
016E40:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
016E50:  2A 2A 2F 0D 0A 2F 2A 09 7C 20 2B 2B 20 2D 2D 20    **/../*.| ++ -- 
016E60:  2D 20 2A 20 26 09 2A 20 68 65 69 72 31 30 09 2A    - * &.* heir10.*
016E70:  20 6C 65 66 74 20 74 6F 20 72 69 67 68 74 09 2A     left to right.*
016E80:  2F 0D 0A 2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /../************
016E90:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
016EA0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
016EB0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F    ************/../
016EC0:  2A 09 2A 20 2F 20 25 09 09 2A 20 68 65 69 72 39    *.* / %..* heir9
016ED0:  09 09 2A 20 72 69 67 74 68 20 74 6F 20 6C 65 66    ..* rigth to lef
016EE0:  74 09 2A 2F 0D 0A 2F 2A 2A 2A 2A 2A 2A 2A 2A 2A    t.*/../*********
016EF0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
016F00:  09 62 6C 61 6E 6B 73 28 29 3B 0D 0A 09 69 66 20    .blanks();...if 
016F10:  28 6B 3D 73 74 72 65 71 28 6C 69 6E 65 2B 6C 70    (k=streq(line+lp
016F20:  74 72 2C 6C 69 74 29 29 0D 0A 09 09 7B 6C 70 74    tr,lit))....{lpt
016F30:  72 3D 6C 70 74 72 2B 6B 3B 0D 0A 09 09 72 65 74    r=lptr+k;....ret
016F40:  75 72 6E 20 31 3B 0D 0A 09 09 7D 0D 0A 09 72 65    urn 1;....}...re
016F50:  74 75 72 6E 20 30 3B 0D 0A 09 7D 0D 0A 61 6D 61    turn 0;...}..ama
016F60:  74 63 68 28 6C 69 74 2C 6C 65 6E 29 0D 0A 63 68    tch(lit,len)..ch
016F70:  61 72 20 2A 6C 69 74 3B 69 6E 74 20 6C 65 6E 3B    ar *lit;int len;
016F80:  0D 0A 20 7B 0D 0A 09 69 6E 74 20 6B 3B 0D 0A 09    .. {...int k;...
016F90:  62 6C 61 6E 6B 73 28 29 3B 0D 0A 09 69 66 20 28    blanks();...if (
016FA0:  6B 3D 61 73 74 72 65 71 28 6C 69 6E 65 2B 6C 70    k=astreq(line+lp
016FB0:  74 72 2C 6C 69 74 2C 6C 65 6E 29 29 20 7B 0D 0A    tr,lit,len)) {..
016FC0:  09 09 6C 70 74 72 3D 6C 70 74 72 2B 6B 3B 0D 0A    ..lptr=lptr+k;..
016FD0:  09 09 77 68 69 6C 65 28 61 6E 28 63 68 28 29 29    ..while(an(ch())
016FE0:  29 20 69 6E 62 79 74 65 28 29 3B 0D 0A 09 09 72    ) inbyte();....r
016FF0:  65 74 75 72 6E 20 31 3B 0D 0A 09 09 7D 0D 0A 09    eturn 1;....}...
017000:  72 65 74 75 72 6E 20 30 3B 0D 0A 09 7D 0D 0A 62    return 0;...}..b
017010:  6C 61 6E 6B 73 28 29 0D 0A 7B 0D 0A 09 77 68 69    lanks()..{...whi
017020:  6C 65 28 31 29 20 7B 0D 0A 09 09 77 68 69 6C 65    le(1) {....while
017030:  28 63 68 28 29 3D 3D 30 29 20 7B 0D 0A 09 09 09    (ch()==0) {.....
017040:  69 6E 6C 69 6E 65 28 29 3B 0D 0A 09 09 09 70 72    inline();.....pr
017050:  65 70 72 6F 63 65 73 73 28 29 3B 0D 0A 09 09 09    eprocess();.....
017060:  69 66 20 28 65 6F 66 29 20 62 72 65 61 6B 3B 0D    if (eof) break;.
017070:  0A 09 09 09 7D 0D 0A 09 09 69 66 28 69 73 73 70    ....}....if(issp
017080:  61 63 65 28 63 68 28 29 29 29 20 67 63 68 28 29    ace(ch())) gch()
017090:  3B 0D 0A 09 09 65 6C 73 65 20 72 65 74 75 72 6E    ;....else return
0170A0:  3B 0D 0A 09 09 7D 0D 0A 09 7D 0D 0A 6F 75 74 64    ;....}...}..outd
0170B0:  65 63 28 6E 75 6D 62 65 72 29 0D 0A 69 6E 74 20    ec(number)..int 
0170C0:  6E 75 6D 62 65 72 3B 0D 0A 7B 0D 0A 09 63 68 61    number;..{...cha
0170D0:  72 20 62 75 66 66 5B 31 30 5D 3B 0D 0A 09 6F 75    r buff[10];...ou
0170E0:  74 73 74 72 28 73 64 65 63 28 62 75 66 66 2C 6E    tstr(sdec(buff,n
0170F0:  75 6D 62 65 72 29 29 3B 0D 0A 09 7D 0D 0A 73 64    umber));...}..sd
017100:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017110:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2F    ***************/
017120:  0D 0A 2F 2A 09 2B 20 2D 09 09 2A 20 68 65 69 72    ../*.+ -..* heir
017130:  38 09 09 2A 20 6C 65 66 74 20 74 6F 20 72 69 67    8..* left to rig
017140:  68 74 09 2A 2F 0D 0A 2F 2A 2A 2A 2A 2A 2A 2A 2A    ht.*/../********
017150:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017160:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017170:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017180:  2F 0D 0A 2F 2A 09 3C 3C 20 3E 3E 09 09 2A 20 68    /../*.<< >>..* h
017190:  65 69 72 37 09 09 2A 20 6C 65 66 74 20 74 6F 20    eir7..* left to 
0171A0:  72 69 67 68 74 09 2A 2F 0D 0A 2F 2A 2A 2A 2A 2A    right.*/../*****
0171B0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
0171C0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
0171D0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
0171E0:  2A 2A 2A 2F 0D 0A 2F 2A 09 3C 20 3C 3D 20 3E 20    ***/../*.< <= > 
0171F0:  3E 3D 09 2A 20 68 65 69 72 36 09 09 2A 20 6C 65    >=.* heir6..* le
017200:  66 74 20 74 6F 20 72 69 67 68 74 09 2A 2F 0D 0A    ft to right.*/..
017210:  2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /***************
017220:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017230:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017240:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F 2A 09 3D    *********/../*.=
017250:  3D 20 21 3D 09 09 2A 20 68 65 69 72 35 09 09 2A    = !=..* heir5..*
017260:  20 6C 65 66 74 20 74 6F 20 72 69 67 74 68 20 2A     left to rigth *
017270:  2F 0D 0A 2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /../************
017280:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017290:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
0172A0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F    ************/../
0172B0:  2A 09 26 09 09 2A 20 68 65 69 72 34 09 09 2A 20    *.&..* heir4..* 
0172C0:  6C 65 66 74 20 74 6F 20 72 69 67 74 68 20 2A 2F    left to rigth */
0172D0:  0D 0A 2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ../*************
0172E0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
0172F0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017300:  65 63 28 73 74 72 69 6E 67 2C 6E 75 6D 62 65 72    ec(string,number
017310:  29 0D 0A 63 68 61 72 20 73 74 72 69 6E 67 5B 5D    )..char string[]
017320:  3B 0D 0A 69 6E 74 20 6E 75 6D 62 65 72 3B 0D 0A    ;..int number;..
017330:  7B 0D 0A 09 69 6E 74 20 6B 2C 7A 73 2C 6A 3B 0D    {...int k,zs,j;.
017340:  0A 09 63 68 61 72 20 63 3B 0D 0A 09 6A 3D 7A 73    ..char c;...j=zs
017350:  3D 30 3B 0D 0A 09 6B 3D 31 30 30 30 30 3B 0D 0A    =0;...k=10000;..
017360:  09 69 66 20 28 6E 75 6D 62 65 72 3C 30 29 20 7B    .if (number<0) {
017370:  0D 0A 09 09 6E 75 6D 62 65 72 3D 28 2D 6E 75 6D    ....number=(-num
017380:  62 65 72 29 3B 0D 0A 09 09 73 74 72 69 6E 67 5B    ber);....string[
017390:  6A 2B 2B 5D 3D 27 2D 27 3B 0D 0A 09 09 7D 0D 0A    j++]='-';....}..
0173A0:  09 77 68 69 6C 65 20 28 6B 3E 3D 31 29 20 7B 0D    .while (k>=1) {.
0173B0:  0A 09 09 63 3D 6E 75 6D 62 65 72 2F 6B 20 2B 20    ...c=number/k + 
0173C0:  27 30 27 3B 0D 0A 09 09 69 66 20 28 63 20 21 3D    '0';....if (c !=
0173D0:  20 27 30 27 20 7C 7C 20 6B 20 3D 3D 20 31 20 7C     '0' || k == 1 |
0173E0:  7C 20 7A 73 29 20 7B 0D 0A 09 09 09 7A 73 3D 31    | zs) {.....zs=1
0173F0:  3B 0D 0A 09 09 09 73 74 72 69 6E 67 5B 6A 2B 2B    ;.....string[j++
017400:  5D 3D 63 3B 20 0D 0A 09 09 09 7D 0D 0A 09 09 6E    ]=c; .....}....n
017410:  75 6D 62 65 72 3D 6E 75 6D 62 65 72 25 6B 3B 0D    umber=number%k;.
017420:  0A 09 09 6B 3D 6B 2F 31 30 3B 0D 0A 09 09 7D 0D    ...k=k/10;....}.
017430:  0A 09 73 74 72 69 6E 67 5B 6A 5D 3D 30 3B 0D 0A    ..string[j]=0;..
017440:  09 72 65 74 75 72 6E 20 73 74 72 69 6E 67 3B 0D    .return string;.
017450:  0A 09 7D 0D 0A 2F 2A 09 09 09 09 09 09 2A 2F 0D    ..}../*......*/.
017460:  0A 2F 2A 09 74 6F 20 6F 75 74 70 75 74 20 6E 75    ./*.to output nu
017470:  6D 62 65 72 20 61 73 20 61 20 68 65 78 20 76 61    mber as a hex va
017480:  6C 75 65 09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09    lue..*/../*.....
017490:  09 2A 2F 0D 0A 2F 2A 09 77 72 69 74 74 65 6E 20    .*/../*.written 
0174A0:  6A 75 6E 65 20 32 38 2C 20 31 39 38 31 20 62 79    june 28, 1981 by
0174B0:  20 4D 69 6B 65 20 42 65 72 6E 73 6F 6E 09 2A 2F     Mike Bernson.*/
0174C0:  0D 0A 2F 2A 09 09 09 09 09 09 2A 2F 0D 0A 6F 75    ../*......*/..ou
0174D0:  74 68 65 78 28 76 61 6C 75 65 29 0D 0A 69 6E 74    thex(value)..int
0174E0:  20 76 61 6C 75 65 3B 0D 0A 7B 0D 0A 09 69 6E 74     value;..{...int
0174F0:  20 20 70 6F 73 74 69 6F 6E 3B 0D 0A 09 63 68 61      postion;...cha
017500:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F 2A    ***********/../*
017510:  09 5E 09 09 2A 20 68 65 69 72 33 09 09 2A 20 6C    .^..* heir3..* l
017520:  65 66 74 20 74 6F 20 72 69 67 68 74 20 2A 2F 0D    eft to right */.
017530:  0A 2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ./**************
017540:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017550:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017560:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F 2A 09    **********/../*.
017570:  7C 09 09 2A 20 68 65 69 72 32 09 09 2A 20 6C 65    |..* heir2..* le
017580:  66 74 20 74 6F 20 72 69 67 68 74 20 2A 2F 0D 0A    ft to right */..
017590:  2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /***************
0175A0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
0175B0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
0175C0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F 2A 09 26    *********/../*.&
0175D0:  26 09 09 2A 20 68 65 69 72 31 65 09 2A 20 6C 65    &..* heir1e.* le
0175E0:  66 74 20 74 6F 20 72 69 67 68 74 20 2A 2F 0D 0A    ft to right */..
0175F0:  2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /***************
017600:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017610:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017620:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F 2A 09 7C    *********/../*.|
017630:  7C 09 09 2A 20 68 65 69 72 31 64 09 2A 20 6C 65    |..* heir1d.* le
017640:  66 74 20 74 6F 20 72 69 67 68 74 20 2A 2F 0D 0A    ft to right */..
017650:  2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    /***************
017660:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017670:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017680:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D 0A 2F 2A 09 3D    *********/../*.=
017690:  20 20 2D 3D 20 2B 3D 20 2A 3D 20 25 3D 20 20 2A      -= += *= %=  *
0176A0:  20 68 65 69 72 31 20 09 2A 20 6C 65 66 74 20 74     heir1 .* left t
0176B0:  6F 20 72 69 67 68 74 20 2A 2F 0D 0A 2F 2A 09 2F    o right */../*./
0176C0:  3D 20 26 3D 20 5E 3D 20 7C 3D 09 2A 09 09 2A 09    = &= ^= |=.*..*.
0176D0:  09 2A 2F 0D 0A 2F 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    .*/../**********
0176E0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
0176F0:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A    ****************
017700:  72 20 2A 68 65 78 3B 0D 0A 0D 0A 09 68 65 78 3D    r *hex;.....hex=
017710:  22 30 31 32 33 34 35 36 37 38 39 61 62 63 64 65    "0123456789abcde
017720:  66 22 3B 0D 0A 09 66 6F 72 28 70 6F 73 74 69 6F    f";...for(postio
017730:  6E 3D 31 36 3B 20 70 6F 73 74 69 6F 6E 20 3E 3D    n=16; postion >=
017740:  20 30 3B 20 70 6F 73 74 69 6F 6E 20 2D 3D 34 29     0; postion -=4)
017750:  20 0D 0A 09 09 6F 75 74 62 79 74 65 28 68 65 78     ....outbyte(hex
017760:  5B 28 76 61 6C 75 65 3E 3E 70 6F 73 74 69 6F 6E    [(value>>postion
017770:  29 20 26 20 30 78 30 66 5D 29 3B 0D 0A 09 6F 75    ) & 0x0f]);...ou
017780:  74 62 79 74 65 28 27 68 27 29 3B 0D 0A 1A 1A 1A    tbyte('h');.....
017790:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
0177A0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
0177B0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
0177C0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
0177D0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
0177E0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
0177F0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
017800:  00 19 EB C3 D9 00 CD 0A 03 CD 2C 01 DA 1D 01 C5    ..........,.....
017810:  11 0C 00 19 46 11 14 00 19 4E AF 78 1F 67 3E 00    ....F....N.x.g>.
017820:  1F 47 81 6F 79 A0 F2 2A 3E 24 C1 C9 FF FF FF FF    .G.oy..*>$......
017830:  FF F7 FF F7 FF FF FF FF FF FF FF FF FF FF FF FF    ................
017840:  FF FF FF FF FF FF F7 FF F7 FF FF FF FF FF FF FF    ................
017850:  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF    ................
017860:  FF FF FF FF FF FF F7 FF F7 FF FF FF FF FF FF FF    ................
017870:  FF FF FF FF FF FF FF FF FF FF FF FF FF F7 FF F7    ................
017880:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
017890:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0178A0:  00 01 84 01 FF 00 00 00 00 00 00 00 00 00 00 00    ................
0178B0:  00 00 00 00 00 00 00 00 00 00 08 26 C9 FD 00 00    ...........&....
0178C0:  00 00 00 00 00 00 08 26 C9 FD 00 00 00 00 00 00    .......&........
0178D0:  00 00 08 26 C9 FD 00 00 00 00 00 00 00 00 00 00    ...&............
0178E0:  00 00 00 00 02 26 C9 FD 00 00 00 00 00 00 00 00    .....&..........
0178F0:  00 00 00 00 00 00 04 26 C9 FD 00 00 00 00 00 00    .......&........
017900:  2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2F 0D    **************/.
017910:  0A 23 69 66 6E 64 65 66 20 54 52 55 45 09 2F 2A    .#ifndef TRUE./*
017920:  20 63 68 65 63 6B 20 74 6F 20 73 65 65 20 69 66     check to see if
017930:  20 6E 65 65 64 20 69 6E 63 6C 75 64 65 20 66 69     need include fi
017940:  6C 65 20 2A 2F 0D 0A 23 69 6E 63 6C 75 64 65 20    le */..#include 
017950:  3C 43 2E 44 45 46 3E 0D 0A 23 65 6E 64 69 66 0D    <C.DEF>..#endif.
017960:  0A 65 78 70 72 65 73 73 69 6F 6E 28 29 0D 0A 7B    .expression()..{
017970:  0D 0A 20 20 20 20 20 20 20 20 69 6E 74 20 6C 76    ..        int lv
017980:  61 6C 5B 6C 76 61 6C 73 69 7A 65 5D 2C 73 74 61    al[lvalsize],sta
017990:  74 75 73 3B 0D 0A 09 73 74 61 74 75 73 3D 46 41    tus;...status=FA
0179A0:  4C 53 45 3B 0D 0A 09 72 76 61 6C 75 65 28 6C 76    LSE;...rvalue(lv
0179B0:  61 6C 2C 68 65 69 72 31 28 6C 76 61 6C 2C 26 73    al,heir1(lval,&s
0179C0:  74 61 74 75 73 29 29 3B 0D 0A 09 72 65 74 75 72    tatus));...retur
0179D0:  6E 20 73 74 61 74 75 73 3B 0D 0A 09 7D 0D 0A 68    n status;...}..h
0179E0:  65 69 72 31 28 6C 76 61 6C 2C 73 74 61 74 75 73    eir1(lval,status
0179F0:  29 0D 0A 69 6E 74 20 6C 76 61 6C 5B 5D 3B 0D 0A    )..int lval[];..
017A00:  69 6E 74 20 2A 73 74 61 74 75 73 3B 0D 0A 7B 0D    int *status;..{.
017A10:  0A 20 20 20 20 20 20 20 20 69 6E 74 20 6B 3B 0D    .        int k;.
017A20:  0A 09 63 68 61 72 20 2A 70 74 72 3B 0D 0A 20 20    ..char *ptr;..  
017A30:  20 20 20 20 20 20 6B 3D 68 65 69 72 31 64 28 6C          k=heir1d(l
017A40:  76 61 6C 2C 73 74 61 74 75 73 29 3B 0D 0A 20 20    val,status);..  
017A50:  20 20 20 20 20 20 69 66 20 28 63 68 28 29 20 21          if (ch() !
017A60:  3D 20 20 27 3D 27 20 26 26 20 6E 63 68 28 29 20    =  '=' && nch() 
017A70:  21 3D 20 27 3D 27 29 20 72 65 74 75 72 6E 20 6B    != '=') return k
017A80:  3B 0D 0A 09 2A 73 74 61 74 75 73 3D 46 41 4C 53    ;...*status=FALS
017A90:  45 3B 0D 0A 09 73 77 69 74 63 68 28 63 68 28 29    E;...switch(ch()
017AA0:  29 20 7B 0D 0A 0D 0A 09 09 2F 2A 20 6A 75 73 74    ) {....../* just
017AB0:  20 61 6E 20 65 71 75 61 6C 20 2A 2F 0D 0A 09 09     an equal */....
017AC0:  63 61 73 65 20 27 3D 27 20 3A 0D 0A 09 09 09 67    case '=' :.....g
017AD0:  63 68 28 29 3B 0D 0A 09 09 09 65 71 75 61 6C 28    ch();.....equal(
017AE0:  6C 76 61 6C 2C 6B 29 3B 0D 0A 09 09 09 62 72 65    lval,k);.....bre
017AF0:  61 6B 3B 0D 0A 0D 0A 09 09 2F 2A 20 61 64 64 20    ak;....../* add 
017B00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017B10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017B20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017B30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017B40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017B50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017B60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017B70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017B80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017B90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017BA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017BB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017BC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017BD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017BE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017BF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017C00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017C10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017C20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017C30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017C40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017C50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017C60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017C70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017C80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017C90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017CA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017CB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017CC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017CD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017CE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017CF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
017D00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
017D10:  14 00 01 00 02 09 52 E5 14 00 C1 02 00 00 00 02    ......R.........
017D20:  14 00 C6 02 00 00 00 02 14 00 C2 02 00 00 00 02    ................
017D30:  14 00 C7 02 00 00 00 02 14 00 C3 02 00 00 00 02    ................
017D40:  14 00 C8 02 00 00 00 02 14 00 C4 02 00 00 00 02    ................
017D50:  14 00 C9 02 00 00 00 02 14 00 C5 02 00 00 00 02    ................
017D60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
017D70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
017D80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
017D90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
017DA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
017DB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
017DC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
017DD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
017DE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
017DF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
017E00:  76 61 6C 75 65 20 74 68 65 6E 20 73 74 6F 72 65    value then store
017E10:  20 2A 2F 0D 0A 09 09 63 61 73 65 20 27 2B 27 20     */....case '+' 
017E20:  3A 0D 0A 09 09 63 61 73 65 20 27 2D 27 20 3A 0D    :....case '-' :.
017E30:  0A 09 09 09 67 63 68 28 29 3B 67 63 68 28 29 3B    ....gch();gch();
017E40:  0D 0A 09 09 09 65 71 75 61 6C 5F 65 78 70 28 6C    .....equal_exp(l
017E50:  76 61 6C 2C 6B 29 3B 0D 0A 09 09 09 73 69 7A 65    val,k);.....size
017E60:  5F 61 64 6A 75 73 74 28 6C 76 61 6C 29 3B 0D 0A    _adjust(lval);..
017E70:  09 09 09 69 66 20 28 63 68 28 29 20 3D 3D 20 27    ...if (ch() == '
017E80:  2D 27 29 20 73 75 62 28 29 3B 20 65 6C 73 65 20    -') sub(); else 
017E90:  61 64 64 28 29 3B 0D 0A 09 09 09 6B 3D 31 3B 0D    add();.....k=1;.
017EA0:  0A 09 09 09 62 72 65 61 6B 3B 0D 0A 0D 0A 09 09    ....break;......
017EB0:  63 61 73 65 20 27 2A 27 20 3A 0D 0A 09 09 09 67    case '*' :.....g
017EC0:  63 68 28 29 3B 67 63 68 28 29 3B 0D 0A 09 09 09    ch();gch();.....
017ED0:  65 71 75 61 6C 5F 65 78 70 28 6C 76 61 6C 2C 6B    equal_exp(lval,k
017EE0:  29 3B 0D 0A 09 09 09 6D 75 6C 74 28 29 3B 0D 0A    );.....mult();..
017EF0:  09 09 09 6B 3D 31 3B 0D 0A 09 09 09 62 72 65 61    ...k=1;.....brea
017F00:  6B 3B 0D 0A 0D 0A 09 09 63 61 73 65 20 27 2F 27    k;......case '/'
017F10:  20 3A 0D 0A 09 09 09 67 63 68 28 29 3B 67 63 68     :.....gch();gch
017F20:  28 29 3B 0D 0A 09 09 09 65 71 75 61 6C 5F 65 78    ();.....equal_ex
017F30:  70 28 6C 76 61 6C 2C 6B 29 3B 0D 0A 09 09 09 64    p(lval,k);.....d
017F40:  69 76 28 29 3B 0D 0A 09 09 09 6B 3D 31 3B 0D 0A    iv();.....k=1;..
017F50:  09 09 09 62 72 65 61 6B 3B 0D 0A 0D 0A 0D 0A 09    ...break;.......
017F60:  09 63 61 73 65 20 27 25 27 20 3A 0D 0A 09 09 09    .case '%' :.....
017F70:  67 63 68 28 29 3B 67 63 68 28 29 3B 0D 0A 09 09    gch();gch();....
017F80:  09 65 71 75 61 6C 5F 65 78 70 28 6C 76 61 6C 2C    .equal_exp(lval,
017F90:  6B 29 3B 0D 0A 09 09 09 6D 6F 64 28 29 3B 0D 0A    k);.....mod();..
017FA0:  09 09 09 6B 3D 31 3B 0D 0A 09 09 09 62 72 65 61    ...k=1;.....brea
017FB0:  6B 3B 0D 0A 0D 0A 0D 0A 09 09 63 61 73 65 20 27    k;........case '
017FC0:  26 27 20 3A 0D 0A 09 09 09 67 63 68 28 29 3B 67    &' :.....gch();g
017FD0:  63 68 28 29 3B 0D 0A 09 09 09 65 71 75 61 6C 5F    ch();.....equal_
017FE0:  65 78 70 28 6C 76 61 6C 2C 6B 29 3B 0D 0A 09 09    exp(lval,k);....
017FF0:  09 61 6E 64 28 29 3B 0D 0A 09 09 09 6B 3D 31 3B    .and();.....k=1;
018000:  26 22 29 29 20 7B 0D 0A 09 09 09 70 75 73 68 28    &")) {.....push(
018010:  29 3B 0D 0A 09 09 09 72 76 61 6C 75 65 28 6C 76    );.....rvalue(lv
018020:  61 6C 32 2C 68 65 69 72 35 28 6C 76 61 6C 32 2C    al2,heir5(lval2,
018030:  73 74 61 74 75 73 29 29 3B 0D 0A 09 09 09 61 6E    status));.....an
018040:  64 28 29 3B 0D 0A 09 09 09 2A 73 74 61 74 75 73    d();.....*status
018050:  3D 54 52 55 45 3B 0D 0A 09 09 09 7D 0D 0A 09 09    =TRUE;.....}....
018060:  65 6C 73 65 20 72 65 74 75 72 6E 20 30 3B 0D 0A    else return 0;..
018070:  09 09 7D 0D 0A 09 7D 0D 0A 68 65 69 72 35 28 6C    ..}...}..heir5(l
018080:  76 61 6C 2C 73 74 61 74 75 73 29 0D 0A 69 6E 74    val,status)..int
018090:  20 6C 76 61 6C 5B 5D 3B 0D 0A 69 6E 74 20 2A 73     lval[];..int *s
0180A0:  74 61 74 75 73 3B 0D 0A 7B 0D 0A 09 69 6E 74 20    tatus;..{...int 
0180B0:  6B 2C 6C 76 61 6C 32 5B 6C 76 61 6C 73 69 7A 65    k,lval2[lvalsize
0180C0:  5D 3B 0D 0A 09 6B 3D 68 65 69 72 36 28 6C 76 61    ];...k=heir6(lva
0180D0:  6C 2C 73 74 61 74 75 73 29 3B 0D 0A 09 62 6C 61    l,status);...bla
0180E0:  6E 6B 73 28 29 3B 0D 0A 09 69 66 20 28 28 73 74    nks();...if ((st
0180F0:  72 65 71 28 6C 69 6E 65 2B 6C 70 74 72 2C 22 3D    req(line+lptr,"=
018100:  3D 22 29 20 3D 3D 30 29 20 26 26 0D 0A 20 20 20    =") ==0) &&..   
018110:  20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74                 (st
018120:  72 65 71 28 6C 69 6E 65 2B 6C 70 74 72 2C 22 21    req(line+lptr,"!
018130:  3D 22 29 20 3D 3D 20 30 29 29 20 72 65 74 75 72    =") == 0)) retur
018140:  6E 20 6B 3B 0D 0A 20 20 20 20 20 20 20 20 72 76    n k;..        rv
018150:  61 6C 75 65 28 6C 76 61 6C 2C 6B 29 3B 0D 0A 20    alue(lval,k);.. 
018160:  20 20 20 20 20 20 20 77 68 69 6C 65 28 31 29 20           while(1) 
018170:  7B 0D 0A 09 09 69 66 20 28 6D 61 74 63 68 28 22    {....if (match("
018180:  3D 3D 22 29 29 20 7B 0D 0A 09 09 09 70 75 73 68    ==")) {.....push
018190:  28 29 3B 0D 0A 09 09 09 72 76 61 6C 75 65 28 6C    ();.....rvalue(l
0181A0:  76 61 6C 32 2C 68 65 69 72 36 28 6C 76 61 6C 32    val2,heir6(lval2
0181B0:  2C 73 74 61 74 75 73 29 29 3B 0D 0A 09 09 09 65    ,status));.....e
0181C0:  71 28 29 3B 0D 0A 09 09 09 2A 73 74 61 74 75 73    q();.....*status
0181D0:  3D 54 52 55 45 3B 0D 0A 09 09 09 7D 0D 0A 09 09    =TRUE;.....}....
0181E0:  65 6C 73 65 20 69 66 20 28 6D 61 74 63 68 28 22    else if (match("
0181F0:  21 3D 22 29 29 20 7B 0D 0A 09 09 09 70 75 73 68    !=")) {.....push
018200:  0D 0A 09 09 09 62 72 65 61 6B 3B 0D 0A 0D 0A 09    .....break;.....
018210:  0D 0A 09 09 63 61 73 65 20 27 5E 27 20 3A 0D 0A    ....case '^' :..
018220:  09 09 09 67 63 68 28 29 3B 67 63 68 28 29 3B 09    ...gch();gch();.
018230:  0D 0A 09 09 09 65 71 75 61 6C 5F 65 78 70 28 6C    .....equal_exp(l
018240:  76 61 6C 2C 6B 29 3B 0D 0A 09 09 09 78 6F 72 28    val,k);.....xor(
018250:  29 3B 0D 0A 09 09 09 6B 3D 31 3B 0D 0A 09 09 09    );.....k=1;.....
018260:  62 72 65 61 6B 3B 0D 0A 09 09 0D 0A 09 09 63 61    break;........ca
018270:  73 65 20 27 7C 27 20 3A 0D 0A 09 09 09 67 63 68    se '|' :.....gch
018280:  28 29 3B 67 63 68 28 29 3B 0D 0A 09 09 09 65 71    ();gch();.....eq
018290:  75 61 6C 5F 65 78 70 28 6C 76 61 6C 2C 6B 29 3B    ual_exp(lval,k);
0182A0:  0D 0A 09 09 09 6F 72 28 29 3B 0D 0A 09 09 09 6B    .....or();.....k
0182B0:  3D 31 3B 0D 0A 09 09 09 62 72 65 61 6B 3B 0D 0A    =1;.....break;..
0182C0:  0D 0A 09 09 64 65 66 61 75 6C 74 3A 0D 0A 09 09    ....default:....
0182D0:  09 72 65 74 75 72 6E 20 6B 3B 0D 0A 09 09 7D 0D    .return k;....}.
0182E0:  0A 09 73 74 6F 72 65 28 6C 76 61 6C 2C 6B 29 3B    ..store(lval,k);
0182F0:  0D 0A 09 72 65 74 75 72 6E 20 30 3B 0D 0A 09 7D    ...return 0;...}
018300:  0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F 0D 0A 2F    ../*.......*/../
018310:  2A 09 77 72 69 74 74 65 6E 20 62 79 20 4D 69 6B    *.written by Mik
018320:  65 20 42 65 72 6E 73 6F 6E 20 31 2F 38 31 09 09    e Bernson 1/81..
018330:  09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F    .*/../*.......*/
018340:  0D 0A 68 65 69 72 31 64 28 6C 76 61 6C 2C 73 74    ..heir1d(lval,st
018350:  61 74 75 73 29 0D 0A 69 6E 74 20 6C 76 61 6C 5B    atus)..int lval[
018360:  5D 3B 0D 0A 69 6E 74 20 2A 73 74 61 74 75 73 3B    ];..int *status;
018370:  0D 0A 7B 0D 0A 09 69 6E 74 20 6B 2C 6C 76 61 6C    ..{...int k,lval
018380:  32 5B 6C 76 61 6C 73 69 7A 65 5D 3B 0D 0A 09 69    2[lvalsize];...i
018390:  6E 74 20 6C 61 62 65 6C 3B 0D 0A 09 6B 3D 68 65    nt label;...k=he
0183A0:  69 72 31 65 28 6C 76 61 6C 2C 73 74 61 74 75 73    ir1e(lval,status
0183B0:  29 3B 0D 0A 09 62 6C 61 6E 6B 73 28 29 3B 0D 0A    );...blanks();..
0183C0:  09 69 66 20 28 63 68 28 29 20 21 3D 20 27 7C 27    .if (ch() != '|'
0183D0:  20 7C 7C 20 6E 63 68 28 29 20 21 3D 20 27 7C 27     || nch() != '|'
0183E0:  29 20 72 65 74 75 72 6E 20 6B 3B 0D 0A 09 72 76    ) return k;...rv
0183F0:  61 6C 75 65 28 6C 76 61 6C 2C 6B 29 3B 0D 0A 09    alue(lval,k);...
018400:  28 29 3B 0D 0A 09 09 09 72 76 61 6C 75 65 28 6C    ();.....rvalue(l
018410:  76 61 6C 32 2C 68 65 69 72 36 28 6C 76 61 6C 32    val2,heir6(lval2
018420:  2C 73 74 61 74 75 73 29 29 3B 0D 0A 09 09 09 6E    ,status));.....n
018430:  65 28 29 3B 0D 0A 09 09 09 2A 73 74 61 74 75 73    e();.....*status
018440:  3D 54 52 55 45 3B 0D 0A 09 09 09 7D 0D 0A 09 09    =TRUE;.....}....
018450:  65 6C 73 65 20 72 65 74 75 72 6E 20 30 3B 0D 0A    else return 0;..
018460:  09 09 7D 0D 0A 09 7D 0D 0A 68 65 69 72 36 28 6C    ..}...}..heir6(l
018470:  76 61 6C 2C 73 74 61 74 75 73 29 0D 0A 69 6E 74    val,status)..int
018480:  20 6C 76 61 6C 5B 5D 3B 0D 0A 69 6E 74 20 2A 73     lval[];..int *s
018490:  74 61 74 75 73 3B 0D 0A 7B 0D 0A 09 69 6E 74 20    tatus;..{...int 
0184A0:  6B 2C 6C 76 61 6C 32 5B 6C 76 61 6C 73 69 7A 65    k,lval2[lvalsize
0184B0:  5D 3B 0D 0A 09 6B 3D 68 65 69 72 37 28 6C 76 61    ];...k=heir7(lva
0184C0:  6C 2C 73 74 61 74 75 73 29 3B 0D 0A 09 62 6C 61    l,status);...bla
0184D0:  6E 6B 73 28 29 3B 0D 0A 09 69 66 20 28 28 73 74    nks();...if ((st
0184E0:  72 65 71 28 6C 69 6E 65 2B 6C 70 74 72 2C 22 3C    req(line+lptr,"<
0184F0:  22 29 20 3D 3D 20 30 29 20 26 26 0D 0A 09 09 28    ") == 0) &&....(
018500:  73 74 72 65 71 28 6C 69 6E 65 2B 6C 70 74 72 2C    streq(line+lptr,
018510:  22 3E 22 29 20 3D 3D 20 30 29 20 26 26 0D 0A 09    ">") == 0) &&...
018520:  09 28 73 74 72 65 71 28 6C 69 6E 65 2B 6C 70 74    .(streq(line+lpt
018530:  72 2C 22 3C 3D 22 29 20 3D 3D 20 30 29 20 26 26    r,"<=") == 0) &&
018540:  0D 0A 09 09 28 73 74 72 65 71 28 6C 69 6E 65 2B    ....(streq(line+
018550:  6C 70 74 72 2C 22 3E 3D 22 29 20 3D 3D 20 30 29    lptr,">=") == 0)
018560:  29 20 72 65 74 75 72 6E 20 6B 3B 0D 0A 09 69 66    ) return k;...if
018570:  20 28 73 74 72 65 71 28 6C 69 6E 65 2B 6C 70 74     (streq(line+lpt
018580:  72 2C 22 3E 3E 22 29 29 20 72 65 74 75 72 6E 20    r,">>")) return 
018590:  6B 3B 0D 0A 09 69 66 20 28 73 74 72 65 71 28 6C    k;...if (streq(l
0185A0:  69 6E 65 2B 6C 70 74 72 2C 22 3C 3C 22 29 29 20    ine+lptr,"<<")) 
0185B0:  72 65 74 75 72 6E 20 6B 3B 0D 0A 09 72 76 61 6C    return k;...rval
0185C0:  75 65 28 6C 76 61 6C 2C 6B 29 3B 0D 0A 09 77 68    ue(lval,k);...wh
0185D0:  69 6C 65 28 31 29 20 7B 0D 0A 09 09 69 66 20 28    ile(1) {....if (
0185E0:  6D 61 74 63 68 28 22 3C 3D 22 29 29 20 7B 0D 0A    match("<=")) {..
0185F0:  09 09 09 70 75 73 68 28 29 3B 0D 0A 09 09 09 72    ...push();.....r
018600:  6C 61 62 65 6C 3D 67 65 74 6C 61 62 65 6C 28 29    label=getlabel()
018610:  3B 0D 0A 09 77 68 69 6C 65 28 31 29 20 7B 0D 0A    ;...while(1) {..
018620:  09 09 69 66 20 28 6D 61 74 63 68 28 22 7C 7C 22    ..if (match("||"
018630:  29 29 20 7B 0D 0A 09 09 09 74 72 75 65 6A 75 6D    )) {.....truejum
018640:  70 28 6C 61 62 65 6C 2C 2A 73 74 61 74 75 73 29    p(label,*status)
018650:  3B 0D 0A 09 09 09 2A 73 74 61 74 75 73 3D 54 52    ;.....*status=TR
018660:  55 45 3B 0D 0A 09 09 09 72 76 61 6C 75 65 28 6C    UE;.....rvalue(l
018670:  76 61 6C 32 2C 68 65 69 72 31 65 28 6C 76 61 6C    val2,heir1e(lval
018680:  32 2C 73 74 61 74 75 73 29 29 3B 0D 0A 09 09 09    2,status));.....
018690:  7D 0D 0A 09 09 65 6C 73 65 20 7B 0D 0A 09 09 09    }....else {.....
0186A0:  73 70 72 69 6E 74 6C 61 62 65 6C 28 6C 61 62 65    sprintlabel(labe
0186B0:  6C 29 3B 0D 0A 09 09 09 72 65 74 75 72 6E 20 30    l);.....return 0
0186C0:  3B 0D 0A 09 09 09 7D 0D 0A 09 09 7D 0D 0A 09 7D    ;.....}....}...}
0186D0:  0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 2F 2A 09    ../*.....*/../*.
0186E0:  77 72 69 74 74 65 6E 20 62 79 20 4D 69 6B 65 20    written by Mike 
0186F0:  42 65 72 6E 73 6F 6E 20 31 2F 38 31 09 2A 2F 0D    Bernson 1/81.*/.
018700:  0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 68 65 69 72    ./*.....*/..heir
018710:  31 65 28 6C 76 61 6C 2C 73 74 61 74 75 73 29 0D    1e(lval,status).
018720:  0A 69 6E 74 20 6C 76 61 6C 5B 5D 3B 0D 0A 69 6E    .int lval[];..in
018730:  74 20 2A 73 74 61 74 75 73 3B 0D 0A 7B 0D 0A 09    t *status;..{...
018740:  69 6E 74 20 6C 61 62 65 6C 3B 0D 0A 09 69 6E 74    int label;...int
018750:  20 6B 2C 6C 76 61 6C 32 5B 6C 76 61 6C 73 69 7A     k,lval2[lvalsiz
018760:  65 5D 3B 0D 0A 09 6B 3D 68 65 69 72 32 28 6C 76    e];...k=heir2(lv
018770:  61 6C 2C 73 74 61 74 75 73 29 3B 0D 0A 09 62 6C    al,status);...bl
018780:  61 6E 6B 73 28 29 3B 0D 0A 09 69 66 20 28 63 68    anks();...if (ch
018790:  28 29 20 21 3D 20 27 26 27 20 7C 7C 20 6E 63 68    () != '&' || nch
0187A0:  28 29 20 21 3D 20 27 26 27 29 20 72 65 74 75 72    () != '&') retur
0187B0:  6E 20 6B 3B 0D 0A 09 72 76 61 6C 75 65 28 6C 76    n k;...rvalue(lv
0187C0:  61 6C 2C 6B 29 3B 0D 0A 09 6C 61 62 65 6C 3D 67    al,k);...label=g
0187D0:  65 74 6C 61 62 65 6C 28 29 3B 0D 0A 09 77 68 69    etlabel();...whi
0187E0:  6C 65 28 31 29 20 7B 0D 0A 09 09 69 66 20 28 6D    le(1) {....if (m
0187F0:  61 74 63 68 28 22 26 26 22 29 29 20 7B 0D 0A 09    atch("&&")) {...
018800:  76 61 6C 75 65 28 6C 76 61 6C 32 2C 68 65 69 72    value(lval2,heir
018810:  37 28 6C 76 61 6C 32 2C 73 74 61 74 75 73 29 29    7(lval2,status))
018820:  3B 0D 0A 09 09 09 2A 73 74 61 74 75 73 3D 54 52    ;.....*status=TR
018830:  55 45 3B 0D 0A 09 09 09 69 66 20 28 63 70 74 72    UE;.....if (cptr
018840:  3D 6C 76 61 6C 5B 30 5D 29 0D 0A 09 09 09 09 69    =lval[0])......i
018850:  66 28 63 70 74 72 5B 69 64 65 6E 74 5D 3D 3D 70    f(cptr[ident]==p
018860:  6F 69 6E 74 65 72 29 20 7B 0D 0A 09 09 09 09 09    ointer) {.......
018870:  75 6C 65 28 29 3B 0D 0A 09 09 09 09 09 63 6F 6E    ule();.......con
018880:  74 69 6E 75 65 3B 0D 0A 09 09 09 09 09 7D 0D 0A    tinue;.......}..
018890:  09 09 09 69 66 20 28 63 70 74 72 3D 6C 76 61 6C    ...if (cptr=lval
0188A0:  32 5B 30 5D 29 0D 0A 09 09 09 09 69 66 28 63 70    2[0])......if(cp
0188B0:  74 72 5B 69 64 65 6E 74 5D 3D 3D 70 6F 69 6E 74    tr[ident]==point
0188C0:  65 72 29 20 7B 0D 0A 09 09 09 09 09 6C 65 28 29    er) {.......le()
0188D0:  3B 0D 0A 09 09 09 09 09 63 6F 6E 74 69 6E 75 65    ;.......continue
0188E0:  3B 0D 0A 09 09 09 09 09 7D 0D 0A 09 09 09 6C 65    ;.......}.....le
0188F0:  28 29 3B 0D 0A 09 09 09 7D 0D 0A 09 09 65 6C 73    ();.....}....els
018900:  65 20 69 66 20 28 6D 61 74 63 68 28 22 3E 3D 22    e if (match(">="
018910:  29 29 20 7B 0D 0A 09 09 09 70 75 73 68 28 29 3B    )) {.....push();
018920:  0D 0A 09 09 09 72 76 61 6C 75 65 28 6C 76 61 6C    .....rvalue(lval
018930:  32 2C 68 65 69 72 37 28 6C 76 61 6C 32 2C 73 74    2,heir7(lval2,st
018940:  61 74 75 73 29 29 3B 0D 0A 09 09 09 2A 73 74 61    atus));.....*sta
018950:  74 75 73 3D 54 52 55 45 3B 0D 0A 09 09 09 69 66    tus=TRUE;.....if
018960:  20 28 63 70 74 72 3D 6C 76 61 6C 5B 30 5D 29 0D     (cptr=lval[0]).
018970:  0A 09 09 09 09 69 66 20 28 63 70 74 72 5B 69 64    .....if (cptr[id
018980:  65 6E 74 5D 3D 3D 70 6F 69 6E 74 65 72 29 20 7B    ent]==pointer) {
018990:  0D 0A 09 09 09 09 09 75 67 65 28 29 3B 0D 0A 09    .......uge();...
0189A0:  09 09 09 09 63 6F 6E 74 69 6E 75 65 3B 0D 0A 09    ....continue;...
0189B0:  09 09 09 09 7D 0D 0A 09 09 09 69 66 20 28 63 70    ....}.....if (cp
0189C0:  74 72 3D 6C 76 61 6C 32 5B 30 5D 29 0D 0A 09 09    tr=lval2[0])....
0189D0:  09 09 69 66 20 28 63 70 74 72 5B 69 64 65 6E 74    ..if (cptr[ident
0189E0:  5D 3D 3D 70 6F 69 6E 74 65 72 29 20 7B 0D 0A 09    ]==pointer) {...
0189F0:  09 09 09 09 75 67 65 28 29 3B 0D 0A 09 09 09 09    ....uge();......
018A00:  09 09 74 65 73 74 6A 75 6D 70 28 6C 61 62 65 6C    ..testjump(label
018A10:  2C 2A 73 74 61 74 75 73 29 3B 0D 0A 09 09 09 2A    ,*status);.....*
018A20:  73 74 61 74 75 73 3D 54 52 55 45 3B 0D 0A 09 09    status=TRUE;....
018A30:  09 72 76 61 6C 75 65 28 6C 76 61 6C 32 2C 68 65    .rvalue(lval2,he
018A40:  69 72 32 28 6C 76 61 6C 32 2C 73 74 61 74 75 73    ir2(lval2,status
018A50:  29 29 3B 0D 0A 09 09 09 7D 0D 0A 09 09 65 6C 73    ));.....}....els
018A60:  65 20 7B 0D 0A 09 09 09 73 70 72 69 6E 74 6C 61    e {.....sprintla
018A70:  62 65 6C 28 6C 61 62 65 6C 29 3B 0D 0A 09 09 09    bel(label);.....
018A80:  72 65 74 75 72 6E 20 30 3B 0D 0A 09 09 09 7D 0D    return 0;.....}.
018A90:  0A 09 09 7D 0D 0A 09 7D 0D 0A 68 65 69 72 32 28    ...}...}..heir2(
018AA0:  6C 76 61 6C 2C 73 74 61 74 75 73 29 0D 0A 69 6E    lval,status)..in
018AB0:  74 20 6C 76 61 6C 5B 5D 3B 0D 0A 69 6E 74 20 2A    t lval[];..int *
018AC0:  73 74 61 74 75 73 3B 0D 0A 7B 0D 0A 09 69 6E 74    status;..{...int
018AD0:  20 6B 2C 6C 76 61 6C 32 5B 6C 76 61 6C 73 69 7A     k,lval2[lvalsiz
018AE0:  65 5D 3B 0D 0A 09 6B 3D 68 65 69 72 33 28 6C 76    e];...k=heir3(lv
018AF0:  61 6C 2C 73 74 61 74 75 73 29 3B 0D 0A 09 62 6C    al,status);...bl
018B00:  61 6E 6B 73 28 29 3B 0D 0A 09 69 66 20 28 63 68    anks();...if (ch
018B10:  28 29 20 21 3D 20 27 7C 27 20 7C 7C 20 6E 63 68    () != '|' || nch
018B20:  28 29 20 3D 3D 27 7C 27 20 7C 7C 20 6E 63 68 28    () =='|' || nch(
018B30:  29 3D 3D 20 27 3D 27 29 20 72 65 74 75 72 6E 20    )== '=') return 
018B40:  6B 3B 0D 0A 09 72 76 61 6C 75 65 28 6C 76 61 6C    k;...rvalue(lval
018B50:  2C 6B 29 3B 0D 0A 09 77 68 69 6C 65 28 31 29 20    ,k);...while(1) 
018B60:  7B 0D 0A 09 09 69 66 20 28 6D 61 74 63 68 28 22    {....if (match("
018B70:  7C 22 29 29 20 7B 0D 0A 09 09 09 70 75 73 68 28    |")) {.....push(
018B80:  29 3B 0D 0A 09 09 09 72 76 61 6C 75 65 28 6C 76    );.....rvalue(lv
018B90:  61 6C 32 2C 68 65 69 72 33 28 6C 76 61 6C 32 2C    al2,heir3(lval2,
018BA0:  73 74 61 74 75 73 29 29 3B 0D 0A 09 09 09 6F 72    status));.....or
018BB0:  28 29 3B 0D 0A 09 09 09 2A 73 74 61 74 75 73 3D    ();.....*status=
018BC0:  54 52 55 45 3B 0D 0A 09 09 09 7D 0D 0A 09 09 65    TRUE;.....}....e
018BD0:  6C 73 65 20 72 65 74 75 72 6E 20 30 3B 0D 0A 09    lse return 0;...
018BE0:  09 7D 0D 0A 09 7D 0D 0A 68 65 69 72 33 28 6C 76    .}...}..heir3(lv
018BF0:  61 6C 2C 73 74 61 74 75 73 29 0D 0A 69 6E 74 20    al,status)..int 
018C00:  09 63 6F 6E 74 69 6E 75 65 3B 0D 0A 09 09 09 09    .continue;......
018C10:  09 7D 0D 0A 09 09 09 67 65 28 29 3B 0D 0A 09 09    .}.....ge();....
018C20:  09 7D 0D 0A 09 09 65 6C 73 65 20 69 66 20 28 28    .}....else if ((
018C30:  73 74 72 65 71 28 6C 69 6E 65 2B 6C 70 74 72 2C    streq(line+lptr,
018C40:  22 3C 22 29 29 20 26 26 0D 0A 09 09 09 28 73 74    "<")) &&.....(st
018C50:  72 65 71 28 6C 69 6E 65 2B 6C 70 74 72 2C 22 3C    req(line+lptr,"<
018C60:  3C 22 29 3D 3D 30 29 29 20 7B 0D 0A 09 09 09 09    <")==0)) {......
018C70:  69 6E 62 79 74 65 28 29 3B 0D 0A 09 09 09 09 70    inbyte();......p
018C80:  75 73 68 28 29 3B 0D 0A 09 09 09 09 72 76 61 6C    ush();......rval
018C90:  75 65 28 6C 76 61 6C 32 2C 68 65 69 72 37 28 6C    ue(lval2,heir7(l
018CA0:  76 61 6C 32 2C 73 74 61 74 75 73 29 29 3B 0D 0A    val2,status));..
018CB0:  09 09 09 09 2A 73 74 61 74 75 73 3D 54 52 55 45    ....*status=TRUE
018CC0:  3B 0D 0A 09 09 09 09 69 66 20 28 63 70 74 72 3D    ;......if (cptr=
018CD0:  6C 76 61 6C 5B 30 5D 29 0D 0A 09 09 09 09 09 69    lval[0]).......i
018CE0:  66 20 28 63 70 74 72 5B 69 64 65 6E 74 5D 3D 3D    f (cptr[ident]==
018CF0:  70 6F 69 6E 74 65 72 29 20 7B 0D 0A 09 09 09 09    pointer) {......
018D00:  09 75 6C 74 28 29 3B 0D 0A 09 09 09 09 09 63 6F    .ult();.......co
018D10:  6E 74 69 6E 75 65 3B 0D 0A 09 09 09 09 09 7D 0D    ntinue;.......}.
018D20:  0A 09 09 09 09 69 66 28 63 70 74 72 3D 6C 76 61    .....if(cptr=lva
018D30:  6C 32 5B 30 5D 29 0D 0A 09 09 09 09 09 69 66 20    l2[0]).......if 
018D40:  28 63 70 74 72 5B 69 64 65 6E 74 5D 3D 3D 70 6F    (cptr[ident]==po
018D50:  69 6E 74 65 72 29 20 7B 0D 0A 09 09 09 09 09 09    inter) {........
018D60:  75 6C 74 28 29 3B 0D 0A 09 09 09 09 09 09 63 6F    ult();........co
018D70:  6E 74 69 6E 75 65 3B 0D 0A 09 09 09 09 09 09 7D    ntinue;........}
018D80:  0D 0A 09 09 09 6C 74 28 29 3B 0D 0A 09 09 09 7D    .....lt();.....}
018D90:  0D 0A 09 09 65 6C 73 65 20 69 66 20 28 28 73 74    ....else if ((st
018DA0:  72 65 71 28 6C 69 6E 65 2B 6C 70 74 72 2C 22 3E    req(line+lptr,">
018DB0:  22 29 29 20 26 26 0D 0A 09 09 09 28 73 74 72 65    ")) &&.....(stre
018DC0:  71 28 6C 69 6E 65 2B 6C 70 74 72 2C 22 3E 3E 22    q(line+lptr,">>"
018DD0:  29 20 3D 3D 20 30 29 29 20 7B 0D 0A 09 09 09 09    ) == 0)) {......
018DE0:  69 6E 62 79 74 65 28 29 3B 0D 0A 09 09 09 09 70    inbyte();......p
018DF0:  75 73 68 28 29 3B 0D 0A 09 09 09 09 72 76 61 6C    ush();......rval
018E00:  6C 76 61 6C 5B 5D 3B 0D 0A 69 6E 74 20 2A 73 74    lval[];..int *st
018E10:  61 74 75 73 3B 0D 0A 7B 0D 0A 09 69 6E 74 20 6B    atus;..{...int k
018E20:  2C 6C 76 61 6C 32 5B 6C 76 61 6C 73 69 7A 65 5D    ,lval2[lvalsize]
018E30:  3B 0D 0A 20 09 6B 3D 68 65 69 72 34 28 6C 76 61    ;.. .k=heir4(lva
018E40:  6C 2C 73 74 61 74 75 73 29 3B 0D 0A 09 62 6C 61    l,status);...bla
018E50:  6E 6B 73 28 29 3B 0D 0A 09 69 66 20 28 63 68 28    nks();...if (ch(
018E60:  29 20 21 3D 20 27 5E 27 20 7C 7C 20 6E 63 68 28    ) != '^' || nch(
018E70:  29 20 3D 3D 20 27 3D 27 29 20 72 65 74 75 72 6E    ) == '=') return
018E80:  20 6B 3B 0D 0A 09 72 76 61 6C 75 65 28 6C 76 61     k;...rvalue(lva
018E90:  6C 2C 6B 29 3B 0D 0A 09 77 68 69 6C 65 28 31 29    l,k);...while(1)
018EA0:  20 7B 0D 0A 09 09 69 66 20 28 6D 61 74 63 68 28     {....if (match(
018EB0:  22 5E 22 29 29 20 7B 0D 0A 09 09 09 70 75 73 68    "^")) {.....push
018EC0:  28 29 3B 0D 0A 09 09 09 72 76 61 6C 75 65 28 6C    ();.....rvalue(l
018ED0:  76 61 6C 32 2C 68 65 69 72 34 28 6C 76 61 6C 32    val2,heir4(lval2
018EE0:  2C 73 74 61 74 75 73 29 29 3B 0D 0A 09 09 09 78    ,status));.....x
018EF0:  6F 72 28 29 3B 0D 0A 09 09 09 2A 73 74 61 74 75    or();.....*statu
018F00:  73 3D 54 52 55 45 3B 0D 0A 09 09 09 7D 0D 0A 09    s=TRUE;.....}...
018F10:  09 65 6C 73 65 20 72 65 74 75 72 6E 20 30 3B 0D    .else return 0;.
018F20:  0A 09 09 7D 0D 0A 09 7D 0D 0A 68 65 69 72 34 28    ...}...}..heir4(
018F30:  6C 76 61 6C 2C 73 74 61 74 75 73 29 0D 0A 69 6E    lval,status)..in
018F40:  74 20 6C 76 61 6C 5B 5D 3B 0D 0A 69 6E 74 20 2A    t lval[];..int *
018F50:  73 74 61 74 75 73 3B 0D 0A 7B 0D 0A 09 69 6E 74    status;..{...int
018F60:  20 6B 2C 6C 76 61 6C 32 5B 6C 76 61 6C 73 69 7A     k,lval2[lvalsiz
018F70:  65 5D 3B 0D 0A 09 6B 3D 68 65 69 72 35 28 6C 76    e];...k=heir5(lv
018F80:  61 6C 2C 73 74 61 74 75 73 29 3B 0D 0A 09 62 6C    al,status);...bl
018F90:  61 6E 6B 73 28 29 3B 0D 0A 09 69 66 20 28 63 68    anks();...if (ch
018FA0:  28 29 20 21 3D 20 27 26 27 20 7C 7C 20 6E 63 68    () != '&' || nch
018FB0:  28 29 3D 3D 27 26 27 20 7C 7C 20 6E 63 68 28 29    ()=='&' || nch()
018FC0:  20 3D 3D 20 27 3D 27 29 20 72 65 74 75 72 6E 20     == '=') return 
018FD0:  6B 3B 0D 0A 09 72 76 61 6C 75 65 28 6C 76 61 6C    k;...rvalue(lval
018FE0:  2C 6B 29 3B 0D 0A 09 77 68 69 6C 65 28 31 29 20    ,k);...while(1) 
018FF0:  7B 0D 0A 09 09 69 66 20 28 6D 61 74 63 68 28 22    {....if (match("
019000:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
019010:  15 00 01 00 02 09 52 E5 15 00 C1 02 00 00 00 02    ......R.........
019020:  15 00 C6 02 00 00 00 02 15 00 C2 02 00 00 00 02    ................
019030:  15 00 C7 02 00 00 00 02 15 00 C3 02 00 00 00 02    ................
019040:  15 00 C8 02 00 00 00 02 15 00 C4 02 00 00 00 02    ................
019050:  15 00 C9 02 00 00 00 02 15 00 C5 02 00 00 00 02    ................
019060:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
019070:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
019080:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
019090:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0190A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0190B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0190C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0190D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0190E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0190F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
019100:  75 65 28 6C 76 61 6C 32 2C 68 65 69 72 37 28 6C    ue(lval2,heir7(l
019110:  76 61 6C 32 2C 73 74 61 74 75 73 29 29 3B 0D 0A    val2,status));..
019120:  09 09 09 09 2A 73 74 61 74 75 73 3D 54 52 55 45    ....*status=TRUE
019130:  3B 0D 0A 09 09 09 69 66 20 28 63 70 74 72 3D 6C    ;.....if (cptr=l
019140:  76 61 6C 5B 30 5D 29 0D 0A 09 09 09 09 69 66 20    val[0])......if 
019150:  28 63 70 74 72 5B 69 64 65 6E 74 5D 3D 3D 70 6F    (cptr[ident]==po
019160:  69 6E 74 65 72 29 20 7B 0D 0A 09 09 09 09 09 75    inter) {.......u
019170:  67 74 28 29 3B 0D 0A 09 09 09 09 09 63 6F 6E 74    gt();.......cont
019180:  69 6E 75 65 3B 0D 0A 09 09 09 09 09 7D 0D 0A 09    inue;.......}...
019190:  09 09 69 66 20 28 63 70 74 72 3D 6C 76 61 6C 32    ..if (cptr=lval2
0191A0:  5B 30 5D 29 0D 0A 09 09 09 09 69 66 20 28 63 70    [0])......if (cp
0191B0:  74 72 5B 69 64 65 6E 74 5D 3D 3D 70 6F 69 6E 74    tr[ident]==point
0191C0:  65 72 29 20 7B 0D 0A 09 09 09 09 09 75 67 74 28    er) {.......ugt(
0191D0:  29 3B 0D 0A 09 09 09 09 09 63 6F 6E 74 69 6E 75    );.......continu
0191E0:  65 3B 0D 0A 09 09 09 09 09 7D 0D 0A 09 09 09 67    e;.......}.....g
0191F0:  74 28 29 3B 0D 0A 09 09 09 7D 0D 0A 09 09 65 6C    t();.....}....el
019200:  73 65 20 72 65 74 75 72 6E 20 30 3B 0D 0A 09 09    se return 0;....
019210:  7D 0D 0A 09 7D 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A    }...}...........
019220:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
019230:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
019240:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
019250:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
019260:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
019270:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
019280:  BF 23 10 2C 22 47 72 61 62 61 6E 64 6F 20 70 69    .#.,"Grabando pi
019290:  73 74 61 73 2E 2E 2E 22 01 C9 00 93 00 88 13 8A    stas..."........
0192A0:  23 10 01 BF 23 10 01 BF 23 10 2C FF 03 28 15 29    #...#...#.,..(.)
0192B0:  3B 22 45 52 52 4F 52 20 44 45 20 43 41 52 47 41    ;"ERROR DE CARGA
0192C0:  20 45 4E 20 4C 41 20 50 49 53 54 41 20 22 3B 0D     EN LA PISTA ";.
0192D0:  00 00 D4 01 BF 23 10 2C 22 49 6E 74 65 6E 74 65    .....#.,"Intente
0192E0:  20 64 65 20 6E 75 65 76 6F 20 63 6F 6E 20 6F 74     de nuevo con ot
0192F0:  72 6F 20 76 6F 6C 75 6D 65 6E 2E 22 01 7C 00 53    ro volumen.".|.S
019300:  0A 09 69 66 28 6D 61 74 63 68 28 22 2B 2B 22 29    ..if(match("++")
019310:  29 20 7B 0D 0A 09 09 69 66 20 28 21 28 6B 3D 68    ) {....if (!(k=h
019320:  65 69 72 31 30 28 6C 76 61 6C 2C 63 6F 75 6E 74    eir10(lval,count
019330:  2C 73 74 61 74 75 73 29 29 29 20 7B 0D 0A 09 09    ,status))) {....
019340:  09 6E 65 65 64 6C 76 61 6C 28 29 3B 0D 0A 09 09    .needlval();....
019350:  09 72 65 74 75 72 6E 20 4C 4F 41 44 45 44 3B 0D    .return LOADED;.
019360:  0A 09 09 09 7D 0D 0A 09 09 6C 76 61 6C 5B 31 5D    ....}....lval[1]
019370:  20 2B 3D 20 2A 63 6F 75 6E 74 3B 0D 0A 09 09 61     += *count;....a
019380:  64 64 72 65 73 73 28 6C 76 61 6C 2C 6B 29 3B 0D    ddress(lval,k);.
019390:  0A 09 09 70 72 65 5F 69 6E 63 28 6C 76 61 6C 29    ...pre_inc(lval)
0193A0:  3B 0D 0A 09 09 72 65 74 75 72 6E 20 4C 4F 41 44    ;....return LOAD
0193B0:  45 44 3B 0D 0A 09 09 7D 0D 0A 09 65 6C 73 65 20    ED;....}...else 
0193C0:  69 66 20 28 6D 61 74 63 68 28 22 2D 2D 22 29 29    if (match("--"))
0193D0:  20 7B 0D 0A 09 09 69 66 20 28 21 28 6B 3D 68 65     {....if (!(k=he
0193E0:  69 72 31 30 28 6C 76 61 6C 2C 63 6F 75 6E 74 2C    ir10(lval,count,
0193F0:  73 74 61 74 75 73 29 29 29 20 7B 0D 0A 09 09 09    status))) {.....
019400:  6E 65 65 64 6C 76 61 6C 28 29 3B 0D 0A 09 09 09    needlval();.....
019410:  72 65 74 75 72 6E 20 4C 4F 41 44 45 44 3B 0D 0A    return LOADED;..
019420:  09 09 09 7D 0D 0A 09 09 6C 76 61 6C 5B 31 5D 20    ...}....lval[1] 
019430:  2B 3D 20 2A 63 6F 75 6E 74 3B 0D 0A 09 09 61 64    += *count;....ad
019440:  64 72 65 73 73 28 6C 76 61 6C 2C 6B 29 3B 0D 0A    dress(lval,k);..
019450:  09 09 70 72 65 5F 64 65 63 28 6C 76 61 6C 29 3B    ..pre_dec(lval);
019460:  0D 0A 09 09 2A 73 74 61 74 75 73 3D 54 52 55 45    ....*status=TRUE
019470:  3B 0D 0A 09 09 72 65 74 75 72 6E 20 4C 4F 41 44    ;....return LOAD
019480:  45 44 3B 0D 0A 09 09 7D 0D 0A 09 65 6C 73 65 20    ED;....}...else 
019490:  69 66 20 28 6D 61 74 63 68 28 22 2D 22 29 29 20    if (match("-")) 
0194A0:  7B 0D 0A 09 09 69 66 20 28 69 73 64 69 67 69 74    {....if (isdigit
0194B0:  28 6E 63 68 28 29 29 29 20 63 6F 6E 73 74 61 6E    (nch())) constan
0194C0:  74 28 29 3B 0D 0A 09 09 65 6C 73 65 20 7B 0D 0A    t();....else {..
0194D0:  09 09 09 6B 3D 68 65 69 72 31 30 28 6C 76 61 6C    ...k=heir10(lval
0194E0:  2C 63 6F 75 6E 74 2C 73 74 61 74 75 73 29 3B 0D    ,count,status);.
0194F0:  0A 09 09 09 72 76 61 6C 75 65 28 6C 76 61 6C 2C    ....rvalue(lval,
019500:  2F 2A 09 3E 3E 3E 3E 3E 3E 20 73 74 61 72 74 20    /*.>>>>>> start 
019510:  6F 66 20 63 63 36 20 3C 3C 3C 3C 3C 3C 09 2A 2F    of cc6 <<<<<<.*/
019520:  0D 0A 23 69 66 6E 64 65 66 09 54 52 55 45 09 2F    ..#ifndef.TRUE./
019530:  2A 20 73 65 65 20 69 66 20 6E 65 65 64 20 69 6E    * see if need in
019540:  63 6C 75 64 65 20 66 69 6C 65 20 2A 2F 0D 0A 23    clude file */..#
019550:  69 6E 63 6C 75 64 65 20 3C 43 2E 44 45 46 3E 0D    include <C.DEF>.
019560:  0A 23 65 6E 64 69 66 0D 0A 0D 0A 68 65 69 72 37    .#endif....heir7
019570:  28 6C 76 61 6C 2C 73 74 61 74 75 73 29 0D 0A 69    (lval,status)..i
019580:  6E 74 20 6C 76 61 6C 5B 5D 3B 0D 0A 69 6E 74 20    nt lval[];..int 
019590:  2A 73 74 61 74 75 73 3B 0D 0A 7B 0D 0A 09 69 6E    *status;..{...in
0195A0:  74 20 6B 2C 6C 76 61 6C 32 5B 6C 76 61 6C 73 69    t k,lval2[lvalsi
0195B0:  7A 65 5D 3B 0D 0A 09 6B 3D 68 65 69 72 38 28 6C    ze];...k=heir8(l
0195C0:  76 61 6C 2C 73 74 61 74 75 73 29 3B 0D 0A 09 62    val,status);...b
0195D0:  6C 61 6E 6B 73 28 29 3B 0D 0A 09 69 66 20 28 21    lanks();...if (!
0195E0:  73 74 72 65 71 28 6C 69 6E 65 2B 6C 70 74 72 2C    streq(line+lptr,
0195F0:  22 3E 3E 22 29 20 26 26 0D 0A 09 09 21 73 74 72    ">>") &&....!str
019600:  65 71 28 6C 69 6E 65 2B 6C 70 74 72 2C 22 3C 3C    eq(line+lptr,"<<
019610:  22 29 29 20 72 65 74 75 72 6E 20 6B 3B 0D 0A 09    ")) return k;...
019620:  72 76 61 6C 75 65 28 6C 76 61 6C 2C 6B 29 3B 0D    rvalue(lval,k);.
019630:  0A 09 77 68 69 6C 65 28 31 29 20 7B 0D 0A 09 09    ..while(1) {....
019640:  69 66 20 28 6D 61 74 63 68 28 22 3E 3E 22 29 29    if (match(">>"))
019650:  20 7B 0D 0A 09 09 09 70 75 73 68 28 29 3B 0D 0A     {.....push();..
019660:  09 09 09 6B 3D 68 65 69 72 38 28 6C 76 61 6C 32    ...k=heir8(lval2
019670:  29 3B 0D 0A 09 09 09 72 76 61 6C 75 65 28 6C 76    );.....rvalue(lv
019680:  61 6C 32 2C 6B 29 3B 0D 0A 09 09 09 61 73 72 28    al2,k);.....asr(
019690:  29 3B 0D 0A 09 09 09 2A 73 74 61 74 75 73 3D 46    );.....*status=F
0196A0:  41 4C 53 45 3B 0D 0A 09 09 09 7D 0D 0A 09 09 65    ALSE;.....}....e
0196B0:  6C 73 65 20 69 66 20 28 6D 61 74 63 68 28 22 3C    lse if (match("<
0196C0:  3C 22 29 29 20 7B 0D 0A 09 09 09 70 75 73 68 28    <")) {.....push(
0196D0:  29 3B 0D 0A 09 09 09 6B 3D 68 65 69 72 38 28 6C    );.....k=heir8(l
0196E0:  76 61 6C 32 29 3B 0D 0A 09 09 09 72 76 61 6C 75    val2);.....rvalu
0196F0:  65 28 6C 76 61 6C 32 2C 6B 29 3B 0D 0A 09 09 09    e(lval2,k);.....
019700:  6B 29 3B 0D 0A 09 09 09 6E 65 67 28 29 3B 0D 0A    k);.....neg();..
019710:  09 09 09 2A 73 74 61 74 75 73 3D 54 52 55 45 3B    ...*status=TRUE;
019720:  0D 0A 09 09 09 7D 0D 0A 09 09 72 65 74 75 72 6E    .....}....return
019730:  20 4C 4F 41 44 45 44 3B 0D 0A 09 09 7D 09 0D 0A     LOADED;....}...
019740:  09 65 6C 73 65 20 69 66 20 28 6D 61 74 63 68 28    .else if (match(
019750:  22 2A 22 29 29 20 7B 0D 0A 09 09 2B 2B 2A 63 6F    "*")) {....++*co
019760:  75 6E 74 3B 0D 0A 09 09 6B 3D 68 65 69 72 31 30    unt;....k=heir10
019770:  28 6C 76 61 6C 2C 63 6F 75 6E 74 2C 73 74 61 74    (lval,count,stat
019780:  75 73 29 3B 0D 0A 09 09 72 76 61 6C 75 65 28 6C    us);....rvalue(l
019790:  76 61 6C 2C 6B 29 3B 0D 0A 09 09 6C 76 61 6C 5B    val,k);....lval[
0197A0:  31 5D 20 2B 3D 20 2A 63 6F 75 6E 74 3B 0D 0A 09    1] += *count;...
0197B0:  09 2A 63 6F 75 6E 74 3D 30 3B 0D 0A 09 09 2A 73    .*count=0;....*s
0197C0:  74 61 74 75 73 3D 46 41 4C 53 45 3B 0D 0A 09 09    tatus=FALSE;....
0197D0:  72 65 74 75 72 6E 20 41 44 44 52 45 53 53 3B 0D    return ADDRESS;.
0197E0:  0A 09 09 7D 0D 0A 09 65 6C 73 65 20 69 66 20 28    ...}...else if (
0197F0:  6D 61 74 63 68 28 22 26 22 29 29 20 7B 0D 0A 09    match("&")) {...
019800:  09 6B 3D 68 65 69 72 31 30 28 6C 76 61 6C 2C 63    .k=heir10(lval,c
019810:  6F 75 6E 74 2C 73 74 61 74 75 73 29 3B 0D 0A 09    ount,status);...
019820:  09 2A 73 74 61 74 75 73 3D 46 41 4C 53 45 3B 0D    .*status=FALSE;.
019830:  0A 09 09 69 66 20 28 6B 20 3D 3D 20 30 20 7C 7C    ...if (k == 0 ||
019840:  20 6C 76 61 6C 5B 30 5D 29 20 7B 0D 0A 09 09 09     lval[0]) {.....
019850:  65 72 72 6F 72 28 22 69 6C 6C 65 67 61 6C 20 61    error("illegal a
019860:  64 64 72 65 73 73 22 29 3B 0D 0A 09 09 09 72 65    ddress");.....re
019870:  74 75 72 6E 20 4C 4F 41 44 45 44 3B 0D 0A 09 09    turn LOADED;....
019880:  09 7D 0D 0A 09 09 65 6C 73 65 20 69 66 20 28 6C    .}....else if (l
019890:  76 61 6C 5B 31 5D 29 20 72 65 74 75 72 6E 20 4C    val[1]) return L
0198A0:  4F 41 44 45 44 3B 0D 0A 09 09 09 65 6C 73 65 20    OADED;.....else 
0198B0:  7B 0D 0A 09 09 09 09 69 6D 6D 65 64 28 29 3B 0D    {......immed();.
0198C0:  0A 09 09 09 09 6F 75 74 73 74 72 28 70 74 72 3D    .....outstr(ptr=
0198D0:  6C 76 61 6C 5B 30 5D 29 3B 0D 0A 09 09 09 09 6E    lval[0]);......n
0198E0:  6C 28 29 3B 0D 0A 09 09 09 09 72 65 74 75 72 6E    l();......return
0198F0:  20 4C 4F 41 44 45 44 3B 0D 0A 09 09 09 09 7D 0D     LOADED;......}.
019900:  61 73 6C 28 29 3B 0D 0A 09 09 09 2A 73 74 61 74    asl();.....*stat
019910:  75 73 3D 46 41 4C 53 45 3B 0D 0A 09 09 09 7D 0D    us=FALSE;.....}.
019920:  0A 09 09 65 6C 73 65 20 72 65 74 75 72 6E 20 30    ...else return 0
019930:  3B 0D 0A 09 09 7D 0D 0A 09 7D 0D 0A 68 65 69 72    ;....}...}..heir
019940:  38 28 6C 76 61 6C 2C 73 74 61 74 75 73 29 0D 0A    8(lval,status)..
019950:  69 6E 74 20 6C 76 61 6C 5B 5D 3B 0D 0A 69 6E 74    int lval[];..int
019960:  20 2A 73 74 61 74 75 73 3B 0D 0A 7B 0D 0A 09 69     *status;..{...i
019970:  6E 74 20 6B 2C 6C 76 61 6C 32 5B 6C 76 61 6C 73    nt k,lval2[lvals
019980:  69 7A 65 5D 3B 0D 0A 09 6B 3D 68 65 69 72 39 28    ize];...k=heir9(
019990:  6C 76 61 6C 2C 73 74 61 74 75 73 29 3B 0D 0A 09    lval,status);...
0199A0:  62 6C 61 6E 6B 73 28 29 3B 0D 0A 09 69 66 20 28    blanks();...if (
0199B0:  28 63 68 28 29 20 21 3D 20 27 2B 27 20 26 26 20    (ch() != '+' && 
0199C0:  63 68 28 29 20 21 3D 20 27 2D 27 29 20 7C 7C 20    ch() != '-') || 
0199D0:  6E 63 68 28 29 20 3D 3D 20 27 3D 27 29 20 72 65    nch() == '=') re
0199E0:  74 75 72 6E 20 6B 3B 0D 0A 09 72 76 61 6C 75 65    turn k;...rvalue
0199F0:  28 6C 76 61 6C 2C 6B 29 3B 0D 0A 09 77 68 69 6C    (lval,k);...whil
019A00:  65 28 31 29 20 7B 20 0D 0A 09 09 73 77 69 74 63    e(1) { ....switc
019A10:  68 28 63 68 28 29 29 20 7B 0D 0A 0D 0A 09 09 09    h(ch()) {.......
019A20:  2F 2A 20 61 64 64 20 6C 61 73 74 20 69 74 65 6D    /* add last item
019A30:  20 74 6F 20 6E 65 78 74 20 69 74 65 6D 20 2A 2F     to next item */
019A40:  0D 0A 09 09 09 63 61 73 65 20 27 2B 27 20 3A 0D    .....case '+' :.
019A50:  0A 09 09 09 09 70 75 73 68 28 29 3B 0D 0A 09 09    .....push();....
019A60:  09 09 67 63 68 28 29 3B 0D 0A 09 09 09 09 6B 3D    ..gch();......k=
019A70:  68 65 69 72 39 28 6C 76 61 6C 32 2C 73 74 61 74    heir9(lval2,stat
019A80:  75 73 29 3B 0D 0A 09 09 09 09 72 76 61 6C 75 65    us);......rvalue
019A90:  28 6C 76 61 6C 32 2C 6B 29 3B 0D 0A 09 09 09 09    (lval2,k);......
019AA0:  73 69 7A 65 5F 61 64 6A 75 73 74 28 6C 76 61 6C    size_adjust(lval
019AB0:  29 3B 0D 0A 09 09 09 09 61 64 64 28 29 3B 0D 0A    );......add();..
019AC0:  09 09 09 09 2A 73 74 61 74 75 73 3D 46 41 4C 53    ....*status=FALS
019AD0:  45 3B 0D 0A 09 09 09 09 62 72 65 61 6B 3B 0D 0A    E;......break;..
019AE0:  0D 0A 09 09 09 2F 2A 20 73 75 62 74 72 61 63 74    ...../* subtract
019AF0:  20 6E 65 78 74 20 69 74 65 6D 20 66 72 6F 6D 20     next item from 
019B00:  0A 09 09 7D 0D 0A 09 65 6C 73 65 20 69 66 20 28    ...}...else if (
019B10:  6D 61 74 63 68 28 22 21 22 29 29 20 7B 0D 0A 09    match("!")) {...
019B20:  09 72 76 61 6C 75 65 28 6C 76 61 6C 2C 68 65 69    .rvalue(lval,hei
019B30:  72 31 30 28 6C 76 61 6C 2C 63 6F 75 6E 74 2C 73    r10(lval,count,s
019B40:  74 61 74 75 73 29 29 3B 0D 0A 09 09 6E 6C 6F 67    tatus));....nlog
019B50:  69 63 61 6C 28 29 3B 0D 0A 09 09 2A 73 74 61 74    ical();....*stat
019B60:  75 73 3D 54 52 55 45 3B 0D 0A 09 09 72 65 74 75    us=TRUE;....retu
019B70:  72 6E 20 4C 4F 41 44 45 44 3B 0D 0A 09 09 7D 0D    rn LOADED;....}.
019B80:  0A 09 65 6C 73 65 20 7B 0D 0A 09 09 6B 3D 68 65    ..else {....k=he
019B90:  69 72 31 31 28 6C 76 61 6C 2C 73 74 61 74 75 73    ir11(lval,status
019BA0:  29 3B 0D 0A 09 09 6D 6F 76 6D 65 6D 28 6C 76 61    );....movmem(lva
019BB0:  6C 2C 6C 76 61 6C 32 2C 6C 76 61 6C 73 69 7A 65    l,lval2,lvalsize
019BC0:  2A 32 29 3B 0D 0A 09 09 6C 76 61 6C 32 5B 31 5D    *2);....lval2[1]
019BD0:  20 2B 3D 20 2A 63 6F 75 6E 74 3B 0D 0A 09 09 69     += *count;....i
019BE0:  66 20 28 6D 61 74 63 68 28 22 2B 2B 22 29 29 20    f (match("++")) 
019BF0:  7B 0D 0A 09 09 09 69 66 28 6B 20 3D 3D 20 4C 4F    {.....if(k == LO
019C00:  41 44 45 44 29 20 7B 0D 0A 09 09 09 09 6E 65 65    ADED) {......nee
019C10:  64 6C 76 61 6C 28 29 3B 0D 0A 09 09 09 09 72 65    dlval();......re
019C20:  74 75 72 6E 20 4C 4F 41 44 45 44 3B 0D 0A 09 09    turn LOADED;....
019C30:  09 09 7D 0D 0A 09 09 09 61 64 64 72 65 73 73 28    ..}.....address(
019C40:  6C 76 61 6C 2C 6B 29 3B 0D 0A 09 09 09 70 6F 73    lval,k);.....pos
019C50:  74 5F 69 6E 63 28 6C 76 61 6C 29 3B 0D 0A 09 09    t_inc(lval);....
019C60:  09 2A 73 74 61 74 75 73 3D 54 52 55 45 3B 0D 0A    .*status=TRUE;..
019C70:  09 09 09 72 65 74 75 72 6E 20 4C 4F 41 44 45 44    ...return LOADED
019C80:  3B 0D 0A 09 09 09 7D 0D 0A 09 09 65 6C 73 65 20    ;.....}....else 
019C90:  69 66 20 28 6D 61 74 63 68 28 22 2D 2D 22 29 29    if (match("--"))
019CA0:  20 7B 0D 0A 09 09 09 69 66 20 28 6B 20 3D 3D 20     {.....if (k == 
019CB0:  4C 4F 41 44 45 44 29 20 7B 0D 0A 09 09 09 09 6E    LOADED) {......n
019CC0:  65 65 64 6C 76 61 6C 28 29 3B 0D 0A 09 09 09 09    eedlval();......
019CD0:  72 65 74 75 72 6E 20 4C 4F 41 44 45 44 3B 0D 0A    return LOADED;..
019CE0:  09 09 09 09 7D 0D 0A 09 09 09 61 64 64 72 65 73    ....}.....addres
019CF0:  73 28 6C 76 61 6C 2C 6B 29 3B 0D 0A 09 09 09 70    s(lval,k);.....p
019D00:  63 75 72 72 65 6E 74 20 69 74 65 6D 20 2A 2F 0D    current item */.
019D10:  0A 09 09 09 63 61 73 65 20 27 2D 27 20 3A 0D 0A    ....case '-' :..
019D20:  09 09 09 09 70 75 73 68 28 29 3B 0D 0A 09 09 09    ....push();.....
019D30:  09 67 63 68 28 29 3B 0D 0A 09 09 09 09 6B 3D 68    .gch();......k=h
019D40:  65 69 72 39 28 6C 76 61 6C 32 2C 73 74 61 74 75    eir9(lval2,statu
019D50:  73 29 3B 0D 0A 09 09 09 09 72 76 61 6C 75 65 28    s);......rvalue(
019D60:  6C 76 61 6C 32 2C 6B 29 3B 0D 0A 09 09 09 09 73    lval2,k);......s
019D70:  69 7A 65 5F 61 64 6A 75 73 74 28 6C 76 61 6C 29    ize_adjust(lval)
019D80:  3B 0D 0A 09 09 09 09 73 75 62 28 29 3B 0D 0A 09    ;......sub();...
019D90:  09 09 09 2A 73 74 61 74 75 73 3D 46 41 4C 53 45    ...*status=FALSE
019DA0:  3B 0D 0A 09 09 09 09 62 72 65 61 6B 3B 0D 0A 0D    ;......break;...
019DB0:  0A 09 09 09 2F 2A 20 6F 70 65 72 61 74 6F 72 20    ..../* operator 
019DC0:  6E 6F 74 20 22 2B 22 20 6F 72 20 22 2D 22 20 2A    not "+" or "-" *
019DD0:  2F 0D 0A 09 09 09 64 65 66 61 75 6C 74 20 3A 0D    /.....default :.
019DE0:  0A 09 09 09 09 72 65 74 75 72 6E 20 30 3B 0D 0A    .....return 0;..
019DF0:  09 09 09 7D 0D 0A 09 09 7D 0D 0A 09 7D 0D 0A 68    ...}....}...}..h
019E00:  65 69 72 39 28 6C 76 61 6C 2C 73 74 61 74 75 73    eir9(lval,status
019E10:  29 0D 0A 69 6E 74 20 6C 76 61 6C 5B 5D 3B 0D 0A    )..int lval[];..
019E20:  69 6E 74 20 2A 73 74 61 74 75 73 3B 0D 0A 7B 0D    int *status;..{.
019E30:  0A 09 69 6E 74 20 6B 2C 6C 76 61 6C 32 5B 6C 76    ..int k,lval2[lv
019E40:  61 6C 73 69 7A 65 5D 2C 74 65 6D 70 3B 0D 0A 0D    alsize],temp;...
019E50:  0A 09 74 65 6D 70 3D 30 3B 0D 0A 09 6B 3D 68 65    ..temp=0;...k=he
019E60:  69 72 31 30 28 6C 76 61 6C 2C 26 74 65 6D 70 2C    ir10(lval,&temp,
019E70:  73 74 61 74 75 73 29 3B 0D 0A 09 62 6C 61 6E 6B    status);...blank
019E80:  73 28 29 3B 0D 0A 09 69 66 20 28 28 63 68 28 29    s();...if ((ch()
019E90:  20 21 3D 20 27 2A 27 20 26 26 20 63 68 28 29 21     != '*' && ch()!
019EA0:  3D 27 2F 27 20 26 26 20 63 68 28 29 20 21 3D 20    ='/' && ch() != 
019EB0:  27 25 27 29 20 0D 0A 09 09 7C 7C 20 6E 63 68 28    '%') ....|| nch(
019EC0:  29 20 3D 3D 20 27 3D 27 29 20 72 65 74 75 72 6E    ) == '=') return
019ED0:  20 6B 3B 0D 0A 09 72 76 61 6C 75 65 28 6C 76 61     k;...rvalue(lva
019EE0:  6C 2C 6B 29 3B 0D 0A 09 77 68 69 6C 65 28 31 29    l,k);...while(1)
019EF0:  20 7B 0D 0A 09 09 69 66 20 28 6D 61 74 63 68 28     {....if (match(
019F00:  6F 73 74 5F 64 65 63 28 6C 76 61 6C 29 3B 0D 0A    ost_dec(lval);..
019F10:  09 09 09 2A 73 74 61 74 75 73 3D 54 52 55 45 3B    ...*status=TRUE;
019F20:  0D 0A 09 09 09 72 65 74 75 72 6E 20 4C 4F 41 44    .....return LOAD
019F30:  45 44 3B 0D 0A 09 09 09 7D 0D 0A 09 09 65 6C 73    ED;.....}....els
019F40:  65 20 72 65 74 75 72 6E 20 6B 3B 0D 0A 09 09 7D    e return k;....}
019F50:  0D 0A 09 7D 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ...}............
019F60:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
019F70:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
019F80:  2A 73 05 EB 0E 15 CD 05 00 B7 2A 75 05 C2 9E 31    *s........*u...1
019F90:  23 22 75 05 2A A3 05 2B 22 A3 05 C3 62 31 C1 C9    #"u.*£.+"£..b1..
019FA0:  3A 77 05 B7 6F CA AF 31 AF 32 77 05 26 00 C9 C5    :w..o..1.2w.&...
019FB0:  0E 01 CD 05 00 C1 FE 03 CA 00 00 FE 1A 21 FF FF    .............!..
019FC0:  C8 6F FE 0D C2 D2 31 C5 0E 02 1E 0A CD 05 00 C1    .o....1.........
019FD0:  2E 0A 26 00 C9 CD 37 03 C5 3A 9F 05 4F 2A A1 05    ..&...7..:..O*..
019FE0:  EB CD 05 00 6F 60 C1 C9 1A 1A 1A 1A 1A 1A 1A 1A    ....o`..........
019FF0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 05    ................
01A000:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A010:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A020:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A030:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A040:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A050:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A060:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A070:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A080:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A090:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A0A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A0B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A0C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A0D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A0E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A0F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A100:  22 2A 22 29 29 20 7B 0D 0A 09 09 09 70 75 73 68    "*")) {.....push
01A110:  28 29 3B 0D 0A 09 09 09 6B 3D 68 65 69 72 31 30    ();.....k=heir10
01A120:  28 6C 76 61 6C 32 2C 26 74 65 6D 70 2C 73 74 61    (lval2,&temp,sta
01A130:  74 75 73 29 3B 0D 0A 09 09 09 72 76 61 6C 75 65    tus);.....rvalue
01A140:  28 6C 76 61 6C 32 2C 6B 29 3B 0D 0A 09 09 09 6D    (lval2,k);.....m
01A150:  75 6C 74 28 29 3B 0D 0A 09 09 09 2A 73 74 61 74    ult();.....*stat
01A160:  75 73 3D 46 41 4C 53 45 3B 0D 0A 09 09 09 7D 0D    us=FALSE;.....}.
01A170:  0A 09 09 65 6C 73 65 20 69 66 20 28 6D 61 74 63    ...else if (matc
01A180:  68 28 22 2F 22 29 29 20 7B 0D 0A 09 09 09 70 75    h("/")) {.....pu
01A190:  73 68 28 29 3B 0D 0A 09 09 09 6B 3D 68 65 69 72    sh();.....k=heir
01A1A0:  31 30 28 6C 76 61 6C 32 2C 26 74 65 6D 70 2C 73    10(lval2,&temp,s
01A1B0:  74 61 74 75 73 29 3B 0D 0A 09 09 09 72 76 61 6C    tatus);.....rval
01A1C0:  75 65 28 6C 76 61 6C 32 2C 6B 29 3B 0D 0A 09 09    ue(lval2,k);....
01A1D0:  09 64 69 76 28 29 3B 0D 0A 09 09 09 2A 73 74 61    .div();.....*sta
01A1E0:  74 75 73 3D 46 41 4C 53 45 3B 0D 0A 09 09 09 7D    tus=FALSE;.....}
01A1F0:  0D 0A 09 09 65 6C 73 65 20 69 66 20 28 6D 61 74    ....else if (mat
01A200:  63 68 28 22 25 22 29 29 20 7B 0D 0A 09 09 09 70    ch("%")) {.....p
01A210:  75 73 68 28 29 3B 0D 0A 09 09 09 6B 3D 68 65 69    ush();.....k=hei
01A220:  72 31 30 28 6C 76 61 6C 32 2C 26 74 65 6D 70 2C    r10(lval2,&temp,
01A230:  73 74 61 74 75 73 29 3B 0D 0A 09 09 09 72 76 61    status);.....rva
01A240:  6C 75 65 28 6C 76 61 6C 32 2C 6B 29 3B 0D 0A 09    lue(lval2,k);...
01A250:  09 09 6D 6F 64 28 29 3B 0D 0A 09 09 09 2A 73 74    ..mod();.....*st
01A260:  61 74 75 73 3D 46 41 4C 53 45 3B 0D 0A 09 09 09    atus=FALSE;.....
01A270:  7D 0D 0A 09 09 65 6C 73 65 20 72 65 74 75 72 6E    }....else return
01A280:  20 30 3B 0D 0A 09 09 7D 0D 0A 09 7D 0D 0A 68 65     0;....}...}..he
01A290:  69 72 31 30 28 6C 76 61 6C 2C 63 6F 75 6E 74 2C    ir10(lval,count,
01A2A0:  73 74 61 74 75 73 29 0D 0A 69 6E 74 20 6C 76 61    status)..int lva
01A2B0:  6C 5B 5D 3B 0D 0A 69 6E 74 20 2A 63 6F 75 6E 74    l[];..int *count
01A2C0:  3B 0D 0A 69 6E 74 20 2A 73 74 61 74 75 73 3B 0D    ;..int *status;.
01A2D0:  0A 7B 0D 0A 09 69 6E 74 20 6B 2C 6C 76 61 6C 32    .{...int k,lval2
01A2E0:  5B 6C 76 61 6C 73 69 7A 65 5D 3B 0D 0A 09 63 68    [lvalsize];...ch
01A2F0:  61 72 20 2A 70 74 72 2C 66 6C 61 67 3B 0D 0A 0D    ar *ptr,flag;...
01A300:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
01A310:  16 00 01 00 02 09 52 E5 16 00 C1 02 00 00 00 02    ......R.........
01A320:  16 00 C6 02 00 00 00 02 16 00 C2 02 00 00 00 02    ................
01A330:  16 00 C7 02 00 00 00 02 16 00 C3 02 00 00 00 02    ................
01A340:  16 00 C8 02 00 00 00 02 16 00 C4 02 00 00 00 02    ................
01A350:  16 00 C9 02 00 00 00 02 16 00 C5 02 00 00 00 02    ................
01A360:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A370:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A380:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A390:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A3A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A3B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A3C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A3D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A3E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A3F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01A400:  0D 0A 23 69 66 6E 64 65 66 09 54 52 55 45 09 2F    ..#ifndef.TRUE./
01A410:  2A 20 63 68 65 63 6B 20 74 6F 20 73 65 65 20 69    * check to see i
01A420:  66 20 69 6E 63 6C 75 64 65 20 66 69 6C 65 20 69    f include file i
01A430:  73 20 6E 65 65 64 65 64 20 2A 2F 0D 0A 23 69 6E    s needed */..#in
01A440:  63 6C 75 64 65 20 3C 43 2E 44 45 46 3E 0D 0A 23    clude <C.DEF>..#
01A450:  65 6E 64 69 66 0D 0A 0D 0A 2F 2A 20 42 65 67 69    endif..../* Begi
01A460:  6E 20 61 20 63 6F 6D 6D 65 6E 74 20 6C 69 6E 65    n a comment line
01A470:  20 66 6F 72 20 74 68 65 20 61 73 73 65 6D 62 6C     for the assembl
01A480:  65 72 20 2A 2F 0D 0A 63 6F 6D 6D 65 6E 74 28 29    er */..comment()
01A490:  0D 0A 7B 0D 0A 09 6F 75 74 62 79 74 65 28 27 3B    ..{...outbyte(';
01A4A0:  27 29 3B 0D 0A 09 7D 0D 0A 2F 2A 20 50 72 69 6E    ');...}../* Prin
01A4B0:  74 20 61 6C 6C 20 61 73 73 65 6D 62 6C 65 72 20    t all assembler 
01A4C0:  69 6E 66 6F 20 62 65 66 6F 72 65 20 61 6E 79 20    info before any 
01A4D0:  63 6F 64 65 20 69 73 20 67 65 6E 65 72 61 74 65    code is generate
01A4E0:  64 20 2A 2F 0D 0A 68 65 61 64 65 72 28 29 0D 0A    d */..header()..
01A4F0:  7B 0D 0A 09 6F 75 74 73 74 72 28 22 40 73 74 61    {...outstr("@sta
01A500:  72 74 3A 5C 74 63 73 65 63 74 22 29 3B 6E 6C 28    rt:\tcsect");nl(
01A510:  29 3B 0D 0A 09 6F 6C 28 22 6A 6D 70 5C 74 40 69    );...ol("jmp\t@i
01A520:  6E 69 74 22 29 3B 0D 0A 09 6F 6C 28 22 65 78 74    nit");...ol("ext
01A530:  72 6E 5C 74 40 61 6E 64 2C 40 61 73 6C 2C 40 61    rn\t@and,@asl,@a
01A540:  73 72 2C 40 63 6F 6D 70 2C 40 63 6F 6D 2C 40 64    sr,@comp,@com,@d
01A550:  69 76 22 29 3B 0D 0A 09 6F 6C 28 22 65 78 74 72    iv");...ol("extr
01A560:  6E 5C 74 40 67 63 68 61 72 2C 40 67 69 6E 74 2C    n\t@gchar,@gint,
01A570:  40 69 6E 63 64 65 63 22 29 3B 0D 0A 09 6F 6C 28    @incdec");...ol(
01A580:  22 65 78 74 72 6E 5C 74 40 6D 75 6C 74 2C 40 6E    "extrn\t@mult,@n
01A590:  65 67 2C 40 6E 6C 6F 67 2C 40 6F 72 2C 40 70 69    eg,@nlog,@or,@pi
01A5A0:  6E 74 2C 40 73 75 62 22 29 3B 0D 0A 09 6F 6C 28    nt,@sub");...ol(
01A5B0:  22 65 78 74 72 6E 5C 74 40 73 78 74 2C 40 75 63    "extrn\t@sxt,@uc
01A5C0:  6F 6D 70 2C 40 78 6F 72 2C 40 69 6E 69 74 2C 40    omp,@xor,@init,@
01A5D0:  73 77 69 74 63 68 22 29 3B 0D 0A 09 6F 6C 28 22    switch");...ol("
01A5E0:  65 78 74 72 6E 5C 74 40 67 69 6E 74 73 73 2C 40    extrn\t@gintss,@
01A5F0:  67 69 6E 74 73 6C 2C 40 67 63 68 61 72 73 73 2C    gintsl,@gcharss,
01A600:  65 73 73 20 6F 6E 20 74 68 65 20 74 6F 70 20 6F    ess on the top o
01A610:  66 20 74 68 65 20 73 74 61 63 6B 20 2A 2F 0D 0A    f the stack */..
01A620:  70 75 74 73 74 6B 28 74 79 70 65 6F 62 6A 29 0D    putstk(typeobj).
01A630:  0A 63 68 61 72 20 74 79 70 65 6F 62 6A 3B 0D 0A    .char typeobj;..
01A640:  7B 0D 0A 09 70 6F 70 28 29 3B 0D 0A 09 70 75 74    {...pop();...put
01A650:  73 65 63 28 74 79 70 65 6F 62 6A 29 3B 0D 0A 09    sec(typeobj);...
01A660:  7D 0D 0A 2F 2A 20 73 74 6F 72 65 20 74 68 65 20    }../* store the 
01A670:  73 70 65 63 69 66 69 65 64 20 6F 62 6A 65 63 74    specified object
01A680:  20 74 79 70 65 20 69 6E 20 74 68 65 20 70 72 69     type in the pri
01A690:  6D 61 72 79 20 72 65 67 69 73 74 65 72 20 2A 2F    mary register */
01A6A0:  0D 0A 2F 2A 09 61 74 20 74 68 65 20 61 64 64 72    ../*.at the addr
01A6B0:  65 73 73 20 69 6E 20 74 68 65 20 73 65 63 6F 6E    ess in the secon
01A6C0:  64 61 72 79 20 72 65 67 69 73 74 65 72 09 2A 2F    dary register.*/
01A6D0:  0D 0A 70 75 74 73 65 63 28 74 79 70 65 6F 62 6A    ..putsec(typeobj
01A6E0:  29 0D 0A 63 68 61 72 20 74 79 70 65 6F 62 6A 3B    )..char typeobj;
01A6F0:  0D 0A 7B 0D 0A 09 69 66 20 28 74 79 70 65 6F 62    ..{...if (typeob
01A700:  6A 20 3D 3D 20 63 63 68 61 72 29 20 7B 0D 0A 09    j == cchar) {...
01A710:  09 6F 6C 28 22 6D 6F 76 5C 74 61 2C 6C 22 29 3B    .ol("mov\ta,l");
01A720:  0D 0A 09 09 6F 6C 28 22 73 74 61 78 5C 74 64 22    ....ol("stax\td"
01A730:  29 3B 0D 0A 09 09 7D 0D 0A 09 65 6C 73 65 20 63    );....}...else c
01A740:  61 6C 6C 28 22 40 70 69 6E 74 22 29 3B 0D 0A 09    all("@pint");...
01A750:  7D 0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 2F 2A    }../*.....*/../*
01A760:  09 77 72 69 74 74 65 6E 20 62 79 20 4D 69 6B 65    .written by Mike
01A770:  20 42 65 72 6E 73 6F 6E 20 36 2F 39 2F 38 31 09     Bernson 6/9/81.
01A780:  2A 2F 0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 2F    */../*.....*/../
01A790:  2A 09 73 74 6F 72 65 20 68 6C 20 76 61 6C 75 65    *.store hl value
01A7A0:  20 61 66 74 65 72 20 63 61 6C 6C 20 70 6C 75 73     after call plus
01A7B0:  09 2A 2F 0D 0A 2F 2A 09 63 75 72 72 65 6E 74 20    .*/../*.current 
01A7C0:  73 74 61 63 6B 09 09 09 2A 2F 0D 0A 2F 2A 09 09    stack...*/../*..
01A7D0:  09 09 09 2A 2F 0D 0A 70 75 74 6D 65 6D 5F 73 74    ...*/..putmem_st
01A7E0:  61 63 6B 28 6C 76 61 6C 2C 74 79 70 29 0D 0A 69    ack(lval,typ)..i
01A7F0:  6E 74 20 20 2A 6C 76 61 6C 3B 0D 0A 63 68 61 72    nt  *lval;..char
01A800:  40 67 63 68 61 72 73 6C 22 29 3B 0D 0A 09 6F 6C    @gcharsl");...ol
01A810:  28 22 65 78 74 72 6E 5C 74 40 70 69 6E 74 73 73    ("extrn\t@pintss
01A820:  2C 40 70 69 6E 74 73 6C 2C 40 70 63 68 61 72 73    ,@pintsl,@pchars
01A830:  73 2C 40 70 63 68 61 72 73 6C 22 29 3B 0D 0A 0D    s,@pcharsl");...
01A840:  0A 09 6F 75 74 73 74 72 28 22 40 65 71 5C 74 65    ..outstr("@eq\te
01A850:  71 75 5C 74 40 63 6F 6D 70 22 29 3B 6E 6C 28 29    qu\t@comp");nl()
01A860:  3B 0D 0A 09 6F 75 74 73 74 72 28 22 40 67 65 5C    ;...outstr("@ge\
01A870:  74 65 71 75 5C 74 40 63 6F 6D 70 2B 33 35 68 22    tequ\t@comp+35h"
01A880:  29 3B 6E 6C 28 29 3B 0D 0A 09 6F 75 74 73 74 72    );nl();...outstr
01A890:  28 22 40 67 74 5C 74 65 71 75 5C 74 40 63 6F 6D    ("@gt\tequ\t@com
01A8A0:  70 2B 31 61 68 22 29 3B 6E 6C 28 29 3B 0D 0A 09    p+1ah");nl();...
01A8B0:  6F 75 74 73 74 72 28 22 40 6C 65 5C 74 65 71 75    outstr("@le\tequ
01A8C0:  5C 74 40 63 6F 6D 70 2B 34 33 68 22 29 3B 6E 6C    \t@comp+43h");nl
01A8D0:  28 29 3B 0D 0A 09 6F 75 74 73 74 72 28 22 40 6C    ();...outstr("@l
01A8E0:  74 5C 74 65 71 75 5C 74 40 63 6F 6D 70 2B 32 38    t\tequ\t@comp+28
01A8F0:  68 22 29 3B 6E 6C 28 29 3B 0D 0A 09 6F 75 74 73    h");nl();...outs
01A900:  74 72 28 22 40 6E 65 5C 74 65 71 75 5C 74 40 63    tr("@ne\tequ\t@c
01A910:  6F 6D 70 2B 30 64 68 22 29 3B 6E 6C 28 29 3B 0D    omp+0dh");nl();.
01A920:  0A 09 6F 75 74 73 74 72 28 22 40 75 67 65 5C 74    ..outstr("@uge\t
01A930:  65 71 75 5C 74 40 75 63 6F 6D 70 2B 36 63 68 22    equ\t@ucomp+6ch"
01A940:  29 3B 6E 6C 28 29 3B 0D 0A 09 6F 75 74 73 74 72    );nl();...outstr
01A950:  28 22 40 75 67 74 5C 74 65 71 75 5C 74 40 75 63    ("@ugt\tequ\t@uc
01A960:  6F 6D 70 2B 35 31 68 22 29 3B 6E 6C 28 29 3B 0D    omp+51h");nl();.
01A970:  0A 09 6F 75 74 73 74 72 28 22 40 75 6C 65 5C 74    ..outstr("@ule\t
01A980:  65 71 75 5C 74 40 75 63 6F 6D 70 2B 37 39 68 22    equ\t@ucomp+79h"
01A990:  29 3B 6E 6C 28 29 3B 0D 0A 09 6F 75 74 73 74 72    );nl();...outstr
01A9A0:  28 22 40 75 6C 74 5C 74 65 71 75 5C 74 40 75 63    ("@ult\tequ\t@uc
01A9B0:  6F 6D 70 2B 35 66 68 22 29 3B 6E 6C 28 29 3B 0D    omp+5fh");nl();.
01A9C0:  0A 0D 0A 09 6F 75 74 73 74 72 28 22 40 70 72 65    ....outstr("@pre
01A9D0:  69 6E 63 5C 74 65 71 75 5C 74 40 69 6E 63 64 65    inc\tequ\t@incde
01A9E0:  63 22 29 3B 6E 6C 28 29 3B 0D 0A 09 6F 75 74 73    c");nl();...outs
01A9F0:  74 72 28 22 40 70 6F 73 74 69 6E 63 5C 74 65 71    tr("@postinc\teq
01AA00:  20 74 79 70 3B 0D 0A 7B 0D 0A 09 69 6E 74 20 6F     typ;..{...int o
01AA10:  66 66 3B 0D 0A 09 63 68 61 72 20 2A 70 74 72 3B    ff;...char *ptr;
01AA20:  0D 0A 0D 0A 09 70 74 72 3D 6C 76 61 6C 5B 30 5D    .....ptr=lval[0]
01AA30:  3B 0D 0A 09 6F 66 66 3D 70 74 72 5B 6F 66 66 73    ;...off=ptr[offs
01AA40:  65 74 5D 2B 70 74 72 5B 6F 66 66 73 65 74 2B 31    et]+ptr[offset+1
01AA50:  5D 2A 32 35 36 2B 6C 76 61 6C 5B 32 5D 2D 73 70    ]*256+lval[2]-sp
01AA60:  3B 0D 0A 0D 0A 09 69 66 20 28 74 79 70 20 3D 3D    ;.....if (typ ==
01AA70:  20 63 69 6E 74 29 20 0D 0A 09 09 69 66 20 28 69     cint) ....if (i
01AA80:  73 62 79 74 65 28 6F 66 66 29 29 20 63 61 6C 6C    sbyte(off)) call
01AA90:  28 22 40 70 69 6E 74 73 73 22 29 3B 20 65 6C 73    ("@pintss"); els
01AAA0:  65 20 63 61 6C 6C 28 22 40 70 69 6E 74 73 6C 22    e call("@pintsl"
01AAB0:  29 3B 0D 0A 09 65 6C 73 65 0D 0A 09 09 69 66 20    );...else....if 
01AAC0:  28 69 73 62 79 74 65 28 6F 66 66 29 29 20 63 61    (isbyte(off)) ca
01AAD0:  6C 6C 28 22 40 70 63 68 61 72 73 73 22 29 3B 20    ll("@pcharss"); 
01AAE0:  65 6C 73 65 20 63 61 6C 6C 28 22 40 70 63 68 61    else call("@pcha
01AAF0:  72 73 6C 22 29 3B 0D 0A 09 64 65 66 76 61 6C 75    rsl");...defvalu
01AB00:  65 28 6F 66 66 29 3B 0D 0A 09 7D 0D 0A 0D 0A 2F    e(off);...}..../
01AB10:  2A 20 46 65 74 63 68 20 74 68 65 20 73 70 65 63    * Fetch the spec
01AB20:  69 66 69 65 64 20 6F 62 6A 65 63 74 20 74 79 70    ified object typ
01AB30:  65 20 69 6E 64 69 72 65 63 74 20 74 68 72 6F 75    e indirect throu
01AB40:  67 68 20 74 68 65 20 2A 2F 0D 0A 2F 2A 20 20 20    gh the */../*   
01AB50:  20 20 20 70 72 69 6D 61 72 79 20 72 65 67 69 73       primary regis
01AB60:  74 65 72 20 69 6E 74 6F 20 74 68 65 20 70 72 69    ter into the pri
01AB70:  6D 61 72 79 20 72 65 67 69 73 74 65 72 20 2A 2F    mary register */
01AB80:  0D 0A 69 6E 64 69 72 65 63 74 28 74 79 70 65 6F    ..indirect(typeo
01AB90:  62 6A 29 0D 0A 63 68 61 72 20 74 79 70 65 6F 62    bj)..char typeob
01ABA0:  6A 3B 0D 0A 7B 0D 0A 09 69 66 20 28 74 79 70 65    j;..{...if (type
01ABB0:  6F 62 6A 20 3D 3D 20 63 63 68 61 72 29 20 63 61    obj == cchar) ca
01ABC0:  6C 6C 28 22 40 67 63 68 61 72 22 29 3B 0D 0A 09    ll("@gchar");...
01ABD0:  65 6C 73 65 20 63 61 6C 6C 28 22 40 67 69 6E 74    else call("@gint
01ABE0:  22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 20 61 64 64 20    ");...}../* add 
01ABF0:  70 72 69 6D 61 72 79 20 61 6E 64 20 73 65 63 6F    primary and seco
01AC00:  75 5C 74 40 69 6E 63 64 65 63 2B 31 30 68 22 29    u\t@incdec+10h")
01AC10:  3B 6E 6C 28 29 3B 0D 0A 09 6F 75 74 73 74 72 28    ;nl();...outstr(
01AC20:  22 40 70 72 65 64 65 63 5C 74 65 71 75 5C 74 40    "@predec\tequ\t@
01AC30:  69 6E 63 64 65 63 2B 30 38 68 22 29 3B 6E 6C 28    incdec+08h");nl(
01AC40:  29 3B 0D 0A 09 6F 75 74 73 74 72 28 22 40 70 6F    );...outstr("@po
01AC50:  73 74 64 65 63 5C 74 65 71 75 5C 74 40 69 6E 63    stdec\tequ\t@inc
01AC60:  64 65 63 2B 31 61 68 22 29 3B 6E 6C 28 29 3B 0D    dec+1ah");nl();.
01AC70:  0A 09 7D 0D 0A 2F 2A 20 50 72 69 6E 74 20 61 6E    ..}../* Print an
01AC80:  79 20 61 73 73 65 6D 62 6C 65 72 20 73 74 75 66    y assembler stuf
01AC90:  66 20 6E 65 65 64 65 64 20 61 66 74 65 72 20 61    f needed after a
01ACA0:  6C 6C 20 63 6F 64 65 20 2A 2F 0D 0A 74 72 61 69    ll code */..trai
01ACB0:  6C 65 72 28 29 0D 0A 7B 0D 0A 09 6F 6C 28 22 65    ler()..{...ol("e
01ACC0:  6E 64 22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 09 09 09    nd");...}../*...
01ACD0:  09 09 09 09 2A 2F 0D 0A 2F 2A 09 72 65 77 72 69    ....*/../*.rewri
01ACE0:  74 74 65 6E 20 20 34 2F 33 30 2F 38 31 20 62 79    tten  4/30/81 by
01ACF0:  20 4D 69 6B 65 20 42 65 72 6E 73 6F 6E 09 09 2A     Mike Bernson..*
01AD00:  2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F 0D 0A    /../*.......*/..
01AD10:  2F 2A 20 46 65 74 63 68 20 61 20 73 74 61 74 69    /* Fetch a stati
01AD20:  63 20 6D 65 6D 6F 72 79 20 63 65 6C 6C 20 69 6E    c memory cell in
01AD30:  74 6F 20 74 68 65 20 70 72 69 6D 61 72 79 20 72    to the primary r
01AD40:  65 67 69 73 74 65 72 20 2A 2F 0D 0A 67 65 74 6D    egister */..getm
01AD50:  65 6D 28 73 6E 61 6D 65 2C 74 79 70 2C 6F 66 66    em(sname,typ,off
01AD60:  29 0D 0A 63 68 61 72 20 2A 73 6E 61 6D 65 3B 0D    )..char *sname;.
01AD70:  0A 69 6E 74 20 20 74 79 70 3B 0D 0A 69 6E 74 20    .int  typ;..int 
01AD80:  20 6F 66 66 3B 0D 0A 7B 0D 0A 09 69 66 28 74 79     off;..{...if(ty
01AD90:  70 3D 3D 63 63 68 61 72 29 20 7B 0D 0A 09 09 6F    p==cchar) {....o
01ADA0:  74 28 22 6C 64 61 5C 74 22 29 3B 0D 0A 09 09 6F    t("lda\t");....o
01ADB0:  75 74 73 74 72 28 73 6E 61 6D 65 29 3B 0D 0A 09    utstr(sname);...
01ADC0:  09 69 66 20 28 6F 66 66 29 20 7B 0D 0A 09 09 09    .if (off) {.....
01ADD0:  6F 75 74 73 74 72 28 22 2B 22 29 3B 0D 0A 09 09    outstr("+");....
01ADE0:  09 6F 75 74 64 65 63 28 6F 66 66 29 3B 0D 0A 09    .outdec(off);...
01ADF0:  09 09 7D 0D 0A 09 09 6E 6C 28 29 3B 0D 0A 09 09    ..}....nl();....
01AE00:  6E 64 61 72 79 20 72 65 67 69 73 74 65 72 73 20    ndary registers 
01AE10:  2A 2F 0D 0A 61 64 64 5F 61 64 64 72 65 73 73 28    */..add_address(
01AE20:  29 0D 0A 7B 0D 0A 09 6F 6C 28 22 64 61 64 5C 74    )..{...ol("dad\t
01AE30:  64 22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 20 53 77 61    d");...}../* Swa
01AE40:  70 20 74 68 65 20 70 72 69 6D 61 72 79 20 61 6E    p the primary an
01AE50:  64 20 73 65 63 6F 6E 64 61 72 79 20 72 65 67 69    d secondary regi
01AE60:  73 74 65 72 73 20 2A 2F 0D 0A 73 77 61 70 28 29    sters */..swap()
01AE70:  0D 0A 7B 0D 0A 09 6F 6C 28 22 78 63 68 67 22 29    ..{...ol("xchg")
01AE80:  3B 0D 0A 09 7D 0D 0A 2F 2A 20 50 72 69 6E 74 20    ;...}../* Print 
01AE90:  70 61 72 74 69 61 6C 20 69 6E 73 74 72 75 63 74    partial instruct
01AEA0:  69 6F 6E 20 74 6F 20 67 65 74 20 61 6E 20 69 6D    ion to get an im
01AEB0:  6D 65 64 69 61 74 65 20 76 61 6C 75 65 20 2A 2F    mediate value */
01AEC0:  0D 0A 2F 2A 20 20 20 20 20 20 69 6E 74 6F 20 74    ../*      into t
01AED0:  68 65 20 70 72 69 6D 61 72 79 20 72 65 67 69 73    he primary regis
01AEE0:  74 65 72 20 2A 2F 0D 0A 69 6D 6D 65 64 28 29 0D    ter */..immed().
01AEF0:  0A 7B 0D 0A 09 6F 74 28 22 6C 78 69 5C 74 68 2C    .{...ot("lxi\th,
01AF00:  22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 20 50 75 73 68    ");...}../* Push
01AF10:  20 74 68 65 20 70 72 69 6D 61 72 79 20 72 65 67     the primary reg
01AF20:  69 73 74 65 72 20 6F 6E 74 6F 20 74 68 65 20 73    ister onto the s
01AF30:  74 61 63 6B 20 2A 2F 0D 0A 70 75 73 68 28 29 0D    tack */..push().
01AF40:  0A 7B 0D 0A 09 6F 6C 28 22 70 75 73 68 5C 74 68    .{...ol("push\th
01AF50:  22 29 3B 0D 0A 09 73 70 3D 73 70 2D 32 3B 0D 0A    ");...sp=sp-2;..
01AF60:  09 7D 0D 0A 2F 2A 20 70 75 73 68 20 74 68 65 20    .}../* push the 
01AF70:  73 65 63 6F 6E 64 61 72 79 20 72 65 67 69 73 74    secondary regist
01AF80:  65 72 09 6F 6E 20 73 74 61 63 6B 20 2A 2F 0D 0A    er.on stack */..
01AF90:  70 75 73 68 73 28 29 0D 0A 7B 0D 0A 09 6F 6C 28    pushs()..{...ol(
01AFA0:  22 70 75 73 68 5C 74 64 22 29 3B 0D 0A 09 73 70    "push\td");...sp
01AFB0:  3D 73 70 2D 32 3B 0D 0A 09 7D 0D 0A 2F 2A 20 50    =sp-2;...}../* P
01AFC0:  6F 70 20 74 68 65 20 74 6F 70 20 6F 66 20 74 68    op the top of th
01AFD0:  65 20 73 74 61 63 6B 20 69 6E 74 6F 20 74 68 65    e stack into the
01AFE0:  20 73 65 63 6F 6E 64 61 72 79 20 72 65 67 69 73     secondary regis
01AFF0:  74 65 72 20 2A 2F 0D 0A 70 6F 70 28 29 0D 0A 7B    ter */..pop()..{
01B000:  63 61 6C 6C 28 22 40 73 78 74 22 29 3B 0D 0A 09    call("@sxt");...
01B010:  09 7D 0D 0A 09 65 6C 73 65 20 7B 0D 0A 09 09 6F    .}...else {....o
01B020:  74 28 22 6C 68 6C 64 5C 74 22 29 3B 0D 0A 09 09    t("lhld\t");....
01B030:  6F 75 74 73 74 72 28 73 6E 61 6D 65 29 3B 0D 0A    outstr(sname);..
01B040:  09 09 69 66 20 28 6F 66 66 29 20 7B 0D 0A 09 09    ..if (off) {....
01B050:  09 6F 75 74 73 74 72 28 22 2B 22 29 3B 0D 0A 09    .outstr("+");...
01B060:  09 09 6F 75 74 64 65 63 28 6F 66 66 29 3B 0D 0A    ..outdec(off);..
01B070:  09 09 09 7D 0D 0A 09 09 6E 6C 28 29 3B 0D 0A 09    ...}....nl();...
01B080:  09 7D 0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09 09 09    .}...}../*......
01B090:  09 2A 2F 0D 0A 2F 2A 09 77 72 69 74 74 65 6E 20    .*/../*.written 
01B0A0:  62 79 20 4D 69 6B 65 20 42 65 72 6E 73 6F 6E 20    by Mike Bernson 
01B0B0:  36 2F 38 2F 38 31 09 09 09 2A 2F 0D 0A 2F 2A 09    6/8/81...*/../*.
01B0C0:  09 09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 6C 6F 61    ......*/../*.loa
01B0D0:  64 20 61 20 62 79 74 65 20 6F 66 66 73 65 74 20    d a byte offset 
01B0E0:  66 72 6F 6D 20 63 75 72 72 65 6E 74 20 73 74 61    from current sta
01B0F0:  63 6B 09 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09    ck..*/../*......
01B100:  09 2A 2F 0D 0A 67 65 74 6D 65 6D 5F 73 74 61 63    .*/..getmem_stac
01B110:  6B 28 6C 76 61 6C 2C 74 79 70 29 0D 0A 69 6E 74    k(lval,typ)..int
01B120:  20 20 2A 6C 76 61 6C 3B 0D 0A 63 68 61 72 20 2A      *lval;..char *
01B130:  74 79 70 3B 0D 0A 7B 0D 0A 09 63 68 61 72 20 2A    typ;..{...char *
01B140:  70 74 72 3B 0D 0A 09 69 6E 74 20 20 6F 66 66 3B    ptr;...int  off;
01B150:  0D 0A 0D 0A 09 70 74 72 3D 6C 76 61 6C 5B 30 5D    .....ptr=lval[0]
01B160:  3B 0D 0A 09 6F 66 66 3D 70 74 72 5B 6F 66 66 73    ;...off=ptr[offs
01B170:  65 74 5D 2B 70 74 72 5B 6F 66 66 73 65 74 2B 31    et]+ptr[offset+1
01B180:  5D 2A 32 35 36 2B 6C 76 61 6C 5B 32 5D 2D 73 70    ]*256+lval[2]-sp
01B190:  3B 0D 0A 09 0D 0A 09 69 66 20 28 74 79 70 20 3D    ;......if (typ =
01B1A0:  3D 20 63 69 6E 74 29 0D 0A 09 09 69 66 20 28 69    = cint)....if (i
01B1B0:  73 62 79 74 65 28 6F 66 66 29 29 20 63 61 6C 6C    sbyte(off)) call
01B1C0:  28 22 40 67 69 6E 74 73 73 22 29 3B 20 65 6C 73    ("@gintss"); els
01B1D0:  65 20 63 61 6C 6C 28 22 40 67 69 6E 74 73 6C 22    e call("@gintsl"
01B1E0:  29 3B 0D 0A 09 65 6C 73 65 0D 0A 09 09 69 66 20    );...else....if 
01B1F0:  28 69 73 62 79 74 65 28 6F 66 66 29 29 20 63 61    (isbyte(off)) ca
01B200:  0D 0A 09 6F 6C 28 22 70 6F 70 5C 74 64 22 29 3B    ...ol("pop\td");
01B210:  0D 0A 09 73 70 3D 73 70 2B 32 3B 0D 0A 09 7D 0D    ...sp=sp+2;...}.
01B220:  0A 2F 2A 20 53 77 61 70 20 74 68 65 20 70 72 69    ./* Swap the pri
01B230:  6D 61 72 79 20 72 65 67 69 73 74 65 72 20 61 6E    mary register an
01B240:  64 20 74 68 65 20 74 6F 70 20 6F 66 20 74 68 65    d the top of the
01B250:  20 73 74 61 63 6B 20 2A 2F 0D 0A 73 77 61 70 73     stack */..swaps
01B260:  74 6B 28 29 0D 0A 7B 0D 0A 09 6F 6C 28 22 78 74    tk()..{...ol("xt
01B270:  68 6C 22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 20 63 61    hl");...}../* ca
01B280:  6C 6C 20 72 6F 75 74 69 6E 65 20 61 6E 64 20 73    ll routine and s
01B290:  75 62 74 72 61 63 74 20 32 09 66 72 6F 6D 20 73    ubtract 2.from s
01B2A0:  74 61 63 6B 20 70 6F 69 6E 74 65 72 20 2A 2F 0D    tack pointer */.
01B2B0:  0A 63 63 61 6C 6C 28 73 6E 61 6D 65 29 0D 0A 63    .ccall(sname)..c
01B2C0:  68 61 72 20 2A 73 6E 61 6D 65 3B 0D 0A 7B 0D 0A    har *sname;..{..
01B2D0:  09 73 70 3D 73 70 2B 32 3B 0D 0A 09 63 61 6C 6C    .sp=sp+2;...call
01B2E0:  28 73 6E 61 6D 65 29 3B 0D 0A 09 7D 0D 0A 2F 2A    (sname);...}../*
01B2F0:  20 43 61 6C 6C 20 74 68 65 20 73 70 65 63 69 66     Call the specif
01B300:  69 65 64 20 73 75 62 72 6F 75 74 69 6E 65 20 6E    ied subroutine n
01B310:  61 6D 65 20 2A 2F 0D 0A 63 61 6C 6C 28 73 6E 61    ame */..call(sna
01B320:  6D 65 29 0D 0A 63 68 61 72 20 2A 73 6E 61 6D 65    me)..char *sname
01B330:  3B 0D 0A 7B 0D 0A 09 6F 74 28 22 63 61 6C 6C 5C    ;..{...ot("call\
01B340:  74 22 29 3B 0D 0A 09 6F 75 74 73 74 72 28 73 6E    t");...outstr(sn
01B350:  61 6D 65 29 3B 0D 0A 09 6E 6C 28 29 3B 0D 0A 09    ame);...nl();...
01B360:  7D 0D 0A 2F 2A 20 52 65 74 75 72 6E 20 66 72 6F    }../* Return fro
01B370:  6D 20 73 75 62 72 6F 75 74 69 6E 65 20 2A 2F 0D    m subroutine */.
01B380:  0A 72 65 74 28 29 0D 0A 7B 0D 0A 09 6F 6C 28 22    .ret()..{...ol("
01B390:  72 65 74 22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 20 50    ret");...}../* P
01B3A0:  65 72 66 6F 72 6D 20 73 75 62 72 6F 75 74 69 6E    erform subroutin
01B3B0:  65 20 63 61 6C 6C 20 74 6F 20 63 61 6C 75 65 20    e call to calue 
01B3C0:  6F 6E 20 74 6F 70 20 6F 66 20 73 74 61 63 6B 20    on top of stack 
01B3D0:  2A 2F 0D 0A 63 61 6C 6C 73 74 6B 28 29 0D 0A 7B    */..callstk()..{
01B3E0:  0D 0A 09 69 6D 6D 65 64 28 29 3B 0D 0A 09 6F 75    ...immed();...ou
01B3F0:  74 73 74 72 28 22 53 2B 35 22 29 3B 0D 0A 09 6E    tstr("S+5");...n
01B400:  6C 6C 28 22 40 67 63 68 61 72 73 73 22 29 3B 20    ll("@gcharss"); 
01B410:  65 6C 73 65 20 63 61 6C 6C 28 22 40 67 63 68 61    else call("@gcha
01B420:  72 73 6C 22 29 3B 0D 0A 09 64 65 66 76 61 6C 75    rsl");...defvalu
01B430:  65 28 6F 66 66 29 3B 0D 0A 09 7D 0D 0A 2F 2A 09    e(off);...}../*.
01B440:  09 09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 72 65 77    ......*/../*.rew
01B450:  72 69 74 74 65 6E 20 34 2F 33 30 2F 38 31 20 42    ritten 4/30/81 B
01B460:  79 20 4D 69 6B 65 20 42 65 72 6E 73 6F 6E 09 09    y Mike Bernson..
01B470:  2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 09 2A 2F 09    */../*.......*/.
01B480:  0D 0A 2F 2A 20 53 74 6F 72 65 20 74 68 65 20 70    ../* Store the p
01B490:  72 69 6D 61 72 79 20 72 65 67 69 73 74 65 72 20    rimary register 
01B4A0:  69 6E 74 6F 20 74 68 65 20 73 70 65 63 69 66 69    into the specifi
01B4B0:  65 64 09 2A 2F 0D 0A 2F 2A 09 73 74 61 74 69 63    ed.*/../*.static
01B4C0:  20 6D 65 6D 6F 72 79 09 09 09 09 09 2A 2F 0D 0A     memory.....*/..
01B4D0:  70 75 74 6D 65 6D 28 73 6E 61 6D 65 2C 74 79 70    putmem(sname,typ
01B4E0:  2C 6F 66 66 29 0D 0A 63 68 61 72 20 2A 73 6E 61    ,off)..char *sna
01B4F0:  6D 65 3B 0D 0A 69 6E 74 20 74 79 70 3B 0D 0A 69    me;..int typ;..i
01B500:  6E 74 20 6F 66 66 3B 0D 0A 7B 0D 0A 09 69 66 20    nt off;..{...if 
01B510:  28 74 79 70 3D 3D 63 63 68 61 72 29 20 7B 0D 0A    (typ==cchar) {..
01B520:  09 09 6F 6C 28 22 6D 6F 76 5C 74 61 2C 6C 22 29    ..ol("mov\ta,l")
01B530:  3B 0D 0A 09 09 6F 74 28 22 73 74 61 5C 74 22 29    ;....ot("sta\t")
01B540:  3B 0D 0A 09 09 7D 0D 0A 09 65 6C 73 65 20 6F 74    ;....}...else ot
01B550:  28 22 73 68 6C 64 5C 74 22 29 3B 0D 0A 09 6F 75    ("shld\t");...ou
01B560:  74 73 74 72 28 73 6E 61 6D 65 29 3B 0D 0A 09 69    tstr(sname);...i
01B570:  66 20 28 6F 66 66 29 20 7B 0D 0A 09 09 6F 75 74    f (off) {....out
01B580:  73 74 72 28 22 2B 22 29 3B 0D 0A 09 09 6F 75 74    str("+");....out
01B590:  64 65 63 28 6F 66 66 29 3B 0D 0A 09 09 7D 0D 0A    dec(off);....}..
01B5A0:  09 6E 6C 28 29 3B 0D 0A 09 7D 0D 0A 0D 0A 2F 2A    .nl();...}..../*
01B5B0:  20 53 74 6F 72 65 20 74 68 65 20 73 70 65 63 69     Store the speci
01B5C0:  66 69 65 64 20 6F 62 6A 65 63 74 20 74 79 70 65    fied object type
01B5D0:  20 69 6E 20 74 68 65 20 70 72 69 6D 61 72 79 20     in the primary 
01B5E0:  72 65 67 69 73 74 65 72 20 2A 2F 0D 0A 2F 2A 20    register */../* 
01B5F0:  20 20 20 20 20 61 74 20 74 68 65 20 61 64 64 72         at the addr
01B600:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
01B610:  17 00 01 00 02 09 52 E5 17 00 C1 02 00 00 00 02    ......R.........
01B620:  17 00 C6 02 00 00 00 02 17 00 C2 02 00 00 00 02    ................
01B630:  17 00 C7 02 00 00 00 02 17 00 C3 02 00 00 00 02    ................
01B640:  17 00 C8 02 00 00 00 02 17 00 C4 02 00 00 00 02    ................
01B650:  17 00 C9 02 00 00 00 02 17 00 C5 02 00 00 00 02    ................
01B660:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01B670:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01B680:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01B690:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01B6A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01B6B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01B6C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01B6D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01B6E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01B6F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01B700:  6C 28 29 3B 0D 0A 09 73 77 61 70 73 74 6B 28 29    l();...swapstk()
01B710:  3B 0D 0A 09 6F 6C 28 22 70 63 68 6C 22 29 3B 0D    ;...ol("pchl");.
01B720:  0A 09 73 70 3D 73 70 2B 32 3B 0D 0A 09 7D 0D 0A    ..sp=sp+2;...}..
01B730:  2F 2A 20 4A 75 6D 70 20 74 6F 20 73 70 65 63 69    /* Jump to speci
01B740:  66 69 65 64 20 69 6E 74 65 72 6E 61 6C 20 6C 61    fied internal la
01B750:  62 65 6C 20 6E 75 6D 62 65 72 20 2A 2F 0D 0A 6A    bel number */..j
01B760:  75 6D 70 28 6C 61 62 65 6C 29 0D 0A 69 6E 74 20    ump(label)..int 
01B770:  6C 61 62 65 6C 3B 0D 0A 7B 0D 0A 09 6F 74 28 22    label;..{...ot("
01B780:  6A 6D 70 5C 74 22 29 3B 0D 0A 09 70 72 69 6E 74    jmp\t");...print
01B790:  6C 61 62 65 6C 28 6C 61 62 65 6C 29 3B 0D 0A 09    label(label);...
01B7A0:  6E 6C 28 29 3B 0D 0A 09 7D 0D 0A 2F 2A 20 74 65    nl();...}../* te
01B7B0:  73 74 20 74 68 65 20 70 72 69 6D 61 72 79 20 72    st the primary r
01B7C0:  65 67 69 73 74 65 72 20 61 6E 64 20 6A 75 6D 70    egister and jump
01B7D0:  20 69 66 20 74 72 65 75 20 74 6F 20 6C 61 62 65     if treu to labe
01B7E0:  6C 20 2A 2F 0D 0A 74 72 75 65 6A 75 6D 70 28 6C    l */..truejump(l
01B7F0:  61 62 65 6C 2C 73 74 61 74 75 73 29 0D 0A 69 6E    abel,status)..in
01B800:  74 20 6C 61 62 65 6C 3B 0D 0A 69 6E 74 20 73 74    t label;..int st
01B810:  61 74 75 73 3B 0D 0A 7B 0D 0A 09 69 66 20 28 21    atus;..{...if (!
01B820:  73 74 61 74 75 73 29 20 7B 0D 0A 09 09 6F 6C 28    status) {....ol(
01B830:  22 6D 6F 76 5C 74 61 2C 68 22 29 3B 0D 0A 09 09    "mov\ta,h");....
01B840:  6F 6C 28 22 6F 72 61 5C 74 6C 22 29 3B 0D 0A 09    ol("ora\tl");...
01B850:  09 7D 0D 0A 09 6F 74 28 22 6A 6E 7A 5C 74 22 29    .}...ot("jnz\t")
01B860:  3B 0D 0A 09 70 72 69 6E 74 6C 61 62 65 6C 28 6C    ;...printlabel(l
01B870:  61 62 65 6C 29 3B 0D 0A 09 6E 6C 28 29 3B 0D 0A    abel);...nl();..
01B880:  09 7D 0D 0A 0D 0A 0D 0A 2F 2A 20 54 65 73 74 20    .}....../* Test 
01B890:  74 68 65 20 70 72 69 6D 61 72 79 20 72 65 67 69    the primary regi
01B8A0:  73 74 65 72 20 61 6E 64 20 6A 75 6D 70 20 69 66    ster and jump if
01B8B0:  20 66 61 6C 73 65 20 74 6F 20 6C 61 62 65 6C 20     false to label 
01B8C0:  2A 2F 0D 0A 74 65 73 74 6A 75 6D 70 28 6C 61 62    */..testjump(lab
01B8D0:  65 6C 2C 73 74 61 74 75 73 29 0D 0A 69 6E 74 20    el,status)..int 
01B8E0:  6C 61 62 65 6C 3B 0D 0A 69 6E 74 20 73 74 61 74    label;..int stat
01B8F0:  75 73 3B 0D 0A 7B 0D 0A 09 69 66 20 28 21 73 74    us;..{...if (!st
01B900:  0D 0A 23 69 66 6E 64 65 66 20 54 52 55 45 20 20    ..#ifndef TRUE  
01B910:  20 20 2F 2A 20 73 65 65 20 69 66 20 69 6E 63 6C      /* see if incl
01B920:  75 64 65 20 6E 65 65 64 65 64 20 2A 2F 0D 0A 23    ude needed */..#
01B930:  69 6E 63 6C 75 64 65 20 3C 43 2E 44 45 46 3E 0D    include <C.DEF>.
01B940:  0A 23 65 6E 64 69 66 0D 0A 68 65 69 72 31 31 28    .#endif..heir11(
01B950:  6C 76 61 6C 2C 73 74 61 74 75 73 29 0D 0A 69 6E    lval,status)..in
01B960:  74 20 2A 6C 76 61 6C 3B 0D 0A 69 6E 74 20 2A 73    t *lval;..int *s
01B970:  74 61 74 75 73 3B 0D 0A 7B 0D 0A 20 20 20 20 20    tatus;..{..     
01B980:  20 20 20 69 6E 74 20 6B 3B 0D 0A 20 20 20 20 20       int k;..     
01B990:  20 20 20 63 68 61 72 20 2A 70 74 72 3B 0D 0A 20       char *ptr;.. 
01B9A0:  20 20 20 20 20 20 20 69 6E 74 20 20 6C 76 61 6C           int  lval
01B9B0:  32 5B 6C 76 61 6C 73 69 7A 65 5D 3B 0D 0A 20 20    2[lvalsize];..  
01B9C0:  20 20 20 20 20 20 6B 3D 70 72 69 6D 61 72 79 28          k=primary(
01B9D0:  6C 76 61 6C 2C 73 74 61 74 75 73 29 3B 0D 0A 20    lval,status);.. 
01B9E0:  20 20 20 20 20 20 20 70 74 72 3D 6C 76 61 6C 5B           ptr=lval[
01B9F0:  30 5D 3B 0D 0A 20 20 20 20 20 20 20 20 62 6C 61    0];..        bla
01BA00:  6E 6B 73 28 29 3B 0D 0A 20 20 20 20 20 20 20 20    nks();..        
01BA10:  73 77 69 74 63 68 28 63 68 28 29 29 20 7B 0D 0A    switch(ch()) {..
01BA20:  0D 0A 09 20 20 20 20 20 20 20 20 2F 2A 20 73 75    ...        /* su
01BA30:  62 73 63 72 69 70 74 20 76 61 72 62 6C 65 20 20    bscript varble  
01BA40:  2A 2F 0D 0A 09 20 20 20 20 20 20 20 20 63 61 73    */...        cas
01BA50:  65 20 27 5B 27 20 3A 0D 0A 09 09 20 20 20 20 20    e '[' :....     
01BA60:  20 20 20 67 63 68 28 29 3B 20 20 2F 2A 20 65 61       gch();  /* ea
01BA70:  74 20 27 5B 27 20 2A 2F 0D 0A 09 09 20 20 20 20    t '[' */....    
01BA80:  20 20 20 20 73 77 69 74 63 68 28 70 74 72 5B 69        switch(ptr[i
01BA90:  64 65 6E 74 5D 29 20 7B 0D 0A 0D 0A 09 09 09 20    dent]) {....... 
01BAA0:  20 20 20 20 20 20 20 2F 2A 20 61 72 72 61 79 20           /* array 
01BAB0:  6F 66 20 65 6C 65 6D 65 6E 74 73 20 2A 2F 0D 0A    of elements */..
01BAC0:  09 09 09 20 20 20 20 20 20 20 20 63 61 73 65 20    ...        case 
01BAD0:  61 72 72 61 79 20 3A 0D 0A 09 09 09 09 09 2A 73    array :.......*s
01BAE0:  74 61 74 75 73 3D 46 41 4C 53 45 3B 0D 0A 09 09    tatus=FALSE;....
01BAF0:  09 09 09 2B 2B 6C 76 61 6C 5B 31 5D 3B 0D 0A 09    ...++lval[1];...
01BB00:  61 74 75 73 29 20 7B 0D 0A 09 09 6F 6C 28 22 6D    atus) {....ol("m
01BB10:  6F 76 5C 74 61 2C 68 22 29 3B 0D 0A 09 09 6F 6C    ov\ta,h");....ol
01BB20:  28 22 6F 72 61 5C 74 6C 22 29 3B 0D 0A 09 09 7D    ("ora\tl");....}
01BB30:  0D 0A 09 6F 74 28 22 6A 7A 5C 74 22 29 3B 0D 0A    ...ot("jz\t");..
01BB40:  09 70 72 69 6E 74 6C 61 62 65 6C 28 6C 61 62 65    .printlabel(labe
01BB50:  6C 29 3B 0D 0A 09 6E 6C 28 29 3B 0D 0A 09 7D 0D    l);...nl();...}.
01BB60:  0A 2F 2A 20 72 6F 75 74 69 6E 65 20 74 6F 20 73    ./* routine to s
01BB70:  65 61 72 63 68 20 73 77 69 74 63 68 20 74 61 62    earch switch tab
01BB80:  6C 65 20 2A 2F 0D 0A 65 78 65 63 5F 73 77 69 74    le */..exec_swit
01BB90:  63 68 28 63 6F 75 6E 74 2C 6C 61 62 65 6C 2C 65    ch(count,label,e
01BBA0:  6E 64 5F 6C 61 62 65 6C 29 0D 0A 69 6E 74 20 63    nd_label)..int c
01BBB0:  6F 75 6E 74 3B 09 2F 2A 20 6E 75 6D 62 65 72 20    ount;./* number 
01BBC0:  6F 66 20 63 61 73 65 20 73 74 61 74 65 6D 65 6E    of case statemen
01BBD0:  74 20 69 6E 20 73 77 69 74 63 68 20 2A 2F 0D 0A    t in switch */..
01BBE0:  69 6E 74 20 6C 61 62 65 6C 3B 09 2F 2A 20 6C 61    int label;./* la
01BBF0:  62 65 6C 20 66 6F 72 20 73 77 69 74 63 68 20 74    bel for switch t
01BC00:  61 62 6C 65 20 2A 2F 0D 0A 69 6E 74 20 65 6E 64    able */..int end
01BC10:  5F 6C 61 62 65 6C 3B 09 2F 2A 20 6C 61 62 65 6C    _label;./* label
01BC20:  20 74 6F 20 65 78 65 63 75 74 65 20 77 68 65 6E     to execute when
01BC30:  20 74 61 62 6C 65 20 73 65 61 72 63 68 20 65 6E     table search en
01BC40:  64 73 20 61 6E 64 20 6E 6F 74 20 66 6F 75 6E 64    ds and not found
01BC50:  20 2A 2F 0D 0A 7B 0D 0A 09 6F 74 28 22 6C 78 69     */..{...ot("lxi
01BC60:  5C 74 64 2C 22 29 3B 0D 0A 09 70 72 69 6E 74 6C    \td,");...printl
01BC70:  61 62 65 6C 28 6C 61 62 65 6C 29 3B 0D 0A 09 6E    abel(label);...n
01BC80:  6C 28 29 3B 0D 0A 09 6F 74 28 22 6C 78 69 5C 74    l();...ot("lxi\t
01BC90:  68 2C 22 29 3B 0D 0A 09 70 72 69 6E 74 6C 61 62    h,");...printlab
01BCA0:  65 6C 28 65 6E 64 5F 6C 61 62 65 6C 29 3B 0D 0A    el(end_label);..
01BCB0:  09 6E 6C 28 29 3B 0D 0A 09 6F 74 28 22 6D 76 69    .nl();...ot("mvi
01BCC0:  5C 74 62 2C 22 29 3B 0D 0A 09 6F 75 74 64 65 63    \tb,");...outdec
01BCD0:  28 63 6F 75 6E 74 29 3B 0D 0A 09 6E 6C 28 29 3B    (count);...nl();
01BCE0:  0D 0A 09 6F 74 28 22 6A 6D 70 5C 74 40 73 77 69    ...ot("jmp\t@swi
01BCF0:  74 63 68 22 29 3B 0D 0A 09 6E 6C 28 29 3B 0D 0A    tch");...nl();..
01BD00:  09 09 09 20 20 20 20 20 20 20 20 69 66 20 28 63    ...        if (c
01BD10:  6F 6E 73 74 5F 65 78 70 28 6C 76 61 6C 32 29 20    onst_exp(lval2) 
01BD20:  26 26 20 63 68 28 29 3D 3D 27 5D 27 29 20 7B 0D    && ch()==']') {.
01BD30:  0A 09 09 09 09 09 20 20 20 20 20 20 20 20 6C 76    ......        lv
01BD40:  61 6C 5B 32 5D 3D 64 61 74 61 5F 73 69 7A 65 28    al[2]=data_size(
01BD50:  6C 76 61 6C 29 2A 0D 0A 09 09 09 09 09 09 20 20    lval)*........  
01BD60:  20 20 20 20 20 20 6C 76 61 6C 32 5B 30 5D 3B 0D          lval2[0];.
01BD70:  0A 09 09 09 09 09 20 20 20 20 20 20 20 20 6E 65    ......        ne
01BD80:  65 64 62 72 61 63 6B 28 22 5D 22 29 3B 0D 0A 09    edbrack("]");...
01BD90:  09 09 09 09 20 20 20 20 20 20 20 20 72 65 74 75    ....        retu
01BDA0:  72 6E 20 4E 4F 54 4C 4F 41 44 45 44 3B 0D 0A 09    rn NOTLOADED;...
01BDB0:  09 09 09 09 20 20 20 20 20 20 20 20 7D 0D 0A 09    ....        }...
01BDC0:  09 09 09 20 20 20 20 20 20 20 20 65 6C 73 65 20    ...        else 
01BDD0:  7B 0D 0A 09 09 09 09 09 20 20 20 20 20 20 20 20    {.......        
01BDE0:  65 78 70 72 65 73 73 69 6F 6E 28 29 3B 0D 0A 09    expression();...
01BDF0:  09 09 09 09 20 20 20 20 20 20 20 20 73 69 7A 65    ....        size
01BE00:  5F 61 64 6A 75 73 74 28 6C 76 61 6C 29 3B 0D 0A    _adjust(lval);..
01BE10:  09 09 09 09 09 20 20 20 20 20 20 20 20 73 77 61    .....        swa
01BE20:  70 28 29 3B 0D 0A 09 09 09 09 09 20 20 20 20 20    p();.......     
01BE30:  20 20 20 61 64 64 72 65 73 73 28 6C 76 61 6C 2C       address(lval,
01BE40:  4E 4F 54 4C 4F 41 44 45 44 29 3B 0D 0A 09 09 09    NOTLOADED);.....
01BE50:  09 09 20 20 20 20 20 20 20 20 61 64 64 5F 61 64    ..        add_ad
01BE60:  64 72 65 73 73 28 29 3B 0D 0A 09 09 09 09 09 20    dress();....... 
01BE70:  20 20 20 20 20 20 20 6E 65 65 64 62 72 61 63 6B           needbrack
01BE80:  28 22 5D 22 29 3B 0D 0A 09 09 09 09 09 20 20 20    ("]");.......   
01BE90:  20 20 20 20 20 72 65 74 75 72 6E 20 41 44 44 52         return ADDR
01BEA0:  45 53 53 3B 0D 0A 09 09 09 09 09 20 20 20 20 20    ESS;.......     
01BEB0:  20 20 20 7D 0D 0A 0D 0A 09 09 09 20 20 20 20 20       }.......     
01BEC0:  20 20 20 2F 2A 20 70 6F 69 6E 74 65 72 20 74 6F       /* pointer to
01BED0:  20 65 6C 65 6D 65 6E 74 73 20 2A 2F 0D 0A 09 09     elements */....
01BEE0:  09 20 20 20 20 20 20 20 20 63 61 73 65 20 70 6F    .        case po
01BEF0:  69 6E 74 65 72 3A 0D 0A 09 09 09 09 09 2A 73 74    inter:.......*st
01BF00:  09 7D 0D 0A 2F 2A 20 6F 75 74 70 75 74 20 65 78    .}../* output ex
01BF10:  74 72 6E 20 61 6E 64 20 73 79 6D 62 6F 6C 20 6E    trn and symbol n
01BF20:  61 6D 65 20 2A 2F 0D 0A 65 78 74 72 6E 28 6E 29    ame */..extrn(n)
01BF30:  0D 0A 63 68 61 72 20 2A 6E 3B 0D 0A 7B 0D 0A 09    ..char *n;..{...
01BF40:  6F 75 74 73 74 72 28 22 5C 74 65 78 74 72 6E 5C    outstr("\textrn\
01BF50:  74 22 29 3B 0D 0A 09 6F 75 74 73 74 72 28 6E 29    t");...outstr(n)
01BF60:  3B 6E 6C 28 29 3B 0D 0A 09 7D 0D 0A 0D 0A 2F 2A    ;nl();...}..../*
01BF70:  20 6F 75 74 70 75 74 20 63 6F 6E 74 72 6F 6C 20     output control 
01BF80:  73 65 63 74 69 6F 6E 20 20 6E 61 6D 65 20 61 6E    section  name an
01BF90:  64 20 6B 65 79 20 77 6F 72 64 20 2A 2F 0D 0A 63    d key word */..c
01BFA0:  73 65 63 74 28 6E 29 0D 0A 63 68 61 72 20 2A 6E    sect(n)..char *n
01BFB0:  3B 0D 0A 7B 0D 0A 09 6F 75 74 73 74 72 28 6E 29    ;..{...outstr(n)
01BFC0:  3B 0D 0A 09 63 6F 6C 28 29 3B 0D 0A 09 6F 6C 28    ;...col();...ol(
01BFD0:  22 43 53 45 43 54 22 29 3B 0D 0A 09 7D 0D 0A 0D    "CSECT");...}...
01BFE0:  0A 2F 2A 20 6F 75 74 70 75 74 20 64 61 74 61 20    ./* output data 
01BFF0:  73 65 63 74 69 6F 6E 20 6E 61 6D 65 20 61 6E 64    section name and
01C000:  20 6B 65 79 20 77 6F 72 64 20 2A 2F 0D 0A 64 73     key word */..ds
01C010:  65 63 74 28 6E 29 0D 0A 63 68 61 72 20 2A 6E 3B    ect(n)..char *n;
01C020:  0D 0A 7B 0D 0A 09 6F 75 74 73 74 72 28 6E 29 3B    ..{...outstr(n);
01C030:  0D 0A 09 63 6F 6C 28 29 3B 0D 0A 09 6F 6C 28 22    ...col();...ol("
01C040:  64 73 65 63 74 22 29 3B 0D 0A 09 7D 0D 0A 2F 2A    dsect");...}../*
01C050:  20 64 65 66 69 6E 65 20 76 61 6C 75 65 20 75 73     define value us
01C060:  69 6E 67 20 6D 69 6E 20 61 6D 6F 75 6E 74 20 6F    ing min amount o
01C070:  66 20 73 74 72 6F 61 67 65 20 73 70 61 63 65 20    f stroage space 
01C080:  2A 2F 0D 0A 64 65 66 76 61 6C 75 65 28 6E 75 6D    */..defvalue(num
01C090:  29 0D 0A 69 6E 74 20 6E 75 6D 3B 0D 0A 7B 0D 0A    )..int num;..{..
01C0A0:  09 69 66 20 28 69 73 62 79 74 65 28 6E 75 6D 29    .if (isbyte(num)
01C0B0:  29 20 64 65 66 62 79 74 65 28 29 3B 20 65 6C 73    ) defbyte(); els
01C0C0:  65 20 64 65 66 77 6F 72 64 28 29 3B 0D 0A 09 6F    e defword();...o
01C0D0:  75 74 64 65 63 28 6E 75 6D 29 3B 0D 0A 09 6E 6C    utdec(num);...nl
01C0E0:  28 29 3B 0D 0A 09 7D 0D 0A 0D 0A 2F 2A 20 63 68    ();...}..../* ch
01C0F0:  65 63 6B 20 74 6F 20 73 65 65 20 69 66 20 6E 75    eck to see if nu
01C100:  61 74 75 73 3D 46 41 4C 53 45 3B 0D 0A 09 09 09    atus=FALSE;.....
01C110:  09 20 20 20 20 20 20 20 20 69 66 20 28 63 6F 6E    .        if (con
01C120:  73 74 5F 65 78 70 28 6C 76 61 6C 32 29 20 26 26    st_exp(lval2) &&
01C130:  20 63 68 28 29 3D 3D 27 5D 27 29 20 7B 0D 0A 09     ch()==']') {...
01C140:  09 09 09 09 09 69 6D 6D 65 64 28 29 3B 0D 0A 09    .....immed();...
01C150:  09 09 09 09 09 6F 75 74 64 65 63 28 64 61 74 61    .....outdec(data
01C160:  5F 73 69 7A 65 28 6C 76 61 6C 29 2A 0D 0A 09 09    _size(lval)*....
01C170:  09 09 09 09 09 6C 76 61 6C 32 5B 30 5D 29 3B 0D    .....lval2[0]);.
01C180:  0A 09 09 09 09 09 09 6E 6C 28 29 3B 0D 0A 09 09    .......nl();....
01C190:  09 09 09 09 73 77 61 70 28 29 3B 0D 0A 09 09 09    ....swap();.....
01C1A0:  09 09 09 72 76 61 6C 75 65 28 6C 76 61 6C 2C 32    ...rvalue(lval,2
01C1B0:  29 3B 0D 0A 09 09 09 09 09 09 61 64 64 5F 61 64    );........add_ad
01C1C0:  64 72 65 73 73 28 29 3B 0D 0A 09 09 09 09 09 20    dress();....... 
01C1D0:  20 20 20 20 20 20 20 7D 0D 0A 09 09 09 09 20 20           }......  
01C1E0:  20 20 20 20 20 20 65 6C 73 65 20 7B 0D 0A 09 09          else {....
01C1F0:  09 09 09 20 20 20 20 20 20 20 20 65 78 70 72 65    ...        expre
01C200:  73 73 69 6F 6E 28 29 3B 0D 0A 09 09 09 09 09 20    ssion();....... 
01C210:  20 20 20 20 20 20 20 73 69 7A 65 5F 61 64 6A 75           size_adju
01C220:  73 74 28 6C 76 61 6C 29 3B 0D 0A 09 09 09 09 09    st(lval);.......
01C230:  20 20 20 20 20 20 20 20 73 77 61 70 28 29 3B 0D            swap();.
01C240:  0A 09 09 09 09 09 20 20 20 20 20 20 20 20 72 76    ......        rv
01C250:  61 6C 75 65 28 6C 76 61 6C 2C 32 29 3B 0D 0A 09    alue(lval,2);...
01C260:  09 09 09 09 20 20 20 20 20 20 20 20 61 64 64 5F    ....        add_
01C270:  61 64 64 72 65 73 73 28 29 3B 0D 0A 09 09 09 09    address();......
01C280:  09 20 20 20 20 20 20 20 20 7D 0D 0A 09 09 09 09    .        }......
01C290:  20 20 20 20 20 20 20 20 6E 65 65 64 62 72 61 63            needbrac
01C2A0:  6B 28 22 5D 22 29 3B 0D 0A 09 09 09 09 09 6C 76    k("]");.......lv
01C2B0:  61 6C 5B 31 5D 20 2B 3D 20 31 3B 0D 0A 09 09 09    al[1] += 1;.....
01C2C0:  09 20 20 20 20 20 20 20 20 72 65 74 75 72 6E 20    .        return 
01C2D0:  41 44 44 52 45 53 53 3B 0D 0A 0D 0A 09 09 09 20    ADDRESS;....... 
01C2E0:  20 20 20 20 20 20 20 2F 2A 20 6E 6F 74 20 61 20           /* not a 
01C2F0:  76 61 69 6C 64 20 69 64 65 6E 74 20 66 6F 72 20    vaild ident for 
01C300:  6D 62 65 72 20 69 73 20 61 20 62 79 74 65 20 2A    mber is a byte *
01C310:  2F 0D 0A 69 73 62 79 74 65 28 6E 75 6D 29 0D 0A    /..isbyte(num)..
01C320:  69 6E 74 20 6E 75 6D 3B 0D 0A 7B 0D 0A 09 72 65    int num;..{...re
01C330:  74 75 72 6E 20 28 6E 75 6D 20 3E 3D 20 30 20 26    turn (num >= 0 &
01C340:  26 20 6E 75 6D 20 3C 3D 32 35 35 29 3B 0D 0A 09    & num <=255);...
01C350:  7D 0D 0A 0D 0A 2F 2A 20 50 72 69 6E 74 20 70 73    }..../* Print ps
01C360:  65 75 64 6F 2D 6F 70 20 74 6F 20 64 65 66 69 6E    eudo-op to defin
01C370:  65 20 61 20 62 79 74 65 20 2A 2F 0D 0A 64 65 66    e a byte */..def
01C380:  62 79 74 65 28 29 0D 0A 7B 0D 0A 09 6F 74 28 22    byte()..{...ot("
01C390:  64 62 5C 74 22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 20    db\t");...}../* 
01C3A0:  50 72 69 6E 74 20 70 73 65 75 64 6F 2D 6F 70 20    Print pseudo-op 
01C3B0:  74 6F 20 64 65 66 69 6E 65 20 73 74 6F 72 61 67    to define storag
01C3C0:  65 20 2A 2F 0D 0A 64 65 66 73 74 6F 72 61 67 65    e */..defstorage
01C3D0:  28 29 0D 0A 7B 0D 0A 09 6F 74 28 22 64 73 5C 74    ()..{...ot("ds\t
01C3E0:  22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 20 50 72 69 6E    ");...}../* Prin
01C3F0:  74 20 70 73 65 75 64 6F 2D 6F 70 20 74 6F 20 64    t pseudo-op to d
01C400:  65 66 69 6E 65 20 61 20 77 6F 72 64 20 2A 2F 0D    efine a word */.
01C410:  0A 64 65 66 77 6F 72 64 28 29 0D 0A 7B 0D 0A 09    .defword()..{...
01C420:  6F 74 28 22 64 77 5C 74 22 29 3B 0D 0A 09 7D 0D    ot("dw\t");...}.
01C430:  0A 2F 2A 20 4D 6F 64 69 66 79 20 74 68 65 20 73    ./* Modify the s
01C440:  74 61 63 6B 20 70 6F 69 6E 74 65 72 20 74 6F 20    tack pointer to 
01C450:  74 68 65 20 6E 65 77 20 76 61 6C 75 65 20 69 6E    the new value in
01C460:  64 69 63 61 74 65 64 20 2A 2F 0D 0A 6D 6F 64 73    dicated */..mods
01C470:  74 6B 28 6E 65 77 73 70 29 0D 0A 69 6E 74 20 6E    tk(newsp)..int n
01C480:  65 77 73 70 3B 0D 0A 7B 0D 0A 09 69 6E 74 20 6B    ewsp;..{...int k
01C490:  3B 0D 0A 09 6B 3D 6E 65 77 73 70 2D 73 70 3B 0D    ;...k=newsp-sp;.
01C4A0:  0A 09 69 66 20 28 21 6B 29 20 72 65 74 75 72 6E    ..if (!k) return
01C4B0:  20 6E 65 77 73 70 3B 0D 0A 09 69 66 20 28 20 6B     newsp;...if ( k
01C4C0:  20 3E 3D 20 30 29 20 7B 0D 0A 09 09 69 66 28 6B     >= 0) {....if(k
01C4D0:  3C 37 29 20 7B 0D 0A 09 09 09 69 66 20 28 6B 26    <7) {.....if (k&
01C4E0:  31 29 20 7B 0D 0A 09 09 09 09 6F 6C 28 22 69 6E    1) {......ol("in
01C4F0:  78 5C 74 73 70 22 29 3B 0D 0A 09 09 09 09 6B 2D    x\tsp");......k-
01C500:  73 75 62 73 63 72 69 70 74 20 2A 2F 0D 0A 09 09    subscript */....
01C510:  09 20 20 20 20 20 20 20 20 64 65 66 61 75 6C 74    .        default
01C520:  20 3A 0D 0A 09 09 09 09 20 20 20 20 20 20 20 20     :......        
01C530:  73 75 62 65 72 72 6F 72 28 70 74 72 29 3B 0D 0A    suberror(ptr);..
01C540:  09 09 09 09 20 20 20 20 20 20 20 20 72 65 74 75    ....        retu
01C550:  72 6E 20 4C 4F 41 44 45 44 3B 0D 0A 09 09 09 20    rn LOADED;..... 
01C560:  20 20 20 20 20 20 20 7D 0D 0A 0D 0A 09 20 20 20           }.....   
01C570:  20 20 20 20 20 2F 2A 20 61 20 66 75 6E 63 74 69         /* a functi
01C580:  6F 6E 20 63 61 6C 6C 20 2A 2F 0D 0A 09 20 20 20    on call */...   
01C590:  20 20 20 20 20 63 61 73 65 20 27 28 27 20 3A 0D         case '(' :.
01C5A0:  0A 09 09 09 2A 73 74 61 74 75 73 3D 46 41 4C 53    ....*status=FALS
01C5B0:  45 3B 0D 0A 09 09 20 20 20 20 20 20 20 20 67 63    E;....        gc
01C5C0:  68 28 29 3B 20 2F 2A 20 65 61 74 20 27 28 27 20    h(); /* eat '(' 
01C5D0:  2A 2F 0D 0A 09 09 20 20 20 20 20 20 20 20 63 61    */....        ca
01C5E0:  6C 6C 66 75 6E 63 74 69 6F 6E 28 6C 76 61 6C 5B    llfunction(lval[
01C5F0:  30 5D 29 3B 0D 0A 09 09 20 20 20 20 20 20 20 20    0]);....        
01C600:  72 65 74 75 72 6E 20 4C 4F 41 44 45 44 3B 0D 0A    return LOADED;..
01C610:  0D 0A 09 20 20 20 20 20 20 20 20 2F 2A 20 6E 6F    ...        /* no
01C620:  74 20 61 20 73 75 62 73 63 72 69 70 74 65 64 20    t a subscripted 
01C630:  6F 72 20 66 75 6E 63 74 69 6F 6E 20 63 61 6C 6C    or function call
01C640:  20 28 6E 6F 74 20 66 6F 72 20 74 68 69 73 20 6C     (not for this l
01C650:  65 76 65 6C 20 2A 2F 0D 0A 09 20 20 20 20 20 20    evel */...      
01C660:  20 20 64 65 66 61 75 6C 74 3A 0D 0A 09 09 20 20      default:....  
01C670:  20 20 20 20 20 20 72 65 74 75 72 6E 20 6B 3B 0D          return k;.
01C680:  0A 09 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20    ..        }..   
01C690:  20 20 20 20 20 7D 0D 0A 0D 0A 70 72 69 6D 61 72         }....primar
01C6A0:  79 28 6C 76 61 6C 2C 73 74 61 74 75 73 29 0D 0A    y(lval,status)..
01C6B0:  69 6E 74 20 2A 6C 76 61 6C 3B 0D 0A 69 6E 74 20    int *lval;..int 
01C6C0:  2A 73 74 61 74 75 73 3B 0D 0A 7B 0D 0A 20 20 20    *status;..{..   
01C6D0:  20 20 20 20 20 63 68 61 72 20 2A 70 74 72 3B 0D         char *ptr;.
01C6E0:  0A 20 20 20 20 20 20 20 20 63 68 61 72 20 73 6E    .        char sn
01C6F0:  61 6D 65 5B 6E 61 6D 65 73 69 7A 65 5D 3B 0D 0A    ame[namesize];..
01C700:  2D 3B 0D 0A 09 09 09 09 7D 0D 0A 09 09 09 77 68    -;......}.....wh
01C710:  69 6C 65 28 6B 29 20 7B 0D 0A 09 09 09 09 6F 6C    ile(k) {......ol
01C720:  28 22 70 6F 70 5C 74 62 22 29 3B 0D 0A 09 09 09    ("pop\tb");.....
01C730:  09 6B 3D 6B 2D 32 3B 0D 0A 09 09 09 09 7D 0D 0A    .k=k-2;......}..
01C740:  09 09 09 72 65 74 75 72 6E 20 6E 65 77 73 70 3B    ...return newsp;
01C750:  0D 0A 09 09 09 7D 0D 0A 09 09 7D 0D 0A 09 69 66    .....}....}...if
01C760:  20 28 6B 3C 30 29 20 7B 0D 0A 09 09 69 66 20 28     (k<0) {....if (
01C770:  6B 3E 2D 37 29 20 7B 0D 0A 09 09 09 69 66 20 28    k>-7) {.....if (
01C780:  6B 26 31 29 20 7B 0D 0A 09 09 09 09 6F 6C 28 22    k&1) {......ol("
01C790:  64 63 78 5C 74 73 70 22 29 3B 0D 0A 09 09 09 09    dcx\tsp");......
01C7A0:  6B 2B 2B 3B 0D 0A 09 09 09 09 7D 0D 0A 09 09 09    k++;......}.....
01C7B0:  77 68 69 6C 65 28 6B 29 20 7B 0D 0A 09 09 09 09    while(k) {......
01C7C0:  6F 6C 28 22 70 75 73 68 5C 74 62 22 29 3B 0D 0A    ol("push\tb");..
01C7D0:  09 09 09 09 6B 3D 6B 2B 32 3B 0D 0A 09 09 09 09    ....k=k+2;......
01C7E0:  7D 0D 0A 09 09 09 72 65 74 75 72 6E 20 6E 65 77    }.....return new
01C7F0:  73 70 3B 0D 0A 09 09 09 7D 0D 0A 09 09 7D 0D 0A    sp;.....}....}..
01C800:  09 73 77 61 70 28 29 3B 0D 0A 09 69 6D 6D 65 64    .swap();...immed
01C810:  28 29 3B 0D 0A 09 6F 75 74 64 65 63 28 6B 29 3B    ();...outdec(k);
01C820:  0D 0A 09 6E 6C 28 29 3B 0D 0A 09 6F 6C 28 22 64    ...nl();...ol("d
01C830:  61 64 5C 74 73 70 22 29 3B 0D 0A 09 6F 6C 28 22    ad\tsp");...ol("
01C840:  73 70 68 6C 22 29 3B 0D 0A 09 73 77 61 70 28 29    sphl");...swap()
01C850:  3B 0D 0A 09 72 65 74 75 72 6E 20 6E 65 77 73 70    ;...return newsp
01C860:  3B 0D 0A 09 7D 0D 0A 2F 2A 09 44 6F 75 62 6C 65    ;...}../*.Double
01C870:  20 74 68 65 20 70 72 69 6D 61 72 79 20 72 65 67     the primary reg
01C880:  69 73 74 65 72 09 2A 2F 0D 0A 64 6F 75 62 6C 65    ister.*/..double
01C890:  72 65 67 28 29 0D 0A 7B 0D 0A 09 6F 6C 28 22 64    reg()..{...ol("d
01C8A0:  61 64 5C 74 68 22 29 3B 0D 0A 09 7D 0D 0A 0D 0A    ad\th");...}....
01C8B0:  0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
01C8C0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
01C8D0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
01C8E0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
01C8F0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
01C900:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
01C910:  18 00 01 00 02 09 52 E5 18 00 C1 02 00 00 00 02    ......R.........
01C920:  18 00 C6 02 00 00 00 02 18 00 C2 02 00 00 00 02    ................
01C930:  18 00 C7 02 00 00 00 02 18 00 C3 02 00 00 00 02    ................
01C940:  18 00 C8 02 00 00 00 02 18 00 C4 02 00 00 00 02    ................
01C950:  18 00 C9 02 00 00 00 02 18 00 C5 02 00 00 00 02    ................
01C960:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01C970:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01C980:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01C990:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01C9A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01C9B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01C9C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01C9D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01C9E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01C9F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01CA00:  20 20 20 20 20 20 20 20 69 6E 74 20 20 6E 75 6D            int  num
01CA10:  5B 31 5D 3B 0D 0A 20 20 20 20 20 20 20 20 69 6E    [1];..        in
01CA20:  74 20 6B 3B 0D 0A 0D 0A 20 20 20 20 20 20 20 20    t k;....        
01CA30:  2F 2A 20 63 6C 65 61 72 20 6C 76 61 6C 20 61 72    /* clear lval ar
01CA40:  72 61 79 20 66 6F 72 20 75 73 65 20 2A 2F 0D 0A    ray for use */..
01CA50:  20 20 20 20 20 20 20 20 6C 76 61 6C 5B 30 5D 3D            lval[0]=
01CA60:  0D 0A 20 20 20 20 20 20 20 20 6C 76 61 6C 5B 31    ..        lval[1
01CA70:  5D 3D 0D 0A 20 20 20 20 20 20 20 20 6C 76 61 6C    ]=..        lval
01CA80:  5B 32 5D 3D 30 3B 0D 0A 0D 0A 20 20 20 20 20 20    [2]=0;....      
01CA90:  20 20 69 66 28 6D 61 74 63 68 28 22 28 22 29 29      if(match("("))
01CAA0:  20 7B 0D 0A 09 20 20 20 20 20 20 20 20 6B 3D 68     {...        k=h
01CAB0:  65 69 72 31 28 6C 76 61 6C 2C 73 74 61 74 75 73    eir1(lval,status
01CAC0:  29 3B 0D 0A 09 20 20 20 20 20 20 20 20 6E 65 65    );...        nee
01CAD0:  64 62 72 61 63 6B 28 22 29 22 29 3B 0D 0A 09 20    dbrack(")");... 
01CAE0:  20 20 20 20 20 20 20 72 65 74 75 72 6E 20 6B 3B           return k;
01CAF0:  0D 0A 09 20 20 20 20 20 20 20 20 7D 0D 0A 0D 0A    ...        }....
01CB00:  09 2A 73 74 61 74 75 73 3D 46 41 4C 53 45 3B 0D    .*status=FALSE;.
01CB10:  0A 20 20 20 20 20 20 20 20 69 66 20 28 73 79 6D    .        if (sym
01CB20:  6E 61 6D 65 28 73 6E 61 6D 65 29 29 20 7B 0D 0A    name(sname)) {..
01CB30:  09 20 20 20 20 20 20 20 20 69 66 20 28 28 6C 76    .        if ((lv
01CB40:  61 6C 5B 30 5D 3D 66 69 6E 64 6C 6F 63 28 73 6E    al[0]=findloc(sn
01CB50:  61 6D 65 29 29 29 20 72 65 74 75 72 6E 20 32 3B    ame))) return 2;
01CB60:  0D 0A 09 20 20 20 20 20 20 20 20 69 66 20 28 28    ...        if ((
01CB70:  6C 76 61 6C 5B 30 5D 3D 70 74 72 3D 66 69 6E 64    lval[0]=ptr=find
01CB80:  67 6C 62 28 73 6E 61 6D 65 29 29 29 0D 0A 09 09    glb(sname)))....
01CB90:  20 20 20 20 20 20 20 20 69 66 20 28 70 74 72 5B            if (ptr[
01CBA0:  69 64 65 6E 74 5D 20 21 3D 20 66 75 6E 63 74 69    ident] != functi
01CBB0:  6F 6E 29 20 72 65 74 75 72 6E 20 32 3B 0D 0A 09    on) return 2;...
01CBC0:  20 20 20 20 20 20 20 20 69 66 20 28 63 68 28 29            if (ch()
01CBD0:  20 3D 3D 27 28 27 29 20 7B 0D 0A 09 09 20 20 20     =='(') {....   
01CBE0:  20 20 20 20 20 69 66 20 28 21 28 70 74 72 3D 66         if (!(ptr=f
01CBF0:  69 6E 64 67 6C 62 28 73 6E 61 6D 65 29 29 29 0D    indglb(sname))).
01CC00:  2A 70 74 72 3B 0D 0A 20 20 20 20 20 20 20 20 69    *ptr;..        i
01CC10:  66 20 28 21 28 70 74 72 3D 6C 76 61 6C 5B 30 5D    f (!(ptr=lval[0]
01CC20:  29 20 7C 7C 20 6B 20 21 3D 20 4E 4F 54 4C 4F 41    ) || k != NOTLOA
01CC30:  44 45 44 29 20 72 65 74 75 72 6E 3B 0D 0A 20 20    DED) return;..  
01CC40:  20 20 20 20 20 20 73 77 69 74 63 68 28 70 74 72          switch(ptr
01CC50:  5B 73 74 6F 72 61 67 65 5D 29 20 7B 0D 0A 0D 0A    [storage]) {....
01CC60:  09 20 20 20 20 20 20 20 20 2F 2A 20 67 6C 6F 62    .        /* glob
01CC70:  61 6C 20 73 79 6D 62 6F 6C 20 2A 2F 0D 0A 09 20    al symbol */... 
01CC80:  20 20 20 20 20 20 20 63 61 73 65 20 73 74 61 74           case stat
01CC90:  69 6B 20 3A 0D 0A 09 09 20 20 20 20 20 20 20 20    ik :....        
01CCA0:  69 6D 6D 65 64 28 29 3B 0D 0A 09 09 20 20 20 20    immed();....    
01CCB0:  20 20 20 20 6F 75 74 73 74 72 28 70 74 72 2B 6E        outstr(ptr+n
01CCC0:  61 6D 65 29 3B 0D 0A 09 09 20 20 20 20 20 20 20    ame);....       
01CCD0:  20 69 66 20 28 6C 76 61 6C 5B 32 5D 29 20 7B 0D     if (lval[2]) {.
01CCE0:  0A 09 09 09 20 20 20 20 20 20 20 20 6F 75 74 73    ....        outs
01CCF0:  74 72 28 22 2B 22 29 3B 0D 0A 09 09 09 20 20 20    tr("+");.....   
01CD00:  20 20 20 20 20 6F 75 74 64 65 63 28 6C 76 61 6C         outdec(lval
01CD10:  5B 32 5D 29 3B 0D 0A 09 09 09 20 20 20 20 20 20    [2]);.....      
01CD20:  20 20 7D 0D 0A 09 09 20 20 20 20 20 20 20 20 6E      }....        n
01CD30:  6C 28 29 3B 0D 0A 09 09 20 20 20 20 20 20 20 20    l();....        
01CD40:  62 72 65 61 6B 3B 0D 0A 0D 0A 09 20 20 20 20 20    break;.....     
01CD50:  20 20 20 2F 2A 20 6C 6F 63 61 6C 20 73 79 6D 62       /* local symb
01CD60:  6F 6C 20 2A 2F 0D 0A 09 20 20 20 20 20 20 20 20    ol */...        
01CD70:  63 61 73 65 20 73 74 6B 6C 6F 63 20 3A 0D 0A 09    case stkloc :...
01CD80:  20 20 20 20 20 20 20 20 63 61 73 65 20 73 74 6B            case stk
01CD90:  61 72 67 20 3A 0D 0A 09 09 20 20 20 20 20 20 20    arg :....       
01CDA0:  20 69 6D 6D 65 64 28 29 3B 0D 0A 09 09 20 20 20     immed();....   
01CDB0:  20 20 20 20 20 6F 75 74 64 65 63 28 28 70 74 72         outdec((ptr
01CDC0:  5B 6F 66 66 73 65 74 5D 2B 70 74 72 5B 6F 66 66    [offset]+ptr[off
01CDD0:  73 65 74 31 5D 2A 32 35 36 2B 6C 76 61 6C 5B 32    set1]*256+lval[2
01CDE0:  5D 29 2D 73 70 29 3B 0D 0A 09 09 20 20 20 20 20    ])-sp);....     
01CDF0:  20 20 20 6E 6C 28 29 3B 0D 0A 09 09 20 20 20 20       nl();....    
01CE00:  0A 09 09 20 20 20 20 20 20 20 20 69 66 20 28 67    ...        if (g
01CE10:  6C 62 70 74 72 3E 3D 65 6E 64 67 6C 62 29 20 7B    lbptr>=endglb) {
01CE20:  0D 0A 09 09 09 20 20 20 20 20 20 20 20 65 72 72    .....        err
01CE30:  6F 72 28 22 67 6C 6F 62 61 6C 20 73 79 6D 62 6F    or("global symbo
01CE40:  6C 20 74 61 62 6C 65 20 6F 66 76 65 72 66 6C 6F    l table ofverflo
01CE50:  77 22 29 3B 0D 0A 09 09 09 20 20 20 20 20 20 20    w");.....       
01CE60:  20 7D 0D 0A 09 09 20 20 20 20 20 20 20 20 65 6C     }....        el
01CE70:  73 65 20 7B 0D 0A 09 09 09 20 20 20 20 20 20 20    se {.....       
01CE80:  20 70 74 72 3D 67 6C 62 70 74 72 3B 0D 0A 09 09     ptr=glbptr;....
01CE90:  09 20 20 20 20 20 20 20 20 67 6C 62 70 74 72 2B    .        glbptr+
01CEA0:  3D 73 79 6D 73 69 7A 3B 0D 0A 09 09 09 20 20 20    =symsiz;.....   
01CEB0:  20 20 20 20 20 73 74 72 63 70 79 28 70 74 72 2B         strcpy(ptr+
01CEC0:  6E 61 6D 65 2C 73 6E 61 6D 65 29 3B 0D 0A 09 09    name,sname);....
01CED0:  09 20 20 20 20 20 20 20 20 70 74 72 5B 69 64 65    .        ptr[ide
01CEE0:  6E 74 5D 3D 66 75 6E 63 74 69 6F 6E 3B 0D 0A 09    nt]=function;...
01CEF0:  09 09 20 20 20 20 20 20 20 20 70 74 72 5B 74 79    ..        ptr[ty
01CF00:  70 65 5D 3D 63 69 6E 74 3B 0D 0A 09 09 09 20 20    pe]=cint;.....  
01CF10:  20 20 20 20 20 20 70 74 72 5B 6F 66 66 73 65 74          ptr[offset
01CF20:  5D 3D 0D 0A 09 09 09 20 20 20 20 20 20 20 20 70    ]=.....        p
01CF30:  74 72 5B 6F 66 66 73 65 74 31 5D 3D 0D 0A 09 09    tr[offset1]=....
01CF40:  09 20 20 20 20 20 20 20 20 70 74 72 5B 73 74 6F    .        ptr[sto
01CF50:  72 61 67 65 5D 3D 0D 0A 09 09 09 20 20 20 20 20    rage]=.....     
01CF60:  20 20 20 70 74 72 5B 69 6E 64 63 6E 74 5D 3D 30       ptr[indcnt]=0
01CF70:  3B 0D 0A 09 09 09 20 20 20 20 20 20 20 20 7D 0D    ;.....        }.
01CF80:  0A 0D 0A 09 09 20 20 20 20 20 20 20 20 6C 76 61    .....        lva
01CF90:  6C 5B 30 5D 3D 70 74 72 3B 0D 0A 09 09 20 20 20    l[0]=ptr;....   
01CFA0:  20 20 20 20 20 72 65 74 75 72 6E 20 32 3B 0D 0A         return 2;..
01CFB0:  09 09 20 20 20 20 20 20 20 20 7D 0D 0A 09 20 20    ..        }...  
01CFC0:  20 20 20 20 20 20 65 6C 73 65 20 7B 0D 0A 09 09          else {....
01CFD0:  20 20 20 20 20 20 20 20 75 6E 64 65 66 69 6E 65            undefine
01CFE0:  28 73 6E 61 6D 65 29 3B 0D 0A 09 09 20 20 20 20    (sname);....    
01CFF0:  20 20 20 20 72 65 74 75 72 6E 20 30 3B 0D 0A 09        return 0;...
01D000:  20 20 20 20 6F 74 28 22 64 61 64 5C 74 73 70 22        ot("dad\tsp"
01D010:  29 3B 0D 0A 09 09 20 20 20 20 20 20 20 20 6E 6C    );....        nl
01D020:  28 29 3B 0D 0A 09 09 20 20 20 20 20 20 20 20 62    ();....        b
01D030:  72 65 61 6B 3B 0D 0A 0D 0A 09 20 20 20 20 20 20    reak;.....      
01D040:  20 20 7D 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A      }..        }..
01D050:  2F 2A 09 09 09 09 09 09 2A 2F 0D 0A 2F 2A 09 64    /*......*/../*.d
01D060:  61 74 65 20 77 72 69 74 74 65 6E 20 36 2F 36 2F    ate written 6/6/
01D070:  38 31 20 62 79 20 4D 69 6B 65 20 42 65 72 6E 73    81 by Mike Berns
01D080:  6F 6E 09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 09 2A    on.*/../*......*
01D090:  2F 0D 0A 2F 2A 09 63 68 65 63 6B 20 74 6F 20 73    /../*.check to s
01D0A0:  65 65 20 69 66 20 73 74 61 74 69 63 20 6C 6F 61    ee if static loa
01D0B0:  64 20 6F 72 20 73 74 6F 72 65 09 2A 2F 0D 0A 2F    d or store.*/../
01D0C0:  2A 09 09 09 09 09 09 2A 2F 0D 0A 6C 6F 61 64 73    *......*/..loads
01D0D0:  74 61 74 69 63 28 6C 76 61 6C 2C 6B 29 0D 0A 69    tatic(lval,k)..i
01D0E0:  6E 74 20 2A 6C 76 61 6C 3B 0D 0A 69 6E 74 20 6B    nt *lval;..int k
01D0F0:  3B 0D 0A 7B 0D 0A 09 63 68 61 72 20 2A 70 74 72    ;..{...char *ptr
01D100:  3B 0D 0A 0D 0A 09 70 74 72 3D 6C 76 61 6C 5B 30    ;.....ptr=lval[0
01D110:  5D 3B 0D 0A 09 69 66 20 28 70 74 72 5B 73 74 6F    ];...if (ptr[sto
01D120:  72 61 67 65 5D 20 3D 3D 20 73 74 61 74 69 6B 20    rage] == statik 
01D130:  26 26 20 6B 20 3D 3D 20 4E 4F 54 4C 4F 41 44 45    && k == NOTLOADE
01D140:  44 29 20 72 65 74 75 72 6E 20 54 52 55 45 3B 0D    D) return TRUE;.
01D150:  0A 09 65 6C 73 65 20 72 65 74 75 72 6E 20 46 41    ..else return FA
01D160:  4C 53 45 3B 0D 0A 09 7D 0D 0A 2F 2A 09 09 09 09    LSE;...}../*....
01D170:  09 20 20 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 20    .        */../* 
01D180:  20 20 20 20 20 64 61 74 65 20 77 72 69 74 74 65         date writte
01D190:  6E 20 34 2F 33 30 2F 38 31 20 42 79 20 4D 69 6B    n 4/30/81 By Mik
01D1A0:  65 20 42 65 72 6E 73 6F 6E 20 20 20 20 2A 2F 0D    e Bernson    */.
01D1B0:  0A 2F 2A 09 09 09 09 09 20 20 20 20 20 20 20 20    ./*.....        
01D1C0:  2A 2F 0D 0A 73 74 6F 72 65 28 6C 76 61 6C 2C 6B    */..store(lval,k
01D1D0:  29 0D 0A 69 6E 74 20 2A 6C 76 61 6C 3B 0D 0A 69    )..int *lval;..i
01D1E0:  6E 74 20 6B 3B 0D 0A 7B 0D 0A 20 20 20 20 20 20    nt k;..{..      
01D1F0:  20 20 63 68 61 72 20 2A 70 74 72 3B 0D 0A 09 70      char *ptr;...p
01D200:  09 20 20 20 20 20 20 20 20 7D 0D 0A 09 20 20 20    .        }...   
01D210:  20 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 20 20         }..        
01D220:  69 66 20 28 63 6F 6E 73 74 61 6E 74 28 6E 75 6D    if (constant(num
01D230:  29 29 20 7B 0D 0A 09 20 20 20 20 20 20 20 20 72    )) {...        r
01D240:  65 74 75 72 6E 20 30 3B 0D 0A 09 20 20 20 20 20    eturn 0;...     
01D250:  20 20 20 7D 0D 0A 20 20 20 20 20 20 20 20 65 6C       }..        el
01D260:  73 65 20 7B 0D 0A 09 20 20 20 20 20 20 20 20 65    se {...        e
01D270:  72 72 6F 72 28 22 69 6E 76 61 6C 69 64 20 65 78    rror("invalid ex
01D280:  70 72 65 73 73 69 6F 6E 22 29 3B 0D 0A 09 20 20    pression");...  
01D290:  20 20 20 20 20 20 6A 75 6E 6B 28 29 3B 0D 0A 09          junk();...
01D2A0:  20 20 20 20 20 20 20 20 72 65 74 75 72 6E 20 30            return 0
01D2B0:  3B 0D 0A 09 20 20 20 20 20 20 20 20 7D 0D 0A 20    ;...        }.. 
01D2C0:  20 20 20 7D 0D 0A 0D 0A 2F 2A 09 09 09 09 09 20       }..../*..... 
01D2D0:  20 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 20 20 20           */../*   
01D2E0:  20 20 20 77 72 69 74 74 65 6E 20 34 2F 32 33 2F       written 4/23/
01D2F0:  38 31 20 62 79 20 4D 69 6B 65 20 42 65 72 6E 73    81 by Mike Berns
01D300:  6F 6E 20 20 20 20 20 20 20 20 20 2A 2F 0D 0A 2F    on         */../
01D310:  2A 09 09 09 09 09 20 20 20 20 20 20 20 20 2A 2F    *.....        */
01D320:  0D 0A 73 69 7A 65 5F 61 64 6A 75 73 74 28 6C 76    ..size_adjust(lv
01D330:  61 6C 29 0D 0A 69 6E 74 20 2A 6C 76 61 6C 3B 0D    al)..int *lval;.
01D340:  0A 7B 0D 0A 20 20 20 20 20 20 20 20 69 6E 74 20    .{..        int 
01D350:  73 69 7A 65 3B 0D 0A 20 20 20 20 20 20 20 20 73    size;..        s
01D360:  69 7A 65 3D 64 61 74 61 5F 73 69 7A 65 28 6C 76    ize=data_size(lv
01D370:  61 6C 29 3B 0D 0A 20 20 20 20 20 20 20 20 69 66    al);..        if
01D380:  20 28 73 69 7A 65 20 3D 3D 20 31 29 20 72 65 74     (size == 1) ret
01D390:  75 72 6E 3B 0D 0A 20 20 20 20 20 20 20 20 69 66    urn;..        if
01D3A0:  20 28 73 69 7A 65 20 3D 3D 20 32 29 20 7B 0D 0A     (size == 2) {..
01D3B0:  09 20 20 20 20 20 20 20 20 64 6F 75 62 6C 65 72    .        doubler
01D3C0:  65 67 28 29 3B 0D 0A 09 20 20 20 20 20 20 20 20    eg();...        
01D3D0:  7D 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 0D 0A    }..        }....
01D3E0:  2F 2A 09 09 09 09 09 20 20 20 20 20 20 20 20 2A    /*.....        *
01D3F0:  2F 0D 0A 2F 2A 20 20 20 20 20 20 77 72 69 74 74    /../*      writt
01D400:  74 72 3D 6C 76 61 6C 5B 30 5D 3B 0D 0A 20 20 20    tr=lval[0];..   
01D410:  20 20 20 20 20 69 66 20 28 6B 3D 3D 30 29 20 72         if (k==0) r
01D420:  65 74 75 72 6E 3B 0D 0A 20 20 20 20 20 20 20 20    eturn;..        
01D430:  73 77 69 74 63 68 28 70 74 72 5B 73 74 6F 72 61    switch(ptr[stora
01D440:  67 65 5D 29 20 7B 0D 0A 0D 0A 09 20 20 20 20 20    ge]) {.....     
01D450:  20 20 20 2F 2A 20 6C 6F 63 61 6C 20 6F 72 20 61       /* local or a
01D460:  72 67 20 74 79 70 65 20 2A 2F 0D 0A 09 20 20 20    rg type */...   
01D470:  20 20 20 20 20 63 61 73 65 20 73 74 6B 6C 6F 63         case stkloc
01D480:  20 3A 0D 0A 09 20 20 20 20 20 20 20 20 63 61 73     :...        cas
01D490:  65 20 73 74 6B 61 72 67 20 3A 0D 0A 09 20 20 20    e stkarg :...   
01D4A0:  20 20 20 20 20 73 77 69 74 63 68 28 70 74 72 5B         switch(ptr[
01D4B0:  69 64 65 6E 74 5D 29 20 7B 0D 0A 0D 0A 09 09 20    ident]) {...... 
01D4C0:  20 20 20 20 20 20 20 2F 2A 20 69 64 65 6E 74 20           /* ident 
01D4D0:  3D 61 72 72 61 79 20 2A 2F 0D 0A 09 09 20 20 20    =array */....   
01D4E0:  20 20 20 20 20 63 61 73 65 20 61 72 72 61 79 3A         case array:
01D4F0:  0D 0A 09 09 09 20 20 20 20 20 20 20 20 69 66 20    .....        if 
01D500:  28 6C 76 61 6C 5B 31 5D 20 3D 3D 20 70 74 72 5B    (lval[1] == ptr[
01D510:  69 6E 64 63 6E 74 5D 29 0D 0A 09 09 09 09 09 69    indcnt]).......i
01D520:  66 20 28 6B 3D 3D 41 44 44 52 45 53 53 29 20 70    f (k==ADDRESS) p
01D530:  75 74 73 74 6B 28 70 74 72 5B 74 79 70 65 5D 29    utstk(ptr[type])
01D540:  3B 0D 0A 09 09 09 09 09 65 6C 73 65 20 70 75 74    ;.......else put
01D550:  6D 65 6D 5F 73 74 61 63 6B 28 6C 76 61 6C 2C 70    mem_stack(lval,p
01D560:  74 72 5B 74 79 70 65 5D 29 3B 0D 0A 09 09 09 20    tr[type]);..... 
01D570:  20 20 20 20 20 20 20 62 72 65 61 6B 3B 0D 0A 0D           break;...
01D580:  0A 09 09 20 20 20 20 20 20 20 20 2F 2A 20 69 64    ...        /* id
01D590:  65 6E 74 20 69 73 20 61 6E 20 70 6F 69 6E 74 65    ent is an pointe
01D5A0:  72 20 2A 2F 0D 0A 09 09 20 20 20 20 20 20 20 20    r */....        
01D5B0:  63 61 73 65 20 70 6F 69 6E 74 65 72 3A 0D 0A 09    case pointer:...
01D5C0:  09 09 20 20 20 20 20 20 20 20 69 66 20 28 6C 76    ..        if (lv
01D5D0:  61 6C 5B 31 5D 20 3D 3D 20 70 74 72 5B 69 6E 64    al[1] == ptr[ind
01D5E0:  63 6E 74 5D 29 0D 0A 09 09 09 09 09 69 66 20 28    cnt]).......if (
01D5F0:  6B 3D 3D 41 44 44 52 45 53 53 29 20 70 75 74 73    k==ADDRESS) puts
01D600:  65 6E 20 34 2F 32 33 2F 38 31 20 42 79 20 4D 69    en 4/23/81 By Mi
01D610:  6B 65 20 42 65 72 6E 73 6F 6E 20 20 20 20 20 20    ke Bernson      
01D620:  20 20 20 2A 2F 0D 0A 2F 2A 09 09 09 09 09 20 20       */../*.....  
01D630:  20 20 20 20 20 20 2A 2F 0D 0A 64 61 74 61 5F 73          */..data_s
01D640:  69 7A 65 28 6C 76 61 6C 29 0D 0A 69 6E 74 20 2A    ize(lval)..int *
01D650:  6C 76 61 6C 3B 0D 0A 7B 0D 0A 20 20 20 20 20 20    lval;..{..      
01D660:  20 20 63 68 61 72 20 2A 70 74 72 3B 0D 0A 20 20      char *ptr;..  
01D670:  20 20 20 20 20 20 69 66 20 28 21 28 70 74 72 3D          if (!(ptr=
01D680:  6C 76 61 6C 5B 30 5D 29 29 20 72 65 74 75 72 6E    lval[0])) return
01D690:  20 30 3B 0D 0A 20 20 20 20 20 20 20 20 73 77 69     0;..        swi
01D6A0:  74 63 68 28 70 74 72 5B 69 64 65 6E 74 5D 29 20    tch(ptr[ident]) 
01D6B0:  7B 0D 0A 0D 0A 09 20 20 20 20 20 20 20 20 2F 2A    {.....        /*
01D6C0:  20 61 72 72 61 79 20 6F 66 20 65 6C 65 6D 65 6E     array of elemen
01D6D0:  74 73 20 2A 2F 0D 0A 09 20 20 20 20 20 20 20 20    ts */...        
01D6E0:  63 61 73 65 20 61 72 72 61 79 20 3A 0D 0A 09 09    case array :....
01D6F0:  20 20 20 20 20 20 20 20 73 77 69 74 63 68 28 70            switch(p
01D700:  74 72 5B 74 79 70 65 5D 29 20 7B 0D 0A 0D 0A 09    tr[type]) {.....
01D710:  09 09 20 20 20 20 20 20 20 20 2F 2A 20 63 68 61    ..        /* cha
01D720:  72 20 74 79 70 65 20 2A 2F 0D 0A 09 09 09 20 20    r type */.....  
01D730:  20 20 20 20 20 20 63 61 73 65 20 63 63 68 61 72          case cchar
01D740:  3A 0D 0A 09 09 09 09 20 20 20 20 20 20 20 20 72    :......        r
01D750:  65 74 75 72 6E 20 6C 63 68 61 72 3B 0D 0A 0D 0A    eturn lchar;....
01D760:  09 09 09 20 20 20 20 20 20 20 20 2F 2A 20 69 6E    ...        /* in
01D770:  74 20 74 79 70 65 20 2A 2F 0D 0A 09 09 09 20 20    t type */.....  
01D780:  20 20 20 20 20 20 63 61 73 65 20 63 69 6E 74 20          case cint 
01D790:  3A 0D 0A 09 09 09 09 20 20 20 20 20 20 20 20 72    :......        r
01D7A0:  65 74 75 72 6E 20 6C 69 6E 74 3B 0D 0A 09 09 09    eturn lint;.....
01D7B0:  20 20 20 20 20 20 20 20 7D 0D 0A 0D 0A 09 20 20            }.....  
01D7C0:  20 20 20 20 20 20 2F 2A 20 70 6F 69 6E 74 65 72          /* pointer
01D7D0:  20 74 6F 20 65 6C 65 6D 65 6E 74 73 20 2A 2F 0D     to elements */.
01D7E0:  0A 09 20 20 20 20 20 20 20 20 63 61 73 65 20 70    ..        case p
01D7F0:  6F 69 6E 74 65 72 20 3A 0D 0A 09 09 20 20 20 20    ointer :....    
01D800:  74 6B 28 70 74 72 5B 74 79 70 65 5D 29 3B 0D 0A    tk(ptr[type]);..
01D810:  09 09 09 09 09 65 6C 73 65 20 70 75 74 6D 65 6D    .....else putmem
01D820:  5F 73 74 61 63 6B 28 6C 76 61 6C 2C 70 74 72 5B    _stack(lval,ptr[
01D830:  74 79 70 65 5D 29 3B 0D 0A 09 09 09 20 20 20 20    type]);.....    
01D840:  20 20 20 20 65 6C 73 65 09 69 66 20 28 6B 3D 3D        else.if (k==
01D850:  41 44 44 52 45 53 53 29 20 70 75 74 73 74 6B 28    ADDRESS) putstk(
01D860:  63 69 6E 74 29 3B 0D 0A 09 09 09 09 09 65 6C 73    cint);.......els
01D870:  65 20 70 75 74 6D 65 6D 5F 73 74 61 63 6B 28 6C    e putmem_stack(l
01D880:  76 61 6C 2C 63 69 6E 74 29 3B 0D 0A 09 09 09 20    val,cint);..... 
01D890:  20 20 20 20 20 20 20 62 72 65 61 6B 3B 0D 0A 0D           break;...
01D8A0:  0A 09 09 20 20 20 20 20 20 20 20 2F 2A 20 69 64    ...        /* id
01D8B0:  65 6E 74 20 69 73 20 61 20 76 61 72 69 61 62 6C    ent is a variabl
01D8C0:  65 20 2A 2F 0D 0A 09 09 20 20 20 20 20 20 20 20    e */....        
01D8D0:  63 61 73 65 20 76 61 72 69 61 62 6C 65 20 3A 0D    case variable :.
01D8E0:  0A 09 09 09 20 20 20 20 20 20 20 20 69 66 20 28    ....        if (
01D8F0:  6B 3D 3D 41 44 44 52 45 53 53 29 20 70 75 74 73    k==ADDRESS) puts
01D900:  74 6B 28 70 74 72 5B 74 79 70 65 5D 29 3B 0D 0A    tk(ptr[type]);..
01D910:  09 09 09 09 65 6C 73 65 20 70 75 74 6D 65 6D 5F    ....else putmem_
01D920:  73 74 61 63 6B 28 6C 76 61 6C 2C 70 74 72 5B 74    stack(lval,ptr[t
01D930:  79 70 65 5D 29 3B 0D 0A 09 09 09 20 20 20 20 20    ype]);.....     
01D940:  20 20 20 62 72 65 61 6B 3B 0D 0A 09 09 20 20 20       break;....   
01D950:  20 20 20 20 20 7D 0D 0A 09 09 20 20 20 20 20 20         }....      
01D960:  20 20 62 72 65 61 6B 3B 0D 0A 0D 0A 09 20 20 20      break;.....   
01D970:  20 20 20 20 20 2F 2A 20 73 74 61 74 69 63 20 76         /* static v
01D980:  61 72 62 6C 65 73 20 2A 2F 0D 0A 09 20 20 20 20    arbles */...    
01D990:  20 20 20 20 63 61 73 65 20 73 74 61 74 69 6B 20        case statik 
01D9A0:  3A 0D 0A 09 09 20 20 20 20 20 20 20 20 73 77 69    :....        swi
01D9B0:  74 63 68 28 70 74 72 5B 69 64 65 6E 74 5D 29 20    tch(ptr[ident]) 
01D9C0:  7B 0D 0A 0D 0A 09 09 20 20 20 20 20 20 20 20 2F    {......        /
01D9D0:  2A 20 61 72 72 61 79 20 2A 2F 0D 0A 09 09 20 20    * array */....  
01D9E0:  20 20 20 20 20 20 63 61 73 65 20 61 72 72 61 79          case array
01D9F0:  20 3A 0D 0A 09 09 09 20 20 20 20 20 20 20 20 69     :.....        i
01DA00:  20 20 20 20 69 66 20 28 6C 76 61 6C 5B 31 5D 20        if (lval[1] 
01DA10:  3C 20 70 74 72 5B 69 6E 64 63 6E 74 5D 20 26 26    < ptr[indcnt] &&
01DA20:  20 70 74 72 5B 69 6E 64 63 6E 74 5D 20 3E 20 31     ptr[indcnt] > 1
01DA30:  29 0D 0A 09 09 09 20 20 20 20 20 20 20 20 72 65    ).....        re
01DA40:  74 75 72 6E 20 6C 70 6F 69 6E 74 3B 0D 0A 09 09    turn lpoint;....
01DA50:  20 20 20 20 20 20 20 20 65 6C 73 65 20 73 77 69            else swi
01DA60:  74 63 68 28 70 74 72 5B 74 79 70 65 5D 29 20 7B    tch(ptr[type]) {
01DA70:  0D 0A 0D 0A 09 09 09 20 20 20 20 20 20 20 20 2F    .......        /
01DA80:  2A 20 74 79 70 65 20 63 68 61 72 20 2A 2F 0D 0A    * type char */..
01DA90:  09 09 09 20 20 20 20 20 20 20 20 63 61 73 65 20    ...        case 
01DAA0:  63 63 68 61 72 20 3A 0D 0A 09 09 09 09 20 20 20    cchar :......   
01DAB0:  20 20 20 20 20 72 65 74 75 72 6E 20 6C 63 68 61         return lcha
01DAC0:  72 3B 0D 0A 0D 0A 09 09 09 20 20 20 20 20 20 20    r;.......       
01DAD0:  20 2F 2A 20 74 79 70 65 20 69 6E 74 20 2A 2F 0D     /* type int */.
01DAE0:  0A 09 09 09 20 20 20 20 20 20 20 20 63 61 73 65    ....        case
01DAF0:  20 63 69 6E 74 3A 0D 0A 09 09 09 09 20 20 20 20     cint:......    
01DB00:  20 20 20 20 72 65 74 75 72 6E 20 6C 69 6E 74 3B        return lint;
01DB10:  0D 0A 0D 0A 09 09 09 20 20 20 20 20 20 20 20 7D    .......        }
01DB20:  0D 0A 09 09 2F 2A 20 6A 75 73 74 20 61 20 70 6C    ..../* just a pl
01DB30:  61 69 6E 20 76 61 72 69 61 62 6C 65 20 2A 2F 0D    ain variable */.
01DB40:  0A 09 09 63 61 73 65 20 76 61 72 69 61 62 6C 65    ...case variable
01DB50:  20 3A 0D 0A 09 09 09 72 65 74 75 72 6E 20 31 3B     :.....return 1;
01DB60:  0D 0A 09 20 20 20 20 20 20 20 20 7D 0D 0A 20 20    ...        }..  
01DB70:  20 20 20 20 20 20 7D 0D 0A 2F 2A 09 09 09 09 09          }../*.....
01DB80:  20 20 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 20 20            */../*  
01DB90:  20 20 20 20 77 72 69 74 74 65 6E 20 34 2F 32 33        written 4/23
01DBA0:  2F 38 31 20 42 79 20 4D 69 6B 65 20 42 65 72 6E    /81 By Mike Bern
01DBB0:  73 6F 6E 20 20 20 20 20 20 20 20 20 2A 2F 0D 0A    son         */..
01DBC0:  2F 2A 09 09 09 09 09 20 20 20 20 20 20 20 20 2A    /*.....        *
01DBD0:  2F 0D 0A 61 64 64 72 65 73 73 28 6C 76 61 6C 2C    /..address(lval,
01DBE0:  6B 29 0D 0A 69 6E 74 20 2A 6C 76 61 6C 3B 0D 0A    k)..int *lval;..
01DBF0:  7B 0D 0A 20 20 20 20 20 20 20 20 63 68 61 72 20    {..        char 
01DC00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
01DC10:  19 00 01 00 02 09 52 E5 19 00 C1 02 00 00 00 02    ......R.........
01DC20:  19 00 C6 02 00 00 00 02 19 00 C2 02 00 00 00 02    ................
01DC30:  19 00 C7 02 00 00 00 02 19 00 C3 02 00 00 00 02    ................
01DC40:  19 00 C8 02 00 00 00 02 19 00 C4 02 00 00 00 02    ................
01DC50:  19 00 C9 02 00 00 00 02 19 00 C5 02 00 00 00 02    ................
01DC60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01DC70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01DC80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01DC90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01DCA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01DCB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01DCC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01DCD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01DCE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01DCF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01DD00:  66 20 28 6C 76 61 6C 5B 31 5D 20 3D 3D 20 70 74    f (lval[1] == pt
01DD10:  72 5B 69 6E 64 63 6E 74 5D 29 0D 0A 09 09 09 09    r[indcnt])......
01DD20:  20 20 20 20 20 20 20 20 69 66 20 28 6B 3D 3D 31            if (k==1
01DD30:  29 20 70 75 74 73 74 6B 28 70 74 72 5B 74 79 70    ) putstk(ptr[typ
01DD40:  65 5D 29 3B 0D 0A 09 09 09 09 20 20 20 20 20 20    e]);......      
01DD50:  20 20 65 6C 73 65 20 70 75 74 6D 65 6D 28 70 74      else putmem(pt
01DD60:  72 2B 6E 61 6D 65 2C 70 74 72 5B 74 79 70 65 5D    r+name,ptr[type]
01DD70:  2C 0D 0A 09 09 09 09 09 20 20 20 20 20 20 20 20    ,.......        
01DD80:  6C 76 61 6C 5B 32 5D 29 3B 0D 0A 09 09 09 20 20    lval[2]);.....  
01DD90:  20 20 20 20 20 20 62 72 65 61 6B 3B 0D 0A 0D 0A          break;....
01DDA0:  09 09 20 20 20 20 20 20 20 20 2F 2A 20 70 6F 69    ..        /* poi
01DDB0:  6E 74 65 72 20 2A 2F 0D 0A 09 09 20 20 20 20 20    nter */....     
01DDC0:  20 20 20 63 61 73 65 20 70 6F 69 6E 74 65 72 3A       case pointer:
01DDD0:  0D 0A 09 09 09 20 20 20 20 20 20 20 20 69 66 20    .....        if 
01DDE0:  28 6C 76 61 6C 5B 31 5D 20 3D 3D 20 70 74 72 5B    (lval[1] == ptr[
01DDF0:  69 6E 64 63 6E 74 5D 29 0D 0A 09 09 09 09 20 20    indcnt])......  
01DE00:  20 20 20 20 20 20 69 66 20 28 6B 3D 3D 31 29 20          if (k==1) 
01DE10:  70 75 74 73 74 6B 28 70 74 72 5B 74 79 70 65 5D    putstk(ptr[type]
01DE20:  29 3B 0D 0A 09 09 09 09 20 20 20 20 20 20 20 20    );......        
01DE30:  65 6C 73 65 20 70 75 74 6D 65 6D 28 70 74 72 2B    else putmem(ptr+
01DE40:  6E 61 6D 65 2C 70 74 72 5B 74 79 70 65 5D 2C 6C    name,ptr[type],l
01DE50:  76 61 6C 5B 31 5D 29 3B 0D 0A 09 09 09 20 20 20    val[1]);.....   
01DE60:  20 20 20 20 20 65 6C 73 65 0D 0A 09 09 09 09 20         else...... 
01DE70:  20 20 20 20 20 20 20 69 66 20 28 6B 3D 3D 31 29           if (k==1)
01DE80:  20 70 75 74 73 74 6B 28 63 69 6E 74 29 3B 0D 0A     putstk(cint);..
01DE90:  09 09 09 09 20 20 20 20 20 20 20 20 65 6C 73 65    ....        else
01DEA0:  20 70 75 74 6D 65 6D 28 70 74 72 2B 6E 61 6D 65     putmem(ptr+name
01DEB0:  2C 63 69 6E 74 2C 30 29 3B 0D 0A 09 09 09 20 20    ,cint,0);.....  
01DEC0:  20 20 20 20 20 20 62 72 65 61 6B 3B 0D 0A 0D 0A          break;....
01DED0:  09 09 20 20 20 20 20 20 20 20 2F 2A 20 76 61 72    ..        /* var
01DEE0:  69 61 62 6C 65 20 2A 2F 0D 0A 09 09 20 20 20 20    iable */....    
01DEF0:  20 20 20 20 63 61 73 65 20 76 61 72 69 61 62 6C        case variabl
01DF00:  65 74 6D 65 6D 28 70 74 72 2B 6E 61 6D 65 2C 70    etmem(ptr+name,p
01DF10:  74 72 5B 74 79 70 65 5D 2C 30 29 3B 0D 0A 09 09    tr[type],0);....
01DF20:  09 20 20 20 20 20 20 20 20 62 72 65 61 6B 3B 0D    .        break;.
01DF30:  0A 09 09 20 20 20 20 20 20 20 20 7D 0D 0A 09 20    ...        }... 
01DF40:  20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 20           }..      
01DF50:  20 20 7D 0D 0A 65 71 75 61 6C 5F 65 78 70 28 6C      }..equal_exp(l
01DF60:  76 61 6C 2C 6B 29 0D 0A 69 6E 74 20 2A 6C 76 61    val,k)..int *lva
01DF70:  6C 3B 0D 0A 69 6E 74 20 6B 3B 0D 0A 7B 0D 0A 20    l;..int k;..{.. 
01DF80:  20 20 20 20 20 20 20 63 68 61 72 20 2A 70 74 72           char *ptr
01DF90:  3B 0D 0A 20 20 20 20 20 20 20 20 69 6E 74 20 20    ;..        int  
01DFA0:  6C 76 61 6C 32 5B 6C 76 61 6C 73 69 7A 65 5D 3B    lval2[lvalsize];
01DFB0:  0D 0A 09 69 6E 74 20 73 74 61 74 75 73 3B 0D 0A    ...int status;..
01DFC0:  0D 0A 20 20 20 20 20 20 20 20 70 74 72 3D 6C 76    ..        ptr=lv
01DFD0:  61 6C 5B 30 5D 3B 0D 0A 0D 0A 20 20 20 20 20 20    al[0];....      
01DFE0:  20 20 2F 2A 20 63 68 65 63 6B 20 74 6F 20 73 65      /* check to se
01DFF0:  65 20 69 66 20 76 61 69 6C 64 20 6C 76 61 6C 20    e if vaild lval 
01E000:  2A 2F 0D 0A 20 20 20 20 20 20 20 20 69 66 20 28    */..        if (
01E010:  28 70 74 72 5B 69 64 65 6E 74 5D 3D 3D 61 72 72    (ptr[ident]==arr
01E020:  61 79 20 26 26 20 70 74 72 5B 69 6E 64 63 6E 74    ay && ptr[indcnt
01E030:  5D 20 21 3D 20 6C 76 61 6C 5B 31 5D 29 20 7C 7C    ] != lval[1]) ||
01E040:  0D 0A 09 20 20 20 20 20 20 20 20 6B 3D 3D 30 20    ...        k==0 
01E050:  7C 7C 20 6C 76 61 6C 5B 30 5D 20 3D 3D 20 30 29    || lval[0] == 0)
01E060:  20 7B 0D 0A 09 20 20 20 20 20 20 20 20 6E 65 65     {...        nee
01E070:  64 6C 76 61 6C 28 29 3B 0D 0A 09 20 20 20 20 20    dlval();...     
01E080:  20 20 20 72 65 74 75 72 6E 3B 0D 0A 09 20 20 20       return;...   
01E090:  20 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 20 20         }..        
01E0A0:  61 64 64 72 65 73 73 28 6C 76 61 6C 2C 6B 29 3B    address(lval,k);
01E0B0:  0D 0A 20 20 20 20 20 20 20 20 70 75 73 68 28 29    ..        push()
01E0C0:  3B 0D 0A 20 20 20 20 20 20 20 20 72 76 61 6C 75    ;..        rvalu
01E0D0:  65 28 6C 76 61 6C 2C 31 29 3B 0D 0A 09 70 75 73    e(lval,1);...pus
01E0E0:  68 28 29 3B 0D 0A 20 20 20 20 20 20 20 20 72 76    h();..        rv
01E0F0:  61 6C 75 65 28 6C 76 61 6C 32 2C 68 65 69 72 31    alue(lval2,heir1
01E100:  65 20 3A 0D 0A 09 09 09 20 20 20 20 20 20 20 20    e :.....        
01E110:  69 66 20 28 6B 3D 3D 31 29 20 70 75 74 73 74 6B    if (k==1) putstk
01E120:  28 70 74 72 5B 74 79 70 65 5D 29 3B 0D 0A 09 09    (ptr[type]);....
01E130:  09 20 20 20 20 20 20 20 20 65 6C 73 65 20 70 75    .        else pu
01E140:  74 6D 65 6D 28 70 74 72 2B 6E 61 6D 65 2C 70 74    tmem(ptr+name,pt
01E150:  72 5B 74 79 70 65 5D 2C 30 29 3B 0D 0A 09 09 09    r[type],0);.....
01E160:  20 20 20 20 20 20 20 20 62 72 65 61 6B 3B 0D 0A            break;..
01E170:  09 09 20 20 20 20 20 20 20 20 7D 0D 0A 09 20 20    ..        }...  
01E180:  20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 20          }..       
01E190:  20 7D 0D 0A 2F 2A 09 09 09 09 09 20 20 20 20 20     }../*.....     
01E1A0:  20 20 20 2A 2F 0D 0A 2F 2A 20 20 20 20 20 20 77       */../*      w
01E1B0:  72 69 74 74 65 6E 20 34 2F 32 34 2F 38 31 20 42    ritten 4/24/81 B
01E1C0:  79 20 4D 69 6B 65 20 42 65 72 6E 73 6F 6E 20 20    y Mike Bernson  
01E1D0:  20 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 09 09 09           */../*...
01E1E0:  09 09 20 20 20 20 20 20 20 20 2A 2F 0D 0A 72 76    ..        */..rv
01E1F0:  61 6C 75 65 28 6C 76 61 6C 2C 6B 29 0D 0A 69 6E    alue(lval,k)..in
01E200:  74 20 2A 6C 76 61 6C 3B 0D 0A 69 6E 74 20 6B 3B    t *lval;..int k;
01E210:  0D 0A 7B 0D 0A 20 20 20 20 20 20 20 20 63 68 61    ..{..        cha
01E220:  72 20 2A 70 74 72 3B 0D 0A 20 20 20 20 20 20 20    r *ptr;..       
01E230:  20 70 74 72 3D 6C 76 61 6C 5B 30 5D 3B 0D 0A 20     ptr=lval[0];.. 
01E240:  20 20 20 20 20 20 20 69 66 20 28 6B 3D 3D 30 29           if (k==0)
01E250:  20 72 65 74 75 72 6E 3B 0D 0A 20 20 20 20 20 20     return;..      
01E260:  20 20 73 77 69 74 63 68 28 70 74 72 5B 73 74 6F      switch(ptr[sto
01E270:  72 61 67 65 5D 29 20 7B 0D 0A 0D 0A 09 20 20 20    rage]) {.....   
01E280:  20 20 20 20 20 2F 2A 20 6C 6F 63 61 6C 20 6F 72         /* local or
01E290:  20 61 72 67 20 74 79 70 65 20 2A 2F 0D 0A 09 20     arg type */... 
01E2A0:  20 20 20 20 20 20 20 63 61 73 65 20 73 74 6B 6C           case stkl
01E2B0:  6F 63 20 3A 0D 0A 09 20 20 20 20 20 20 20 20 63    oc :...        c
01E2C0:  61 73 65 20 73 74 6B 61 72 67 20 3A 0D 0A 09 20    ase stkarg :... 
01E2D0:  20 20 20 20 20 20 20 73 77 69 74 63 68 28 70 74           switch(pt
01E2E0:  72 5B 69 64 65 6E 74 5D 29 20 7B 0D 0A 0D 0A 09    r[ident]) {.....
01E2F0:  09 20 20 20 20 20 20 20 20 2F 2A 20 69 64 65 6E    .        /* iden
01E300:  28 6C 76 61 6C 32 2C 26 73 74 61 74 75 73 29 29    (lval2,&status))
01E310:  3B 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 0D 0A    ;..        }....
01E320:  0D 0A 2F 2A 09 09 09 09 09 20 20 20 20 20 20 20    ../*.....       
01E330:  20 2A 2F 0D 0A 2F 2A 20 20 20 20 20 20 77 72 69     */../*      wri
01E340:  74 74 65 6E 20 34 2F 39 2F 38 31 20 42 79 20 4D    tten 4/9/81 By M
01E350:  69 6B 65 20 42 65 72 6E 73 6F 6E 20 20 20 20 20    ike Bernson     
01E360:  20 20 20 20 20 2A 2F 0D 0A 2F 2A 09 09 09 09 09         */../*.....
01E370:  20 20 20 20 20 20 20 20 2A 2F 0D 0A 65 71 75 61            */..equa
01E380:  6C 28 6C 76 61 6C 2C 6B 29 0D 0A 69 6E 74 20 6C    l(lval,k)..int l
01E390:  76 61 6C 5B 5D 3B 0D 0A 69 6E 74 20 6B 3B 0D 0A    val[];..int k;..
01E3A0:  7B 0D 0A 20 20 20 20 20 20 20 20 63 68 61 72 20    {..        char 
01E3B0:  2A 70 74 72 3B 0D 0A 20 20 20 20 20 20 20 20 69    *ptr;..        i
01E3C0:  6E 74 20 6C 76 61 6C 32 5B 6C 76 61 6C 73 69 7A    nt lval2[lvalsiz
01E3D0:  65 5D 3B 0D 0A 09 69 6E 74 20 73 74 61 74 75 73    e];...int status
01E3E0:  3B 0D 0A 0D 0A 20 20 20 20 20 20 20 20 70 74 72    ;....        ptr
01E3F0:  3D 6C 76 61 6C 5B 30 5D 3B 0D 0A 0D 0A 20 20 20    =lval[0];....   
01E400:  20 20 20 20 20 2F 2A 20 63 68 65 63 6B 20 74 6F         /* check to
01E410:  20 73 65 65 20 74 68 61 74 20 69 73 20 65 78 70     see that is exp
01E420:  72 65 73 73 74 69 6F 6E 20 69 73 20 61 72 72 61    resstion is arra
01E430:  79 20 6D 75 73 74 20 62 65 20 65 6C 65 6D 65 6E    y must be elemen
01E440:  74 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 69 66    t */..        if
01E450:  20 28 70 74 72 5B 69 64 65 6E 74 5D 20 3D 3D 20     (ptr[ident] == 
01E460:  61 72 72 61 79 20 26 26 20 70 74 72 5B 69 6E 64    array && ptr[ind
01E470:  63 6E 74 5D 20 21 3D 20 6C 76 61 6C 5B 31 5D 29    cnt] != lval[1])
01E480:  20 7B 0D 0A 09 09 20 20 20 20 20 20 20 20 6E 65     {....        ne
01E490:  65 64 6C 76 61 6C 28 29 3B 0D 0A 09 09 20 20 20    edlval();....   
01E4A0:  20 20 20 20 20 72 65 74 75 72 6E 3B 0D 0A 09 09         return;....
01E4B0:  20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20            }..     
01E4C0:  20 20 20 73 77 69 74 63 68 28 6B 29 20 7B 0D 0A       switch(k) {..
01E4D0:  0D 0A 09 20 20 20 20 20 20 20 20 2F 2A 20 64 61    ...        /* da
01E4E0:  74 61 20 69 73 20 61 20 63 6F 6E 73 74 61 6E 74    ta is a constant
01E4F0:  20 6F 72 20 76 61 6C 75 65 20 2A 2F 0D 0A 09 20     or value */... 
01E500:  74 20 3D 61 72 72 61 79 20 2A 2F 0D 0A 09 09 20    t =array */.... 
01E510:  20 20 20 20 20 20 20 63 61 73 65 20 61 72 72 61           case arra
01E520:  79 3A 0D 0A 09 09 09 20 20 20 20 20 20 20 20 69    y:.....        i
01E530:  66 20 28 6C 76 61 6C 5B 31 5D 20 3D 3D 20 70 74    f (lval[1] == pt
01E540:  72 5B 69 6E 64 63 6E 74 5D 29 0D 0A 09 09 09 09    r[indcnt])......
01E550:  09 69 66 20 28 6B 3D 3D 41 44 44 52 45 53 53 29    .if (k==ADDRESS)
01E560:  20 69 6E 64 69 72 65 63 74 28 70 74 72 5B 74 79     indirect(ptr[ty
01E570:  70 65 5D 29 3B 0D 0A 09 09 09 09 09 65 6C 73 65    pe]);.......else
01E580:  20 67 65 74 6D 65 6D 5F 73 74 61 63 6B 28 6C 76     getmem_stack(lv
01E590:  61 6C 2C 70 74 72 5B 74 79 70 65 5D 29 3B 0D 0A    al,ptr[type]);..
01E5A0:  09 09 09 09 65 6C 73 65 20 09 61 64 64 72 65 73    ....else .addres
01E5B0:  73 28 6C 76 61 6C 2C 6B 29 3B 0D 0A 09 09 09 20    s(lval,k);..... 
01E5C0:  20 20 20 20 20 20 20 62 72 65 61 6B 3B 0D 0A 0D           break;...
01E5D0:  0A 09 09 20 20 20 20 20 20 20 20 2F 2A 20 69 64    ...        /* id
01E5E0:  65 6E 74 20 69 73 20 61 6E 20 70 6F 69 6E 74 65    ent is an pointe
01E5F0:  72 20 2A 2F 0D 0A 09 09 20 20 20 20 20 20 20 20    r */....        
01E600:  63 61 73 65 20 70 6F 69 6E 74 65 72 3A 0D 0A 09    case pointer:...
01E610:  09 09 20 20 20 20 20 20 20 20 69 66 20 28 6C 76    ..        if (lv
01E620:  61 6C 5B 31 5D 20 3D 3D 20 70 74 72 5B 69 6E 64    al[1] == ptr[ind
01E630:  63 6E 74 5D 29 0D 0A 09 09 09 09 09 69 66 20 28    cnt]).......if (
01E640:  6B 3D 3D 41 44 44 52 45 53 53 29 20 69 6E 64 69    k==ADDRESS) indi
01E650:  72 65 63 74 28 70 74 72 5B 74 79 70 65 5D 29 3B    rect(ptr[type]);
01E660:  0D 0A 09 09 09 09 09 65 6C 73 65 20 67 65 74 6D    .......else getm
01E670:  65 6D 5F 73 74 61 63 6B 28 6C 76 61 6C 2C 70 74    em_stack(lval,pt
01E680:  72 5B 74 79 70 65 5D 29 3B 0D 0A 09 09 09 20 20    r[type]);.....  
01E690:  20 20 20 20 20 20 65 6C 73 65 20 20 20 20 69 66          else    if
01E6A0:  20 28 6B 3D 3D 41 44 44 52 45 53 53 29 20 69 6E     (k==ADDRESS) in
01E6B0:  64 69 72 65 63 74 28 63 69 6E 74 29 3B 0D 0A 09    direct(cint);...
01E6C0:  09 09 09 09 65 6C 73 65 20 67 65 74 6D 65 6D 5F    ....else getmem_
01E6D0:  73 74 61 63 6B 28 6C 76 61 6C 2C 63 69 6E 74 29    stack(lval,cint)
01E6E0:  3B 0D 0A 09 09 09 20 20 20 20 20 20 20 20 62 72    ;.....        br
01E6F0:  65 61 6B 3B 0D 0A 0D 0A 09 09 20 20 20 20 20 20    eak;......      
01E700:  20 20 20 20 20 20 20 63 61 73 65 20 30 20 3A 0D           case 0 :.
01E710:  0A 09 09 20 20 20 20 20 20 20 20 6E 65 65 64 6C    ...        needl
01E720:  76 61 6C 28 29 3B 0D 0A 09 09 20 20 20 20 20 20    val();....      
01E730:  20 20 62 72 65 61 6B 3B 0D 0A 0D 0A 09 20 20 20      break;.....   
01E740:  20 20 20 20 20 2F 2A 20 61 64 64 72 65 73 73 20         /* address 
01E750:  6F 66 20 76 61 72 69 61 62 6C 65 20 69 73 20 6F    of variable is o
01E760:  6E 20 73 74 61 63 6B 20 2A 2F 0D 0A 09 20 20 20    n stack */...   
01E770:  20 20 20 20 20 63 61 73 65 20 31 20 3A 0D 0A 09         case 1 :...
01E780:  09 20 20 20 20 20 20 20 20 70 75 73 68 28 29 3B    .        push();
01E790:  0D 0A 09 09 20 20 20 20 20 20 20 20 62 72 65 61    ....        brea
01E7A0:  6B 3B 0D 0A 0D 0A 09 20 20 20 20 20 20 20 20 2F    k;.....        /
01E7B0:  2A 20 6E 6F 74 68 69 6E 67 20 6F 66 20 76 61 72    * nothing of var
01E7C0:  69 61 62 6C 65 20 69 73 20 6F 6E 20 73 74 61 63    iable is on stac
01E7D0:  6B 20 2A 2F 0D 0A 09 20 20 20 20 20 20 20 20 63    k */...        c
01E7E0:  61 73 65 20 32 20 3A 0D 0A 09 09 20 20 20 20 20    ase 2 :....     
01E7F0:  20 20 20 62 72 65 61 6B 3B 0D 0A 09 20 20 20 20       break;...    
01E800:  20 20 20 20 7D 0D 0A 20 20 20 20 20 20 20 20 72        }..        r
01E810:  76 61 6C 75 65 28 6C 76 61 6C 32 2C 68 65 69 72    value(lval2,heir
01E820:  31 28 6C 76 61 6C 32 2C 26 73 74 61 74 75 73 29    1(lval2,&status)
01E830:  29 3B 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 0D    );..        }...
01E840:  0A 74 65 73 74 28 6C 61 62 65 6C 29 0D 0A 69 6E    .test(label)..in
01E850:  74 20 6C 61 62 65 6C 3B 0D 0A 7B 0D 0A 09 69 6E    t label;..{...in
01E860:  74 20 73 74 61 74 75 73 3B 0D 0A 0D 0A 20 20 20    t status;....   
01E870:  20 20 20 20 20 6E 65 65 64 62 72 61 63 6B 28 22         needbrack("
01E880:  28 22 29 3B 0D 0A 20 20 20 20 20 20 20 20 73 74    (");..        st
01E890:  61 74 75 73 3D 65 78 70 72 65 73 73 69 6F 6E 28    atus=expression(
01E8A0:  29 3B 0D 0A 20 20 20 20 20 20 20 20 6E 65 65 64    );..        need
01E8B0:  62 72 61 63 6B 28 22 29 22 29 3B 0D 0A 20 20 20    brack(")");..   
01E8C0:  20 20 20 20 20 74 65 73 74 6A 75 6D 70 28 6C 61         testjump(la
01E8D0:  62 65 6C 2C 73 74 61 74 75 73 29 3B 0D 0A 20 20    bel,status);..  
01E8E0:  20 20 20 20 20 20 7D 0D 0A 2F 2A 09 09 09 09 20          }../*.... 
01E8F0:  20 20 20 20 20 20 20 2A 2F 0D 0A 2F 2A 20 20 20           */../*   
01E900:  20 20 2F 2A 20 69 64 65 6E 74 20 69 73 20 61 20      /* ident is a 
01E910:  76 61 72 69 61 62 6C 65 20 2A 2F 0D 0A 09 09 20    variable */.... 
01E920:  20 20 20 20 20 20 20 63 61 73 65 20 76 61 72 69           case vari
01E930:  61 62 6C 65 20 3A 0D 0A 09 09 09 20 20 20 20 20    able :.....     
01E940:  20 20 20 69 66 20 28 6B 3D 3D 41 44 44 52 45 53       if (k==ADDRES
01E950:  53 29 20 69 6E 64 69 72 65 63 74 28 70 74 72 5B    S) indirect(ptr[
01E960:  74 79 70 65 5D 29 3B 0D 0A 09 09 09 09 65 6C 73    type]);......els
01E970:  65 20 67 65 74 6D 65 6D 5F 73 74 61 63 6B 28 6C    e getmem_stack(l
01E980:  76 61 6C 2C 70 74 72 5B 74 79 70 65 5D 29 3B 0D    val,ptr[type]);.
01E990:  0A 09 09 09 20 20 20 20 20 20 20 20 62 72 65 61    ....        brea
01E9A0:  6B 3B 0D 0A 09 09 20 20 20 20 20 20 20 20 7D 0D    k;....        }.
01E9B0:  0A 09 09 20 20 20 20 20 20 20 20 62 72 65 61 6B    ...        break
01E9C0:  3B 0D 0A 0D 0A 09 20 20 20 20 20 20 20 20 2F 2A    ;.....        /*
01E9D0:  20 73 74 61 74 69 63 20 76 61 72 62 6C 65 73 20     static varbles 
01E9E0:  2A 2F 0D 0A 09 20 20 20 20 20 20 20 20 63 61 73    */...        cas
01E9F0:  65 20 73 74 61 74 69 6B 20 3A 0D 0A 09 09 20 20    e statik :....  
01EA00:  20 20 20 20 20 20 73 77 69 74 63 68 28 70 74 72          switch(ptr
01EA10:  5B 69 64 65 6E 74 5D 29 20 7B 0D 0A 0D 0A 09 09    [ident]) {......
01EA20:  20 20 20 20 20 20 20 20 2F 2A 20 61 72 72 61 79            /* array
01EA30:  20 2A 2F 0D 0A 09 09 20 20 20 20 20 20 20 20 63     */....        c
01EA40:  61 73 65 20 61 72 72 61 79 20 3A 0D 0A 09 09 09    ase array :.....
01EA50:  20 20 20 20 20 20 20 20 69 66 20 28 6C 76 61 6C            if (lval
01EA60:  5B 31 5D 20 3D 3D 20 70 74 72 5B 69 6E 64 63 6E    [1] == ptr[indcn
01EA70:  74 5D 29 0D 0A 09 09 09 09 20 20 20 20 20 20 20    t])......       
01EA80:  20 69 66 20 28 6B 3D 3D 31 29 20 69 6E 64 69 72     if (k==1) indir
01EA90:  65 63 74 28 70 74 72 5B 74 79 70 65 5D 29 3B 0D    ect(ptr[type]);.
01EAA0:  0A 09 09 09 09 20 20 20 20 20 20 20 20 65 6C 73    .....        els
01EAB0:  65 20 67 65 74 6D 65 6D 28 70 74 72 2B 6E 61 6D    e getmem(ptr+nam
01EAC0:  65 2C 70 74 72 5B 74 79 70 65 5D 2C 0D 0A 09 09    e,ptr[type],....
01EAD0:  09 09 09 20 20 20 20 20 20 20 20 6C 76 61 6C 5B    ...        lval[
01EAE0:  32 5D 29 3B 0D 0A 09 09 09 20 20 20 20 20 20 20    2]);.....       
01EAF0:  20 65 6C 73 65 0D 0A 09 09 09 09 20 20 20 20 20     else......     
01EB00:  20 20 20 77 72 69 74 74 65 6E 20 62 79 20 4D 69       written by Mi
01EB10:  6B 65 20 42 65 72 6E 73 6F 6E 20 33 2F 38 30 20    ke Bernson 3/80 
01EB20:  20 20 20 2A 2F 0D 0A 2F 2A 09 09 09 09 20 20 20       */../*....   
01EB30:  20 20 20 20 20 2A 2F 0D 0A 63 6F 6E 73 74 5F 65         */..const_e
01EB40:  78 70 28 76 61 6C 29 0D 0A 69 6E 74 20 76 61 6C    xp(val)..int val
01EB50:  5B 5D 3B 0D 0A 7B 0D 0A 20 20 20 20 20 20 20 20    [];..{..        
01EB60:  62 6C 61 6E 6B 73 28 29 3B 0D 0A 20 20 20 20 20    blanks();..     
01EB70:  20 20 20 69 66 20 28 68 65 78 28 76 61 6C 29 29       if (hex(val))
01EB80:  20 72 65 74 75 72 6E 20 31 3B 0D 0A 20 20 20 20     return 1;..    
01EB90:  20 20 20 20 69 66 20 28 6E 75 6D 62 65 72 28 76        if (number(v
01EBA0:  61 6C 29 29 20 72 65 74 75 72 6E 20 31 3B 0D 0A    al)) return 1;..
01EBB0:  20 20 20 20 20 20 20 20 69 66 20 28 70 73 74 72            if (pstr
01EBC0:  28 76 61 6C 29 29 20 72 65 74 75 72 6E 20 31 3B    (val)) return 1;
01EBD0:  0D 0A 20 20 20 20 20 20 20 20 72 65 74 75 72 6E    ..        return
01EBE0:  20 30 3B 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A     0;..        }..
01EBF0:  63 6F 6E 73 74 61 6E 74 28 76 61 6C 29 0D 0A 69    constant(val)..i
01EC00:  6E 74 20 76 61 6C 5B 5D 3B 0D 0A 7B 0D 0A 20 20    nt val[];..{..  
01EC10:  20 20 20 20 20 20 69 66 20 28 68 65 78 28 76 61          if (hex(va
01EC20:  6C 29 29 20 69 6D 6D 65 64 28 29 3B 0D 0A 20 20    l)) immed();..  
01EC30:  20 20 20 20 20 20 65 6C 73 65 20 69 66 20 28 6E          else if (n
01EC40:  75 6D 62 65 72 28 76 61 6C 29 29 20 69 6D 6D 65    umber(val)) imme
01EC50:  64 28 29 3B 0D 0A 20 20 20 20 20 20 20 20 65 6C    d();..        el
01EC60:  73 65 20 69 66 20 28 70 73 74 72 28 76 61 6C 29    se if (pstr(val)
01EC70:  29 20 69 6D 6D 65 64 28 29 3B 0D 0A 20 20 20 20    ) immed();..    
01EC80:  20 20 20 20 65 6C 73 65 20 69 66 20 28 71 73 74        else if (qst
01EC90:  72 28 76 61 6C 29 29 20 7B 0D 0A 09 20 20 20 20    r(val)) {...    
01ECA0:  20 20 20 20 69 6D 6D 65 64 28 29 3B 0D 0A 09 20        immed();... 
01ECB0:  20 20 20 20 20 20 20 70 72 69 6E 74 6C 61 62 65           printlabe
01ECC0:  6C 28 6C 69 74 6C 61 62 29 3B 0D 0A 09 20 20 20    l(litlab);...   
01ECD0:  20 20 20 20 20 6F 75 74 62 79 74 65 28 27 2B 27         outbyte('+'
01ECE0:  29 3B 0D 0A 09 20 20 20 20 20 20 20 20 7D 0D 0A    );...        }..
01ECF0:  20 20 20 20 20 20 20 20 65 6C 73 65 20 72 65 74            else ret
01ED00:  20 20 20 69 66 20 28 6B 3D 3D 31 29 20 69 6E 64       if (k==1) ind
01ED10:  69 72 65 63 74 28 70 74 72 5B 74 79 70 65 5D 29    irect(ptr[type])
01ED20:  3B 0D 0A 09 09 09 09 20 20 20 20 20 20 20 20 65    ;......        e
01ED30:  6C 73 65 20 61 64 64 72 65 73 73 28 6C 76 61 6C    lse address(lval
01ED40:  2C 6B 29 3B 0D 0A 09 09 09 20 20 20 20 20 20 20    ,k);.....       
01ED50:  20 62 72 65 61 6B 3B 0D 0A 0D 0A 09 09 20 20 20     break;......   
01ED60:  20 20 20 20 20 2F 2A 20 70 6F 69 6E 74 65 72 20         /* pointer 
01ED70:  2A 2F 0D 0A 09 09 20 20 20 20 20 20 20 20 63 61    */....        ca
01ED80:  73 65 20 70 6F 69 6E 74 65 72 3A 0D 0A 09 09 09    se pointer:.....
01ED90:  20 20 20 20 20 20 20 20 69 66 20 28 6C 76 61 6C            if (lval
01EDA0:  5B 31 5D 20 3D 3D 20 70 74 72 5B 69 6E 64 63 6E    [1] == ptr[indcn
01EDB0:  74 5D 29 0D 0A 09 09 09 09 20 20 20 20 20 20 20    t])......       
01EDC0:  20 69 66 20 28 6B 3D 3D 31 29 20 69 6E 64 69 72     if (k==1) indir
01EDD0:  65 63 74 28 70 74 72 5B 74 79 70 65 5D 29 3B 0D    ect(ptr[type]);.
01EDE0:  0A 09 09 09 09 20 20 20 20 20 20 20 20 65 6C 73    .....        els
01EDF0:  65 20 67 65 74 6D 65 6D 28 70 74 72 2B 6E 61 6D    e getmem(ptr+nam
01EE00:  65 2C 70 74 72 5B 74 79 70 65 5D 2C 6C 76 61 6C    e,ptr[type],lval
01EE10:  5B 32 5D 29 3B 0D 0A 09 09 09 20 20 20 20 20 20    [2]);.....      
01EE20:  20 20 65 6C 73 65 0D 0A 09 09 09 09 20 20 20 20      else......    
01EE30:  20 20 20 20 69 66 20 28 6B 3D 3D 31 29 20 69 6E        if (k==1) in
01EE40:  64 69 72 65 63 74 28 63 69 6E 74 29 3B 0D 0A 09    direct(cint);...
01EE50:  09 09 09 20 20 20 20 20 20 20 20 65 6C 73 65 20    ...        else 
01EE60:  67 65 74 6D 65 6D 28 70 74 72 2B 6E 61 6D 65 2C    getmem(ptr+name,
01EE70:  63 69 6E 74 2C 30 29 3B 0D 0A 09 09 09 20 20 20    cint,0);.....   
01EE80:  20 20 20 20 20 62 72 65 61 6B 3B 0D 0A 0D 0A 09         break;.....
01EE90:  09 20 20 20 20 20 20 20 20 2F 2A 20 76 61 72 69    .        /* vari
01EEA0:  61 62 6C 65 20 2A 2F 0D 0A 09 09 20 20 20 20 20    able */....     
01EEB0:  20 20 20 63 61 73 65 20 76 61 72 69 61 62 6C 65       case variable
01EEC0:  20 3A 0D 0A 09 09 09 20 20 20 20 20 20 20 20 69     :.....        i
01EED0:  66 20 28 6B 3D 3D 31 29 20 69 6E 64 69 72 65 63    f (k==1) indirec
01EEE0:  74 28 70 74 72 5B 74 79 70 65 5D 29 3B 0D 0A 09    t(ptr[type]);...
01EEF0:  09 09 20 20 20 20 20 20 20 20 65 6C 73 65 20 67    ..        else g
01EF00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
01EF10:  1A 00 01 00 02 09 52 E5 1A 00 C1 02 00 00 00 02    ......R.........
01EF20:  1A 00 C6 02 00 00 00 02 1A 00 C2 02 00 00 00 02    ................
01EF30:  1A 00 C7 02 00 00 00 02 1A 00 C3 02 00 00 00 02    ................
01EF40:  1A 00 C8 02 00 00 00 02 1A 00 C4 02 00 00 00 02    ................
01EF50:  1A 00 C9 02 00 00 00 02 1A 00 C5 02 00 00 00 02    ................
01EF60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01EF70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01EF80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01EF90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01EFA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01EFB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01EFC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01EFD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01EFE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01EFF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
01F000:  75 72 6E 20 30 3B 0D 0A 20 20 20 20 20 20 20 20    urn 0;..        
01F010:  6F 75 74 64 65 63 28 76 61 6C 5B 30 5D 29 3B 0D    outdec(val[0]);.
01F020:  0A 20 20 20 20 20 20 20 20 6E 6C 28 29 3B 0D 0A    .        nl();..
01F030:  20 20 20 20 20 20 20 20 72 65 74 75 72 6E 20 31            return 1
01F040:  3B 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 68 65    ;..        }..he
01F050:  78 28 76 61 6C 29 0D 0A 69 6E 74 20 76 61 6C 5B    x(val)..int val[
01F060:  5D 3B 0D 0A 7B 0D 0A 20 20 20 20 20 20 20 20 69    ];..{..        i
01F070:  6E 74 20 63 68 65 63 6B 3B 0D 0A 20 20 20 20 20    nt check;..     
01F080:  20 20 20 63 68 61 72 20 6C 6F 6F 6B 5B 32 5D 3B       char look[2];
01F090:  0D 0A 20 20 20 20 20 20 20 20 69 66 20 28 63 68    ..        if (ch
01F0A0:  28 29 20 21 3D 20 27 30 27 20 7C 7C 20 28 6E 63    () != '0' || (nc
01F0B0:  68 28 29 20 21 3D 20 27 58 27 20 26 26 20 6E 63    h() != 'X' && nc
01F0C0:  68 28 29 20 21 3D 20 27 78 27 29 29 0D 0A 09 20    h() != 'x'))... 
01F0D0:  20 20 20 20 20 20 20 72 65 74 75 72 6E 20 30 3B           return 0;
01F0E0:  0D 0A 20 20 20 20 20 20 20 20 67 63 68 28 29 3B    ..        gch();
01F0F0:  0D 0A 20 20 20 20 20 20 20 20 67 63 68 28 29 3B    ..        gch();
01F100:  0D 0A 20 20 20 20 20 20 20 20 6C 6F 6F 6B 5B 31    ..        look[1
01F110:  5D 3D 30 3B 0D 0A 20 20 20 20 20 20 20 20 6C 6F    ]=0;..        lo
01F120:  6F 6B 5B 30 5D 3D 74 6F 75 70 70 65 72 28 67 63    ok[0]=toupper(gc
01F130:  68 28 29 29 3B 0D 0A 20 20 20 20 20 20 20 20 69    h());..        i
01F140:  66 20 28 21 28 63 68 65 63 6B 3D 73 74 72 70 6F    f (!(check=strpo
01F150:  73 28 22 30 31 32 33 34 35 36 37 38 39 41 42 43    s("0123456789ABC
01F160:  44 45 46 22 2C 6C 6F 6F 6B 29 29 29 20 7B 0D 0A    DEF",look))) {..
01F170:  09 20 20 20 20 20 20 20 20 65 72 72 6F 72 28 22    .        error("
01F180:  69 6E 76 61 69 6C 64 20 68 65 78 20 63 6F 6E 73    invaild hex cons
01F190:  74 61 6E 74 22 29 3B 0D 0A 09 20 20 20 20 20 20    tant");...      
01F1A0:  20 20 6A 75 6E 6B 28 29 3B 0D 0A 09 20 20 20 20      junk();...    
01F1B0:  20 20 20 20 76 61 6C 5B 30 5D 3D 30 3B 0D 0A 09        val[0]=0;...
01F1C0:  20 20 20 20 20 20 20 20 72 65 74 75 72 6E 20 31            return 1
01F1D0:  3B 0D 0A 09 20 20 20 20 20 20 20 20 7D 0D 0A 20    ;...        }.. 
01F1E0:  20 20 20 20 20 20 20 76 61 6C 5B 30 5D 3D 63 68           val[0]=ch
01F1F0:  65 63 6B 2D 31 3B 0D 0A 20 20 20 20 20 20 20 20    eck-1;..        
01F200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F2A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F2B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F2C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F2D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F2E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F2F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F3A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F3B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F3C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F3D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F3E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F3F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
01F400:  77 68 69 6C 65 28 31 29 20 7B 0D 0A 09 20 20 20    while(1) {...   
01F410:  20 20 20 20 20 6C 6F 6F 6B 5B 30 5D 3D 74 6F 75         look[0]=tou
01F420:  70 70 65 72 28 63 68 28 29 29 3B 0D 0A 09 20 20    pper(ch());...  
01F430:  20 20 20 20 20 20 69 66 20 28 21 28 63 68 65 63          if (!(chec
01F440:  6B 3D 73 74 72 70 6F 73 28 22 30 31 32 33 34 35    k=strpos("012345
01F450:  36 37 38 39 41 42 43 44 45 46 22 2C 6C 6F 6F 6B    6789ABCDEF",look
01F460:  29 29 29 0D 0A 09 09 20 20 20 20 20 20 20 20 72    )))....        r
01F470:  65 74 75 72 6E 20 31 3B 0D 0A 09 20 20 20 20 20    eturn 1;...     
01F480:  20 20 20 76 61 6C 5B 30 5D 3D 76 61 6C 5B 30 5D       val[0]=val[0]
01F490:  2A 31 36 2B 63 68 65 63 6B 2D 31 3B 0D 0A 09 20    *16+check-1;... 
01F4A0:  20 20 20 20 20 20 20 67 63 68 28 29 3B 0D 0A 09           gch();...
01F4B0:  20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20            }..     
01F4C0:  20 20 20 7D 0D 0A 6E 75 6D 62 65 72 28 76 61 6C       }..number(val
01F4D0:  29 0D 0A 69 6E 74 20 76 61 6C 5B 5D 3B 0D 0A 7B    )..int val[];..{
01F4E0:  0D 0A 20 20 20 20 20 20 20 20 69 6E 74 20 6B 2C    ..        int k,
01F4F0:  6D 69 6E 75 73 3B 63 68 61 72 20 63 3B 0D 0A 20    minus;char c;.. 
01F500:  20 20 20 20 20 20 20 6B 3D 6D 69 6E 75 73 3D 31           k=minus=1
01F510:  3B 0D 0A 20 20 20 20 20 20 20 20 77 68 69 6C 65    ;..        while
01F520:  28 6B 29 20 7B 0D 0A 09 20 20 20 20 20 20 20 20    (k) {...        
01F530:  6B 3D 30 3B 0D 0A 09 20 20 20 20 20 20 20 20 69    k=0;...        i
01F540:  66 20 28 6D 61 74 63 68 28 22 2B 22 29 29 20 6B    f (match("+")) k
01F550:  3D 31 3B 0D 0A 09 20 20 20 20 20 20 20 20 69 66    =1;...        if
01F560:  20 28 6D 61 74 63 68 28 22 2D 22 29 29 20 7B 0D     (match("-")) {.
01F570:  0A 09 09 20 20 20 20 20 20 20 20 6D 69 6E 75 73    ...        minus
01F580:  3D 2D 6D 69 6E 75 73 3B 0D 0A 09 09 20 20 20 20    =-minus;....    
01F590:  20 20 20 20 6B 3D 31 3B 0D 0A 09 09 20 20 20 20        k=1;....    
01F5A0:  20 20 20 20 7D 0D 0A 09 20 20 20 20 20 20 20 20        }...        
01F5B0:  7D 0D 0A 20 20 20 20 20 20 20 20 69 66 20 28 21    }..        if (!
01F5C0:  6E 75 6D 65 72 69 63 28 63 68 28 29 29 29 20 72    numeric(ch())) r
01F5D0:  65 74 75 72 6E 20 30 3B 0D 0A 20 20 20 20 20 20    eturn 0;..      
01F5E0:  20 20 77 68 69 6C 65 28 6E 75 6D 65 72 69 63 28      while(numeric(
01F5F0:  63 68 28 29 29 29 20 7B 0D 0A 09 20 20 20 20 20    ch())) {...     
01F600:  2F 2A 09 3E 3E 3E 3E 3E 20 73 74 61 72 74 20 6F    /*.>>>>> start o
01F610:  66 20 63 39 20 3C 3C 3C 3C 3C 3C 09 2A 2F 0D 0A    f c9 <<<<<<.*/..
01F620:  23 69 66 6E 64 65 66 09 54 52 55 45 09 2F 2A 20    #ifndef.TRUE./* 
01F630:  63 68 65 63 6B 20 74 6F 20 73 65 65 20 69 66 20    check to see if 
01F640:  69 6E 63 6C 75 64 65 20 66 69 6C 65 20 69 73 20    include file is 
01F650:  6E 65 65 64 65 64 20 2A 2F 0D 0A 23 69 6E 63 6C    needed */..#incl
01F660:  75 64 65 20 3C 43 2E 44 45 46 3E 0D 0A 23 65 6E    ude <C.DEF>..#en
01F670:  64 69 66 0D 0A 0D 0A 2F 2A 09 41 64 64 20 74 68    dif..../*.Add th
01F680:  65 20 70 72 69 6D 61 72 79 20 61 6E 64 20 73 65    e primary and se
01F690:  63 6F 6E 64 61 72 79 20 72 65 67 69 73 74 65 72    condary register
01F6A0:  73 09 2A 2F 0D 0A 2F 2A 09 28 72 65 73 75 6C 74    s.*/../*.(result
01F6B0:  73 20 69 6E 20 70 72 69 6D 61 72 79 29 20 2A 2F    s in primary) */
01F6C0:  0D 0A 61 64 64 28 29 0D 0A 7B 0D 0A 09 70 6F 70    ..add()..{...pop
01F6D0:  28 29 3B 0D 0A 09 6F 6C 28 22 64 61 64 5C 74 64    ();...ol("dad\td
01F6E0:  22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 09 53 75 62 74    ");...}../*.Subt
01F6F0:  72 61 63 74 20 74 68 65 20 70 72 69 6D 61 72 79    ract the primary
01F700:  20 72 65 67 69 73 74 65 72 20 66 72 6F 6D 20 73     register from s
01F710:  65 63 6F 6E 64 61 72 79 20 2A 2F 0D 0A 2F 2A 09    econdary */../*.
01F720:  28 72 65 73 75 6C 74 73 20 69 6E 20 70 72 69 6D    (results in prim
01F730:  61 72 79 29 20 2A 2F 0D 0A 73 75 62 28 29 0D 0A    ary) */..sub()..
01F740:  7B 0D 0A 09 63 63 61 6C 6C 28 22 40 73 75 62 22    {...ccall("@sub"
01F750:  29 3B 0D 0A 09 7D 0D 0A 2F 2A 09 4D 75 6C 74 69    );...}../*.Multi
01F760:  70 6C 79 20 74 68 65 20 70 72 69 6D 61 72 79 20    ply the primary 
01F770:  61 6E 64 20 73 65 63 6F 6E 64 61 72 79 20 72 65    and secondary re
01F780:  67 69 73 74 65 72 73 20 2A 2F 0D 0A 2F 2A 09 28    gisters */../*.(
01F790:  72 65 73 75 6C 74 73 20 69 6E 20 70 72 69 6D 61    results in prima
01F7A0:  72 79 29 20 2A 2F 0D 0A 6D 75 6C 74 28 29 0D 0A    ry) */..mult()..
01F7B0:  7B 0D 0A 09 63 63 61 6C 6C 28 22 40 6D 75 6C 74    {...ccall("@mult
01F7C0:  22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 09 44 69 76 69    ");...}../*.Divi
01F7D0:  64 65 20 74 68 65 20 73 65 63 6F 6E 64 61 72 79    de the secondary
01F7E0:  20 72 65 67 69 73 74 65 72 20 62 79 20 74 68 65     register by the
01F7F0:  20 70 72 69 6D 61 72 79 20 2A 2F 0D 0A 2F 2A 09     primary */../*.
01F800:  20 20 20 63 3D 69 6E 62 79 74 65 28 29 3B 0D 0A       c=inbyte();..
01F810:  09 20 20 20 20 20 20 20 20 6B 3D 6B 2A 31 30 2B    .        k=k*10+
01F820:  28 63 2D 27 30 27 29 3B 0D 0A 09 20 20 20 20 20    (c-'0');...     
01F830:  20 20 20 7D 0D 0A 20 20 20 20 20 20 20 20 69 66       }..        if
01F840:  20 28 6D 69 6E 75 73 3C 30 29 20 6B 3D 2D 6B 3B     (minus<0) k=-k;
01F850:  0D 0A 20 20 20 20 20 20 20 20 76 61 6C 5B 30 5D    ..        val[0]
01F860:  3D 6B 3B 0D 0A 20 20 20 20 20 20 20 20 72 65 74    =k;..        ret
01F870:  75 72 6E 20 31 3B 0D 0A 20 20 20 20 20 20 20 20    urn 1;..        
01F880:  7D 0D 0A 70 73 74 72 28 76 61 6C 29 0D 0A 69 6E    }..pstr(val)..in
01F890:  74 20 76 61 6C 5B 5D 3B 0D 0A 7B 0D 0A 20 20 20    t val[];..{..   
01F8A0:  20 20 20 20 20 69 6E 74 20 6B 3B 0D 0A 20 20 20         int k;..   
01F8B0:  20 20 20 20 20 6B 3D 30 3B 0D 0A 20 20 20 20 20         k=0;..     
01F8C0:  20 20 20 69 66 20 28 21 6D 61 74 63 68 28 22 5C       if (!match("\
01F8D0:  27 22 29 29 20 72 65 74 75 72 6E 20 30 3B 0D 0A    '")) return 0;..
01F8E0:  20 20 20 20 20 20 20 20 77 68 69 6C 65 28 63 68            while(ch
01F8F0:  28 29 20 21 3D 20 27 5C 27 27 20 26 26 20 63 68    () != '\'' && ch
01F900:  28 29 29 20 6B 3D 28 6B 26 32 35 35 29 2A 32 35    ()) k=(k&255)*25
01F910:  36 20 2B 20 65 73 74 72 28 29 3B 0D 0A 20 20 20    6 + estr();..   
01F920:  20 20 20 20 20 67 63 68 28 29 3B 0D 0A 20 20 20         gch();..   
01F930:  20 20 20 20 20 76 61 6C 5B 30 5D 3D 6B 3B 0D 0A         val[0]=k;..
01F940:  20 20 20 20 20 20 20 20 72 65 74 75 72 6E 20 31            return 1
01F950:  3B 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 71 73    ;..        }..qs
01F960:  74 72 28 76 61 6C 29 0D 0A 69 6E 74 20 76 61 6C    tr(val)..int val
01F970:  5B 5D 3B 0D 0A 7B 0D 0A 20 20 20 20 20 20 20 20    [];..{..        
01F980:  63 68 61 72 20 63 3B 0D 0A 20 20 20 20 20 20 20    char c;..       
01F990:  20 69 66 20 28 21 6D 61 74 63 68 28 22 5C 22 22     if (!match("\""
01F9A0:  29 29 20 72 65 74 75 72 6E 20 30 3B 0D 0A 20 20    )) return 0;..  
01F9B0:  20 20 20 20 20 20 76 61 6C 5B 30 5D 3D 6C 69 74          val[0]=lit
01F9C0:  70 74 72 3B 0D 0A 20 20 20 20 20 20 20 20 77 68    ptr;..        wh
01F9D0:  69 6C 65 20 28 63 68 28 29 20 21 3D 20 27 5C 22    ile (ch() != '\"
01F9E0:  27 29 20 7B 0D 0A 09 20 20 20 20 20 20 20 20 69    ') {...        i
01F9F0:  66 28 21 63 68 28 29 29 20 62 72 65 61 6B 3B 0D    f(!ch()) break;.
01FA00:  28 71 75 6F 74 69 65 6E 74 20 69 6E 20 70 72 69    (quotient in pri
01FA10:  6D 61 72 79 2C 20 72 65 6D 61 69 6E 64 65 72 20    mary, remainder 
01FA20:  69 6E 20 73 65 63 6F 6E 64 61 79 29 20 2A 2F 0D    in seconday) */.
01FA30:  0A 64 69 76 28 29 0D 0A 7B 0D 0A 09 63 63 61 6C    .div()..{...ccal
01FA40:  6C 28 22 40 64 69 76 22 29 3B 0D 0A 09 7D 0D 0A    l("@div");...}..
01FA50:  2F 2A 09 43 6F 6D 70 75 74 65 20 72 65 6D 61 69    /*.Compute remai
01FA60:  6E 64 65 72 20 28 6D 6F 64 29 20 6F 66 20 73 65    nder (mod) of se
01FA70:  63 6F 6E 64 61 79 20 62 79 20 70 72 69 6D 61 72    conday by primar
01FA80:  79 20 2A 2F 0D 0A 2F 2A 09 09 28 72 65 6D 61 69    y */../*..(remai
01FA90:  6E 64 65 72 20 69 6E 20 70 72 69 6D 61 72 79 2C    nder in primary,
01FAA0:  20 71 75 6F 74 69 65 6E 74 20 69 65 6E 74 20 69     quotient ient i
01FAB0:  6E 20 73 65 63 6F 6E 64 61 72 79 29 20 2A 2F 0D    n secondary) */.
01FAC0:  0A 6D 6F 64 28 29 0D 0A 7B 0D 0A 09 64 69 76 28    .mod()..{...div(
01FAD0:  29 3B 0D 0A 09 73 77 61 70 28 29 3B 0D 0A 09 7D    );...swap();...}
01FAE0:  0D 0A 2F 2A 20 49 6E 63 6C 75 73 69 76 65 20 27    ../* Inclusive '
01FAF0:  6F 72 27 20 74 68 65 20 70 72 69 6D 61 72 79 20    or' the primary 
01FB00:  61 6E 64 20 74 68 65 20 73 65 63 6F 6E 64 61 72    and the secondar
01FB10:  79 20 72 65 67 69 73 74 65 72 73 20 2A 2F 0D 0A    y registers */..
01FB20:  2F 2A 09 28 72 65 73 75 6C 74 73 20 69 6E 20 70    /*.(results in p
01FB30:  72 69 6D 61 72 79 29 20 2A 2F 0D 0A 6F 72 28 29    rimary) */..or()
01FB40:  0D 0A 7B 0D 0A 09 63 63 61 6C 6C 28 22 40 6F 72    ..{...ccall("@or
01FB50:  22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 20 45 78 78 63    ");...}../* Exxc
01FB60:  6C 75 73 69 76 65 20 27 6F 72 27 20 74 68 65 6E    lusive 'or' then
01FB70:  20 70 72 69 6D 61 72 79 20 61 6E 64 20 74 68 65     primary and the
01FB80:  20 73 65 63 6F 6E 64 61 72 79 20 72 65 67 69 73     secondary regis
01FB90:  74 65 72 73 20 2A 2F 0D 0A 2F 2A 09 28 72 65 73    ters */../*.(res
01FBA0:  75 6C 74 73 20 69 6E 20 70 72 69 6D 61 72 79 29    ults in primary)
01FBB0:  09 2A 2F 0D 0A 78 6F 72 28 29 0D 0A 7B 0D 0A 09    .*/..xor()..{...
01FBC0:  63 63 61 6C 6C 28 22 40 78 6F 72 22 29 3B 0D 0A    ccall("@xor");..
01FBD0:  09 7D 0D 0A 2F 2A 09 27 61 6E 64 27 20 74 68 65    .}../*.'and' the
01FBE0:  20 70 72 69 6D 61 72 79 20 61 6E 64 20 73 65 63     primary and sec
01FBF0:  6F 6E 64 61 72 79 20 72 65 67 69 73 74 65 72 73    ondary registers
01FC00:  0A 09 20 20 20 20 20 20 20 20 69 66 28 6C 69 74    ..        if(lit
01FC10:  70 74 72 3E 3D 6C 69 74 6D 61 78 29 20 7B 0D 0A    ptr>=litmax) {..
01FC20:  09 09 20 20 20 20 20 20 20 20 65 72 72 6F 72 28    ..        error(
01FC30:  22 73 74 72 69 6E 67 20 73 70 61 63 65 20 65 78    "string space ex
01FC40:  68 61 75 73 74 65 64 22 29 3B 0D 0A 09 09 20 20    hausted");....  
01FC50:  20 20 20 20 20 20 77 68 69 6C 65 28 63 68 28 29          while(ch()
01FC60:  20 21 3D 27 5C 22 27 20 26 26 20 63 68 28 29 29     !='\"' && ch())
01FC70:  20 65 73 74 72 28 29 3B 0D 0A 09 09 20 20 20 20     estr();....    
01FC80:  20 20 20 20 72 65 74 75 72 6E 20 31 3B 0D 0A 09        return 1;...
01FC90:  09 20 20 20 20 20 20 20 20 7D 0D 0A 09 20 20 20    .        }...   
01FCA0:  20 20 20 20 20 6C 69 74 71 5B 6C 69 74 70 74 72         litq[litptr
01FCB0:  2B 2B 5D 3D 65 73 74 72 28 29 3B 0D 0A 09 20 20    ++]=estr();...  
01FCC0:  20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 20          }..       
01FCD0:  20 67 63 68 28 29 3B 0D 0A 20 20 20 20 20 20 20     gch();..       
01FCE0:  20 6C 69 74 71 5B 6C 69 74 70 74 72 2B 2B 5D 3D     litq[litptr++]=
01FCF0:  30 3B 0D 0A 20 20 20 20 20 20 20 20 72 65 74 75    0;..        retu
01FD00:  72 6E 20 31 3B 0D 0A 20 20 20 20 20 20 20 20 7D    rn 1;..        }
01FD10:  0D 0A 65 73 74 72 28 29 0D 0A 7B 0D 0A 20 20 20    ..estr()..{..   
01FD20:  20 20 20 20 20 63 68 61 72 20 63 68 65 63 6B 3B         char check;
01FD30:  0D 0A 20 20 20 20 20 20 20 20 69 66 20 28 63 68    ..        if (ch
01FD40:  28 29 20 21 3D 20 27 5C 5C 27 29 20 72 65 74 75    () != '\\') retu
01FD50:  72 6E 20 67 63 68 28 29 3B 0D 0A 20 20 20 20 20    rn gch();..     
01FD60:  20 20 20 67 63 68 28 29 3B 0D 0A 20 20 20 20 20       gch();..     
01FD70:  20 20 20 73 77 69 74 63 68 28 74 6F 75 70 70 65       switch(touppe
01FD80:  72 28 63 68 65 63 6B 3D 67 63 68 28 29 29 29 20    r(check=gch())) 
01FD90:  7B 0D 0A 09 20 20 20 20 20 20 20 20 63 61 73 65    {...        case
01FDA0:  20 27 52 27 20 3A 20 72 65 74 75 72 6E 20 43 52     'R' : return CR
01FDB0:  3B 0D 0A 09 20 20 20 20 20 20 20 20 63 61 73 65    ;...        case
01FDC0:  20 27 4E 27 20 3A 20 72 65 74 75 72 6E 20 4C 46     'N' : return LF
01FDD0:  3B 0D 0A 09 20 20 20 20 20 20 20 20 63 61 73 65    ;...        case
01FDE0:  20 27 42 27 20 3A 20 72 65 74 75 72 6E 20 42 53     'B' : return BS
01FDF0:  3B 0D 0A 09 20 20 20 20 20 20 20 20 63 61 73 65    ;...        case
01FE00:  20 2A 2F 0D 0A 2F 2A 09 28 72 65 73 75 6C 74 73     */../*.(results
01FE10:  20 69 6E 20 70 72 69 6D 61 72 79 29 20 2A 2F 0D     in primary) */.
01FE20:  0A 61 6E 64 28 29 0D 0A 7B 0D 0A 09 63 63 61 6C    .and()..{...ccal
01FE30:  6C 28 22 40 61 6E 64 22 29 3B 0D 0A 09 7D 0D 0A    l("@and");...}..
01FE40:  2F 2A 09 41 72 69 74 68 6D 65 74 69 63 20 73 68    /*.Arithmetic sh
01FE50:  69 66 74 20 72 69 67 68 74 20 74 68 65 20 73 65    ift right the se
01FE60:  63 6F 6E 64 61 72 79 20 72 65 67 69 73 74 65 72    condary register
01FE70:  20 6E 75 6D 62 65 72 20 6F 66 20 2A 2F 0D 0A 2F     number of */../
01FE80:  2A 09 09 74 69 6D 65 73 20 69 6E 20 70 72 69 6D    *..times in prim
01FE90:  61 72 79 20 28 72 65 73 75 6C 74 73 20 69 6E 20    ary (results in 
01FEA0:  70 72 69 6D 61 72 79 20 29 20 2A 2F 0D 0A 61 73    primary ) */..as
01FEB0:  72 28 29 0D 0A 7B 0D 0A 09 63 63 61 6C 6C 28 22    r()..{...ccall("
01FEC0:  40 61 73 72 22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 09    @asr");...}../*.
01FED0:  61 72 69 74 68 6D 65 74 69 63 20 6C 65 66 74 20    arithmetic left 
01FEE0:  73 68 69 66 74 20 74 68 65 20 73 65 63 6F 6E 64    shift the second
01FEF0:  61 72 79 20 72 65 67 69 73 74 65 72 20 6E 75 6D    ary register num
01FF00:  62 65 72 20 6F 66 20 2A 2F 0D 0A 2F 2A 09 09 74    ber of */../*..t
01FF10:  69 6D 65 73 20 69 6E 20 70 72 69 6D 61 72 79 20    imes in primary 
01FF20:  28 72 65 73 75 6C 74 73 20 69 6E 20 70 72 69 6D    (results in prim
01FF30:  61 72 79 29 20 2A 2F 0D 0A 61 73 6C 28 29 0D 0A    ary) */..asl()..
01FF40:  7B 0D 0A 09 63 63 61 6C 6C 28 22 40 61 73 6C 22    {...ccall("@asl"
01FF50:  29 3B 0D 0A 09 7D 0D 0A 2F 2A 09 46 72 6F 6D 20    );...}../*.From 
01FF60:  74 77 6F 27 73 20 63 6F 6D 70 6C 65 6D 65 6E 74    two's complement
01FF70:  20 6F 66 20 70 72 69 6D 61 72 79 20 72 65 67 69     of primary regi
01FF80:  73 74 65 72 20 2A 2F 0D 0A 6E 65 67 28 29 0D 0A    ster */..neg()..
01FF90:  7B 0D 0A 09 63 61 6C 6C 28 22 40 6E 65 67 22 29    {...call("@neg")
01FFA0:  3B 0D 0A 09 7D 0D 0A 2F 2A 09 66 6F 72 6D 20 6F    ;...}../*.form o
01FFB0:  6E 65 27 73 20 63 6F 6D 70 6C 65 6D 65 6E 74 20    ne's complement 
01FFC0:  6F 66 20 70 72 69 6D 61 72 79 20 72 65 67 69 73    of primary regis
01FFD0:  74 65 72 20 2A 2F 0D 0A 63 6F 6D 28 29 0D 0A 7B    ter */..com()..{
01FFE0:  0D 0A 09 63 61 6C 6C 28 22 40 63 6F 6D 22 29 3B    ...call("@com");
01FFF0:  0D 0A 09 7D 0D 0A 70 72 65 5F 69 6E 63 28 6C 76    ...}..pre_inc(lv
020000:  20 27 54 27 3A 20 72 65 74 75 72 6E 20 54 42 3B     'T': return TB;
020010:  0D 0A 09 20 20 20 20 20 20 20 20 63 61 73 65 20    ...        case 
020020:  27 46 27 20 3A 20 72 65 74 75 72 6E 20 46 46 3B    'F' : return FF;
020030:  0D 0A 09 20 20 20 20 20 20 20 20 7D 0D 0A 20 20    ...        }..  
020040:  20 20 20 20 20 20 69 66 20 28 21 69 73 64 69 67          if (!isdig
020050:  69 74 28 63 68 65 63 6B 29 29 20 72 65 74 75 72    it(check)) retur
020060:  6E 20 63 68 65 63 6B 3B 0D 0A 20 20 20 20 20 20    n check;..      
020070:  20 20 63 68 65 63 6B 3D 63 68 65 63 6B 2D 27 30      check=check-'0
020080:  27 3B 0D 0A 20 20 20 20 20 20 20 20 77 68 69 6C    ';..        whil
020090:  65 28 69 73 64 69 67 69 74 28 63 68 28 29 29 29    e(isdigit(ch()))
0200A0:  20 63 68 65 63 6B 3D 63 68 65 63 6B 2A 38 2B 67     check=check*8+g
0200B0:  63 68 28 29 2D 27 30 27 3B 0D 0A 20 20 20 20 20    ch()-'0';..     
0200C0:  20 20 20 72 65 74 75 72 6E 20 63 68 65 63 6B 3B       return check;
0200D0:  0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 1A 20 7D    ..        }... }
0200E0:  0D 0A 1A 32 2C 31 30 35 2C 31 31 36 0D 0A 09 64    ...2,105,116...d
0200F0:  62 09 33 32 2C 39 37 2C 31 31 30 2C 31 32 31 2C    b.32,97,110,121,
020100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0201A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0201B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0201C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0201D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0201E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0201F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020200:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
020210:  1B 00 01 00 02 09 52 E5 1B 00 C1 02 00 00 00 02    ......R.........
020220:  1B 00 C6 02 00 00 00 02 1B 00 C2 02 00 00 00 02    ................
020230:  1B 00 C7 02 00 00 00 02 1B 00 C3 02 00 00 00 02    ................
020240:  1B 00 C8 02 00 00 00 02 1B 00 C4 02 00 00 00 02    ................
020250:  1B 00 C9 02 00 00 00 02 1B 00 C5 02 00 00 00 02    ................
020260:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
020270:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
020280:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
020290:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0202A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0202B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0202C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0202D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0202E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0202F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
020300:  61 6C 29 0D 0A 69 6E 74 20 2A 6C 76 61 6C 3B 0D    al)..int *lval;.
020310:  0A 7B 0D 0A 09 63 61 6C 6C 28 22 40 70 72 65 69    .{...call("@prei
020320:  6E 63 22 29 3B 0D 0A 09 69 6E 63 5F 64 65 66 28    nc");...inc_def(
020330:  6C 76 61 6C 29 3B 0D 0A 09 7D 0D 0A 70 6F 73 74    lval);...}..post
020340:  5F 69 6E 63 28 6C 76 61 6C 29 0D 0A 69 6E 74 20    _inc(lval)..int 
020350:  2A 6C 76 61 6C 3B 0D 0A 7B 0D 0A 09 63 61 6C 6C    *lval;..{...call
020360:  28 22 40 70 6F 73 74 69 6E 63 22 29 3B 0D 0A 09    ("@postinc");...
020370:  69 6E 63 5F 64 65 66 28 6C 76 61 6C 29 3B 0D 0A    inc_def(lval);..
020380:  09 7D 0D 0A 70 72 65 5F 64 65 63 28 6C 76 61 6C    .}..pre_dec(lval
020390:  29 0D 0A 69 6E 74 20 2A 6C 76 61 6C 3B 0D 0A 7B    )..int *lval;..{
0203A0:  0D 0A 09 63 61 6C 6C 28 22 40 70 72 65 64 65 63    ...call("@predec
0203B0:  22 29 3B 0D 0A 09 69 6E 63 5F 64 65 66 28 6C 76    ");...inc_def(lv
0203C0:  61 6C 29 3B 0D 0A 09 7D 0D 0A 70 6F 73 74 5F 64    al);...}..post_d
0203D0:  65 63 28 6C 76 61 6C 29 0D 0A 69 6E 74 20 2A 6C    ec(lval)..int *l
0203E0:  76 61 6C 3B 0D 0A 7B 0D 0A 09 63 61 6C 6C 28 22    val;..{...call("
0203F0:  40 70 6F 73 74 64 65 63 22 29 3B 0D 0A 09 69 6E    @postdec");...in
020400:  63 5F 64 65 66 28 6C 76 61 6C 29 3B 0D 0A 09 7D    c_def(lval);...}
020410:  0D 0A 69 6E 63 5F 64 65 66 28 6C 76 61 6C 29 0D    ..inc_def(lval).
020420:  0A 69 6E 74 20 2A 6C 76 61 6C 3B 0D 0A 7B 0D 0A    .int *lval;..{..
020430:  09 63 68 61 72 20 2A 70 74 72 3B 3B 0D 0A 09 69    .char *ptr;;...i
020440:  6E 74 20 76 61 6C 75 65 3B 0D 0A 0D 0A 09 70 74    nt value;.....pt
020450:  72 3D 6C 76 61 6C 5B 30 5D 3B 0D 0A 09 69 66 20    r=lval[0];...if 
020460:  28 70 74 72 5B 69 64 65 6E 74 5D 20 3D 3D 20 70    (ptr[ident] == p
020470:  6F 69 6E 74 65 72 20 26 26 20 70 74 72 5B 69 6E    ointer && ptr[in
020480:  64 63 6E 74 5D 20 21 3D 20 6C 76 61 6C 5B 31 5D    dcnt] != lval[1]
020490:  29 20 76 61 6C 75 65 3D 30 78 38 30 3B 0D 0A 09    ) value=0x80;...
0204A0:  65 6C 73 65 20 76 61 6C 75 65 3D 30 3B 0D 0A 09    else value=0;...
0204B0:  76 61 6C 75 65 3D 76 61 6C 75 65 20 7C 20 64 61    value=value | da
0204C0:  74 61 5F 73 69 7A 65 28 6C 76 61 6C 29 3B 0D 0A    ta_size(lval);..
0204D0:  09 69 66 20 28 70 74 72 5B 74 79 70 65 5D 20 3D    .if (ptr[type] =
0204E0:  3D 20 63 69 6E 74 20 26 26 20 70 74 72 5B 69 64    = cint && ptr[id
0204F0:  65 6E 74 5D 20 21 3D 20 70 6F 69 6E 74 65 72 29    ent] != pointer)
020500:  63 6C 69 6E 6B 20 63 31 20 63 32 20 63 33 20 63    clink c1 c2 c3 c
020510:  34 20 63 35 20 63 36 20 63 37 20 63 38 20 63 39    4 c5 c6 c7 c8 c9
020520:  2E 63 20 63 31 20 63 32 20 63 33 20 63 34 20 63    .c c1 c2 c3 c4 c
020530:  38 20 63 39 2E 63 20 2D 73 20 2D 72 20 65 30 30    8 c9.c -s -r e00
020540:  20 0D 0A 1A 29 10 04 11 C2 10 88 0F 6D 0F 9D 0F     ...).......m...
020550:  BB 0C 96 0F 00 00 00 00 00 00 00 00 00 00 00 00    ................
020560:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
020570:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
020580:  21 08 00 39 4E 23 46 23 5E 23 56 23 7E 23 66 6F    !..9N#F#^#V#~#fo
020590:  C9 24 51 E5 36 FA 0E 0A EB CD 05 00 D1 62 6B 13    .$Q.6........bk.
0205A0:  46 13 1A 77 23 13 05 C2 A5 01 36 00 0E 02 1E 0A    F..w#.....6.....
0205B0:  CD 05 00 E1 C9 24 52 13 00 01 03 16 00 13 00 24    .....$R........$
0205C0:  54 14 00 13 B8 01 0E 02 C5 C5 CD 00 00 C1 C1 7D    T..............}
0205D0:  B7 21 00 00 C8 21 01 00 C9 24 52 14 00 01 03 05    .!...!...$R.....
0205E0:  00 00 00 24 54 15 00 22 CB 01 C1 E1 D1 D5 E5 C5    ...$T.."........
0205F0:  D5 E5 CD FA 02 D1 D1 2C CA E9 01 0E 0F CD 05 00    .......,........
020600:  2C 30 34 2C 44 44 2C 36 36 2C 30 35 2C 37 37 2C    ,04,DD,66,05,77,
020610:  43 39 00 27 00 C6 02 C5 20 2A 2A 2A 20 43 4F 50    C9.'.... *** COP
020620:  59 52 49 47 48 54 20 41 44 56 41 4E 54 41 47 45    YRIGHT ADVANTAGE
020630:  20 31 39 38 35 20 2A 2A 2A 00 00 00 1A 2A 2A 00     1985 ***....**.
020640:  00 00 1A 37 37 2C 43 39 00 27 00 C6 02 C5 20 2A    ...77,C9.'.... *
020650:  2A 2A 20 43 4F 50 59 52 49 47 48 54 20 41 44 56    ** COPYRIGHT ADV
020660:  41 4E 54 41 47 45 20 31 39 38 35 20 2A 2A 2A 00    ANTAGE 1985 ***.
020670:  00 00 1A 00 1A 00 00 00 1A 2A 00 00 00 1A 00 00    .........*......
020680:  22 20 EB 20 A1 20 0B 00 00 E9 EE 10 20 FA 20 0B    " . . ...... . .
020690:  00 00 66 6C 61 E7 EF 0F 20 EB 20 BF 23 16 2C 22    ..fla... . .#.,"
0206A0:  22 00 41 00 58 02 A1 20 03 00 00 E3 EF 22 44 22    ".A.X.. ....."D"
0206B0:  20 EB 20 BF 23 16 2C 20 FF 75 28 03 00 00 6E 61     . .#., .u(...na
0206C0:  6D E5 28 0B 00 00 E9 29 2C FF 74 28 03 00 00 6E    m.(....),.t(...n
0206D0:  61 6D E5 28 0B 00 00 E9 29 2C 22 2E 22 29 F5 0F    am.(....),".")..
0206E0:  29 3B 00 29 00 62 02 A1 20 03 00 00 E3 EF 22 54    );.).b.. ....."T
0206F0:  22 20 EB 20 BF 23 16 2C 03 00 00 6E 61 6D E5 28    " . .#.,...nam.(
020700:  20 76 61 6C 75 65 3D 76 61 6C 75 65 20 7C 20 30     value=value | 0
020710:  78 38 30 3B 20 0D 0A 09 64 65 66 62 79 74 65 28    x80; ...defbyte(
020720:  29 3B 0D 0A 09 6F 75 74 68 65 78 28 76 61 6C 75    );...outhex(valu
020730:  65 29 3B 0D 0A 09 6E 6C 28 29 3B 0D 0A 09 7D 0D    e);...nl();...}.
020740:  0A 20 0D 0A 2F 2A 09 66 6F 6C 6C 6F 77 69 6E 67    . ../*.following
020750:  20 61 72 65 20 74 68 65 20 63 6F 6E 64 69 74 69     are the conditi
020760:  6F 6E 61 6C 20 6F 70 65 72 61 74 6F 72 73 20 2A    onal operators *
020770:  2F 0D 0A 2F 2A 09 74 68 65 79 20 63 6F 6D 70 61    /../*.they compa
020780:  72 65 20 74 68 65 20 73 65 63 6F 6E 64 61 79 20    re the seconday 
020790:  72 65 67 69 73 74 65 72 20 61 67 61 69 6E 73 74    register against
0207A0:  20 74 68 65 20 70 72 69 6D 61 72 79 20 2A 2F 0D     the primary */.
0207B0:  0A 2F 2A 09 61 6E 64 20 70 75 74 20 61 20 6C 65    ./*.and put a le
0207C0:  74 65 72 61 6C 20 31 20 69 6E 20 74 68 65 20 70    teral 1 in the p
0207D0:  72 69 6D 61 72 79 20 69 66 20 74 68 65 20 63 6F    rimary if the co
0207E0:  6E 64 69 74 69 6F 6E 20 69 73 20 2A 2F 0D 0A 2F    ndition is */../
0207F0:  2A 09 74 72 75 65 20 6F 74 68 65 72 77 69 73 65    *.true otherwise
020800:  20 74 68 65 20 63 6C 65 61 72 20 74 68 65 20 70     the clear the p
020810:  72 69 6D 61 72 79 20 72 65 67 69 73 74 65 72 20    rimary register 
020820:  2A 2F 0D 0A 2F 2A 09 63 68 61 6E 67 65 20 74 6F    */../*.change to
020830:  20 6E 6F 74 20 63 6F 6E 64 69 74 69 6F 6E 20 2A     not condition *
020840:  2F 0D 0A 6E 6C 6F 67 69 63 61 6C 28 29 0D 0A 7B    /..nlogical()..{
020850:  0D 0A 09 63 61 6C 6C 28 22 40 6E 6C 6F 67 22 29    ...call("@nlog")
020860:  3B 0D 0A 09 7D 0D 0A 2F 2A 09 74 65 73 74 20 66    ;...}../*.test f
020870:  6F 72 20 6C 6F 67 69 63 61 6C 20 61 6E 64 20 2A    or logical and *
020880:  2F 0D 0A 6C 61 6E 64 28 29 0D 0A 7B 0D 0A 09 63    /..land()..{...c
020890:  63 61 6C 6C 28 22 40 6C 61 6E 64 22 29 3B 0D 0A    call("@land");..
0208A0:  09 7D 0D 0A 2F 2A 09 74 65 73 74 20 66 6F 72 20    .}../*.test for 
0208B0:  6C 6F 67 69 63 61 6C 20 6F 72 20 2A 2F 0D 0A 6C    logical or */..l
0208C0:  6F 72 28 29 0D 0A 7B 0D 0A 09 63 63 61 6C 6C 28    or()..{...ccall(
0208D0:  22 40 6C 6F 72 22 29 3B 0D 0A 09 7D 0D 0A 2F 2A    "@lor");...}../*
0208E0:  09 74 65 73 74 20 66 6F 72 20 65 71 75 61 6C 20    .test for equal 
0208F0:  2A 2F 0D 0A 65 71 28 29 0D 0A 7B 0D 0A 09 63 63    */..eq()..{...cc
020900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0209A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0209B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0209C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0209D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0209E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0209F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020A00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020A10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020A20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020A30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020A40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020A50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020A60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020A70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020A80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020A90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020AA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020AB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020AC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020AD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020AE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020AF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
020B00:  61 6C 6C 28 22 40 65 71 22 29 3B 0D 0A 09 7D 0D    all("@eq");...}.
020B10:  0A 2F 2A 09 74 65 73 74 20 66 6F 72 20 6E 6F 74    ./*.test for not
020B20:  20 65 71 75 61 6C 20 2A 2F 0D 0A 6E 65 28 29 0D     equal */..ne().
020B30:  0A 7B 0D 0A 09 63 63 61 6C 6C 28 22 40 6E 65 22    .{...ccall("@ne"
020B40:  29 3B 0D 0A 09 7D 0D 0A 2F 2A 09 74 65 73 74 20    );...}../*.test 
020B50:  66 6F 72 20 6C 65 73 73 20 74 68 61 6E 20 28 73    for less than (s
020B60:  69 67 6E 65 64 29 20 2A 2F 0D 0A 6C 74 28 29 0D    igned) */..lt().
020B70:  0A 7B 0D 0A 09 63 63 61 6C 6C 28 22 40 6C 74 22    .{...ccall("@lt"
020B80:  29 3B 0D 0A 09 7D 0D 0A 2F 2A 09 74 65 74 20 66    );...}../*.tet f
020B90:  6F 72 20 6C 65 73 73 20 74 68 61 6E 20 6F 72 20    or less than or 
020BA0:  65 71 75 61 6C 20 74 6F 20 28 73 69 67 6E 65 64    equal to (signed
020BB0:  29 20 2A 2F 0D 0A 6C 65 28 29 0D 0A 7B 0D 0A 09    ) */..le()..{...
020BC0:  63 63 61 6C 6C 28 22 40 6C 65 22 29 3B 0D 0A 09    ccall("@le");...
020BD0:  7D 0D 0A 2F 2A 09 74 65 73 74 20 66 6F 72 20 67    }../*.test for g
020BE0:  72 65 61 74 65 72 20 74 68 61 6E 20 28 73 69 67    reater than (sig
020BF0:  6E 65 64 29 20 2A 2F 0D 0A 67 74 28 29 0D 0A 7B    ned) */..gt()..{
020C00:  0D 0A 09 63 63 61 6C 6C 28 22 40 67 74 22 29 3B    ...ccall("@gt");
020C10:  0D 0A 09 7D 0D 0A 2F 2A 09 74 65 73 74 20 66 6F    ...}../*.test fo
020C20:  72 20 67 72 65 61 74 65 72 20 74 68 61 6E 20 6F    r greater than o
020C30:  72 20 6F 72 20 65 71 75 61 6C 20 28 73 69 67 6E    r or equal (sign
020C40:  65 64 29 20 2A 2F 0D 0A 67 65 28 29 0D 0A 7B 0D    ed) */..ge()..{.
020C50:  0A 09 63 63 61 6C 6C 28 22 40 67 65 22 29 3B 0D    ..ccall("@ge");.
020C60:  0A 09 7D 0D 0A 2F 2A 09 74 65 73 74 20 66 6F 72    ..}../*.test for
020C70:  20 6C 65 73 73 20 74 68 61 6E 20 28 75 6E 73 69     less than (unsi
020C80:  67 6E 65 64 29 20 2A 2F 0D 0A 75 6C 74 28 29 0D    gned) */..ult().
020C90:  0A 7B 0D 0A 09 63 63 61 6C 6C 28 22 40 75 6C 74    .{...ccall("@ult
020CA0:  22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 09 54 65 73 74    ");...}../*.Test
020CB0:  20 66 6F 72 20 6C 65 65 73 20 74 68 61 6E 20 6F     for lees than o
020CC0:  72 20 65 71 75 61 6C 20 74 6F 20 28 75 6E 73 69    r equal to (unsi
020CD0:  67 6E 65 64 29 20 2A 2F 0D 0A 75 6C 65 28 29 0D    gned) */..ule().
020CE0:  0A 7B 0D 0A 09 63 63 61 6C 6C 28 22 40 75 6C 65    .{...ccall("@ule
020CF0:  22 29 3B 0D 0A 09 7D 0D 0A 2F 2A 09 74 65 73 74    ");...}../*.test
020D00:  2F 2A 09 3E 3E 3E 3E 20 73 74 61 72 74 20 6F 66    /*.>>>> start of
020D10:  20 63 63 33 20 3C 3C 3C 3C 3C 3C 3C 3C 3C 09 2A     cc3 <<<<<<<<<.*
020D20:  2F 0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A 23 69    /../*.....*/..#i
020D30:  66 6E 64 65 66 20 54 52 55 45 09 2F 2A 20 73 65    fndef TRUE./* se
020D40:  65 20 69 66 20 6E 65 65 64 20 69 6E 63 6C 75 64    e if need includ
020D50:  65 20 66 69 6C 65 20 2A 2F 0D 0A 23 69 6E 63 6C    e file */..#incl
020D60:  75 64 65 20 3C 43 2E 44 45 46 3E 0D 0A 23 65 6E    ude <C.DEF>..#en
020D70:  64 69 66 0D 0A 2F 2A 09 50 65 72 66 6F 72 6D 20    dif../*.Perform 
020D80:  61 20 66 75 6E 63 74 69 6F 6E 20 63 61 6C 6C 09    a function call.
020D90:  09 2A 2F 0D 0A 2F 2A 09 09 09 09 09 2A 2F 0D 0A    .*/../*.....*/..
020DA0:  2F 2A 20 63 61 6C 6C 65 64 20 66 72 6F 6D 20 68    /* called from h
020DB0:  65 69 72 31 31 2C 20 74 68 69 73 20 72 6F 75 74    eir11, this rout
020DC0:  69 6E 65 20 77 69 6C 6C 20 65 69 74 68 65 72 20    ine will either 
020DD0:  63 61 6C 6C 09 2A 2F 0D 0A 2F 2A 09 74 68 65 20    call.*/../*.the 
020DE0:  6E 61 6D 65 64 20 66 75 6E 63 74 69 6F 6E 2C 20    named function, 
020DF0:  6F 72 20 69 66 20 74 68 65 20 73 75 70 70 6C 69    or if the suppli
020E00:  65 64 20 70 74 72 20 69 73 09 2A 2F 0D 0A 2F 2A    ed ptr is.*/../*
020E10:  09 7A 65 72 6F 2C 20 77 69 6C 6C 20 63 61 6C 6C    .zero, will call
020E20:  20 74 68 65 20 63 6F 6E 74 65 6E 74 73 20 6F 66     the contents of
020E30:  20 48 4C 09 09 2A 2F 0D 0A 63 61 6C 6C 66 75 6E     HL..*/..callfun
020E40:  63 74 69 6F 6E 28 70 74 72 29 0D 0A 63 68 61 72    ction(ptr)..char
020E50:  20 2A 70 74 72 3B 20 20 20 20 20 20 2F 2A 20 73     *ptr;      /* s
020E60:  79 6D 62 6F 6C 20 74 61 62 6C 65 20 65 6E 74 72    ymbol table entr
020E70:  79 20 28 6F 72 20 30 29 20 2A 2F 0D 0A 7B 0D 0A    y (or 0) */..{..
020E80:  09 69 6E 74 20 6E 61 72 67 73 3B 0D 0A 09 6E 61    .int nargs;...na
020E90:  72 67 73 3D 30 3B 0D 0A 09 62 6C 61 6E 6B 73 28    rgs=0;...blanks(
020EA0:  29 3B 09 09 2F 2A 20 61 6C 72 65 61 64 79 20 73    );../* already s
020EB0:  61 77 20 6F 70 65 6E 20 70 61 72 65 6E 20 2A 2F    aw open paren */
020EC0:  0D 0A 09 69 66 20 28 70 74 72 3D 3D 30 29 20 70    ...if (ptr==0) p
020ED0:  75 73 68 28 29 3B 09 2F 2A 20 63 61 6C 6C 69 6E    ush();./* callin
020EE0:  67 20 48 4C 20 2A 2F 0D 0A 09 77 68 69 6C 65 20    g HL */...while 
020EF0:  28 73 74 72 65 71 28 6C 69 6E 65 2B 6C 70 74 72    (streq(line+lptr
020F00:  20 66 6F 72 20 67 72 65 61 74 65 72 20 74 68 61     for greater tha
020F10:  6E 20 28 75 6E 73 69 67 6E 65 64 29 20 2A 2F 0D    n (unsigned) */.
020F20:  0A 75 67 74 28 29 0D 0A 7B 0D 0A 09 63 63 61 6C    .ugt()..{...ccal
020F30:  6C 28 22 40 75 67 74 22 29 3B 0D 0A 09 7D 0D 0A    l("@ugt");...}..
020F40:  2F 2A 09 74 65 73 74 20 66 6F 72 20 67 72 65 61    /*.test for grea
020F50:  74 65 72 20 74 68 61 6E 20 6F 72 20 65 71 75 61    ter than or equa
020F60:  6C 20 74 6F 20 28 75 6E 73 69 67 6E 65 64 29 20    l to (unsigned) 
020F70:  2A 2F 0D 0A 75 67 65 28 29 0D 0A 7B 0D 0A 09 63    */..uge()..{...c
020F80:  63 61 6C 6C 28 22 40 75 67 65 22 29 3B 0D 0A 09    call("@uge");...
020F90:  7D 0D 0A 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    }...............
020FA0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
020FB0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
020FC0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
020FD0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
020FE0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
020FF0:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
021000:  43 44 2C 37 37 2C 42 43 2C 33 30 2C 31 38 2C 43    CD,77,BC,30,18,C
021010:  35 2C 32 31 2C 37 30 2C 30 31 2C 43 44 2C 38 33    5,21,70,01,CD,83
021020:  2C 42 43 00 45 00 78 05 8C 20 43 31 2C 32 31 2C    ,BC.E.x.. C1,21,
021030:  37 30 2C 30 31 2C 30 39 2C 45 42 2C 32 31 2C 36    70,01,09,EB,21,6
021040:  36 2C 41 45 2C 30 36 2C 30 38 2C 37 33 2C 32 33    6,AE,06,08,73,23
021050:  2C 37 32 2C 32 33 2C 31 30 2C 46 41 2C 43 44 2C    ,72,23,10,FA,CD,
021060:  37 41 2C 42 43 2C 43 39 00 1C 00 82 05 A4 20 19    7A,BC,C9...... .
021070:  81 2C 22 43 41 4C 4C 20 26 31 34 30 22 F4 FF 03    .,"CALL &140"...
021080:  28 19 0D 29 00 13 00 8C 05 A4 20 8D 20 14 2C 0E    (..)...... . .,.
021090:  2C 0E 2C 0E 2C 19 81 00 06 00 96 05 C9 00 5B 00    ,.,.,.........[.
0210A0:  A0 05 A1 20 0D 00 00 66 6C 61 E7 EF 0F 20 EB 20    ... ...fla... . 
0210B0:  7C 00 54 41 50 C5 01 BF 23 12 2C 22 43 55 52 52    |.TAP...#.,"CURR
0210C0:  45 4E 54 20 4D 4F 44 45 3A 20 7C 54 41 50 45 22    ENT MODE: |TAPE"
0210D0:  01 C9 20 01 97 20 7C 00 44 49 53 C3 01 BF 23 12    .. .. |.DIS...#.
0210E0:  2C 22 43 55 52 52 45 4E 54 20 4D 4F 44 45 3A 20    ,"CURRENT MODE: 
0210F0:  7C 44 49 53 43 22 01 C9 00 31 00 AA 05 C5 20 2A    |DISC"...1.... *
021100:  2C 22 29 22 29 20 3D 3D 20 30 29 20 7B 0D 0A 09    ,")") == 0) {...
021110:  09 69 66 20 28 65 6E 64 73 74 28 29 29 20 62 72    .if (endst()) br
021120:  65 61 6B 3B 0D 0A 09 09 65 78 70 72 65 73 73 69    eak;....expressi
021130:  6F 6E 28 29 3B 09 2F 2A 20 67 65 74 20 61 6E 20    on();./* get an 
021140:  61 72 67 75 6D 65 6E 74 20 2A 2F 0D 0A 09 09 69    argument */....i
021150:  66 20 28 70 74 72 20 3D 3D 20 30 29 20 73 77 61    f (ptr == 0) swa
021160:  70 73 74 6B 28 29 3B 20 2F 2A 20 64 6F 6E 27 74    pstk(); /* don't
021170:  20 70 75 73 68 20 61 64 64 72 20 2A 2F 0D 0A 09     push addr */...
021180:  09 70 75 73 68 28 29 3B 09 09 2F 2A 20 70 75 73    .push();../* pus
021190:  68 20 61 72 67 75 6D 65 6E 74 20 2A 2F 0D 0A 09    h argument */...
0211A0:  09 6E 61 72 67 73 3D 6E 61 72 67 73 2B 32 3B 09    .nargs=nargs+2;.
0211B0:  2F 2A 20 63 6F 75 6E 74 20 61 72 67 73 2A 32 20    /* count args*2 
0211C0:  2A 2F 0D 0A 09 09 69 66 20 28 6D 61 74 63 68 28    */....if (match(
0211D0:  22 2C 22 29 20 3D 3D 20 30 29 20 62 72 65 61 6B    ",") == 0) break
0211E0:  3B 0D 0A 09 09 7D 0D 0A 09 6E 65 65 64 62 72 61    ;....}...needbra
0211F0:  63 6B 28 22 29 22 29 3B 0D 0A 09 69 66 20 28 70    ck(")");...if (p
021200:  74 72 29 20 63 61 6C 6C 28 70 74 72 29 3B 20 65    tr) call(ptr); e
021210:  6C 73 65 20 63 61 6C 6C 73 74 6B 28 29 3B 0D 0A    lse callstk();..
021220:  09 73 70 3D 6D 6F 64 73 74 6B 28 73 70 2B 6E 61    .sp=modstk(sp+na
021230:  72 67 73 29 3B 20 20 20 20 2F 2A 20 63 6C 65 61    rgs);    /* clea
021240:  6E 20 75 70 20 61 72 67 75 6D 65 6E 74 73 20 2A    n up arguments *
021250:  2F 0D 0A 09 7D 0D 0A 6A 75 6E 6B 28 29 0D 0A 7B    /...}..junk()..{
021260:  20 20 20 20 20 20 20 69 66 28 61 6E 28 69 6E 62           if(an(inb
021270:  79 74 65 28 29 29 29 20 77 68 69 6C 65 28 61 6E    yte())) while(an
021280:  28 63 68 28 29 29 29 20 67 63 68 28 29 3B 0D 0A    (ch())) gch();..
021290:  09 65 6C 73 65 20 77 68 69 6C 65 28 61 6E 28 63    .else while(an(c
0212A0:  68 28 29 29 20 3D 3D 20 30 29 20 7B 0D 0A 09 09    h()) == 0) {....
0212B0:  69 66 28 63 68 28 29 20 3D 3D 20 30 29 20 62 72    if(ch() == 0) br
0212C0:  65 61 6B 3B 0D 0A 09 09 67 63 68 28 29 3B 0D 0A    eak;....gch();..
0212D0:  09 09 7D 0D 0A 09 62 6C 61 6E 6B 73 28 29 3B 0D    ..}...blanks();.
0212E0:  0A 09 7D 0D 0A 65 6E 64 73 74 28 29 0D 0A 7B 0D    ..}..endst()..{.
0212F0:  0A 09 62 6C 61 6E 6B 73 28 29 3B 0D 0A 09 72 65    ..blanks();...re
021300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0213A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0213B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0213C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0213D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0213E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0213F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0214A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0214B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0214C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0214D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0214E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0214F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
021500:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
021510:  1C 00 01 00 02 09 52 E5 1C 00 C1 02 00 00 00 02    ......R.........
021520:  1C 00 C6 02 00 00 00 02 1C 00 C2 02 00 00 00 02    ................
021530:  1C 00 C7 02 00 00 00 02 1C 00 C3 02 00 00 00 02    ................
021540:  1C 00 C8 02 00 00 00 02 1C 00 C4 02 00 00 00 02    ................
021550:  1C 00 C9 02 00 00 00 02 1C 00 C5 02 00 00 00 02    ................
021560:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
021570:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
021580:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
021590:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0215A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0215B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0215C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0215D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0215E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0215F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
021600:  74 75 72 6E 20 28 28 73 74 72 65 71 28 6C 69 6E    turn ((streq(lin
021610:  65 2B 6C 70 74 72 2C 22 3B 22 29 20 7C 7C 28 63    e+lptr,";") ||(c
021620:  68 28 29 20 3D 3D 20 30 29 29 29 3B 0D 0A 09 7D    h() == 0)));...}
021630:  0D 0A 73 75 62 65 72 72 6F 72 28 73 6E 61 6D 65    ..suberror(sname
021640:  29 0D 0A 63 68 61 72 20 2A 73 6E 61 6D 65 3B 0D    )..char *sname;.
021650:  0A 7B 0D 0A 09 63 68 61 72 20 6D 73 67 5B 38 30    .{...char msg[80
021660:  5D 3B 0D 0A 0D 0A 09 73 74 72 63 70 79 28 6D 73    ];.....strcpy(ms
021670:  67 2C 22 69 64 65 6E 74 69 66 69 65 72 20 5C 22    g,"identifier \"
021680:  22 29 3B 0D 0A 09 73 74 72 63 61 74 28 6D 73 67    ");...strcat(msg
021690:  2C 73 6E 61 6D 65 29 3B 0D 0A 09 73 74 72 63 61    ,sname);...strca
0216A0:  74 28 6D 73 67 2C 22 5C 22 20 69 73 20 6E 6F 74    t(msg,"\" is not
0216B0:  20 61 20 76 61 69 6C 64 20 61 72 72 61 79 20 62     a vaild array b
0216C0:  61 73 65 22 29 3B 0D 0A 09 65 72 72 6F 72 5F 70    ase");...error_p
0216D0:  72 74 28 6D 73 67 29 3B 0D 0A 09 77 68 69 6C 65    rt(msg);...while
0216E0:  28 31 29 20 7B 0D 0A 09 09 69 66 20 28 65 6E 64    (1) {....if (end
0216F0:  73 74 28 29 29 20 72 65 74 75 72 6E 3B 0D 0A 09    st()) return;...
021700:  09 69 66 20 28 63 68 28 29 3D 3D 27 5D 27 29 20    .if (ch()==']') 
021710:  7B 0D 0A 09 09 09 67 63 68 28 29 3B 0D 0A 09 09    {.....gch();....
021720:  09 72 65 74 75 72 6E 3B 0D 0A 09 09 09 7D 0D 0A    .return;.....}..
021730:  09 09 67 63 68 28 29 3B 0D 0A 09 09 7D 0D 0A 09    ..gch();....}...
021740:  7D 0D 0A 0D 0A 69 6C 6C 6E 61 6D 65 28 29 0D 0A    }....illname()..
021750:  7B 0D 0A 09 65 72 72 6F 72 28 22 69 6C 6C 65 67    {...error("illeg
021760:  61 6C 20 73 79 6D 62 6F 6C 20 6E 61 6D 65 22 29    al symbol name")
021770:  3B 0D 0A 09 6A 75 6E 6B 28 29 3B 0D 0A 09 7D 0D    ;...junk();...}.
021780:  0A 75 6E 64 65 66 69 6E 65 28 73 6E 61 6D 65 29    .undefine(sname)
021790:  0D 0A 63 68 61 72 20 2A 73 6E 61 6D 65 3B 0D 0A    ..char *sname;..
0217A0:  7B 0D 0A 09 63 68 61 72 20 6D 73 67 5B 38 30 5D    {...char msg[80]
0217B0:  3B 0D 0A 09 73 74 72 63 70 79 28 6D 73 67 2C 22    ;...strcpy(msg,"
0217C0:  75 6E 64 65 66 69 6E 65 20 69 64 65 6E 74 69 66    undefine identif
0217D0:  69 65 72 20 5C 22 22 29 3B 0D 0A 09 73 74 72 63    ier \"");...strc
0217E0:  61 74 28 6D 73 67 2C 73 6E 61 6D 65 29 3B 0D 0A    at(msg,sname);..
0217F0:  09 73 74 72 63 61 74 28 6D 73 67 2C 22 5C 22 22    .strcat(msg,"\""
021800:  7A 3B 0D 0A 09 7D 0D 0A 63 68 28 29 0D 0A 7B 0D    z;...}..ch()..{.
021810:  0A 09 72 65 74 75 72 6E 20 6C 69 6E 65 5B 6C 70    ..return line[lp
021820:  74 72 5D 3B 0D 0A 09 7D 0D 0A 6E 63 68 28 29 0D    tr];...}..nch().
021830:  0A 7B 0D 0A 20 20 20 20 20 20 20 69 66 28 63 68    .{..       if(ch
021840:  28 29 20 3D 3D 20 30 29 20 72 65 74 75 72 6E 20    () == 0) return 
021850:  30 3B 0D 0A 09 65 6C 73 65 20 72 65 74 75 72 6E    0;...else return
021860:  28 6C 69 6E 65 5B 6C 70 74 72 2B 31 5D 29 3B 0D    (line[lptr+1]);.
021870:  0A 09 7D 0D 0A 67 63 68 28 29 0D 0A 7B 20 20 20    ..}..gch()..{   
021880:  20 20 20 20 69 66 28 63 68 28 29 20 3D 3D 20 30        if(ch() == 0
021890:  29 20 72 65 74 75 72 6E 20 30 3B 0D 0A 09 65 6C    ) return 0;...el
0218A0:  73 65 20 72 65 74 75 72 6E 20 6C 69 6E 65 5B 6C    se return line[l
0218B0:  70 74 72 2B 2B 5D 3B 0D 0A 09 7D 0D 0A 6B 69 6C    ptr++];...}..kil
0218C0:  6C 28 29 0D 0A 7B 20 20 20 20 20 20 20 6C 70 74    l()..{       lpt
0218D0:  72 3D 30 3B 0D 0A 09 6C 69 6E 65 5B 30 5D 3D 30    r=0;...line[0]=0
0218E0:  3B 0D 0A 09 7D 0D 0A 69 6E 62 79 74 65 28 29 0D    ;...}..inbyte().
0218F0:  0A 7B 0D 0A 09 77 68 69 6C 65 20 28 21 6C 69 6E    .{...while (!lin
021900:  65 5B 6C 70 74 72 5D 29 20 7B 0D 0A 09 09 69 66    e[lptr]) {....if
021910:  20 28 65 6F 66 29 20 72 65 74 75 72 6E 20 30 3B     (eof) return 0;
021920:  0D 0A 09 09 69 6E 6C 69 6E 65 28 29 3B 0D 0A 09    ....inline();...
021930:  09 70 72 65 70 72 6F 63 65 73 73 28 29 3B 0D 0A    .preprocess();..
021940:  09 09 7D 0D 0A 09 72 65 74 75 72 6E 20 67 63 68    ..}...return gch
021950:  28 29 3B 0D 0A 09 7D 0D 0A 69 6E 63 68 61 72 28    ();...}..inchar(
021960:  29 0D 0A 09 7B 0D 0A 09 69 66 20 28 21 6C 69 6E    )...{...if (!lin
021970:  65 5B 6C 70 74 72 5D 29 20 69 6E 6C 69 6E 65 28    e[lptr]) inline(
021980:  29 3B 0D 0A 09 69 66 20 28 65 6F 66 29 20 72 65    );...if (eof) re
021990:  74 75 72 6E 20 30 3B 0D 0A 09 72 65 74 75 72 6E    turn 0;...return
0219A0:  20 28 67 63 68 28 29 29 3B 0D 0A 09 7D 0D 0A 69     (gch());...}..i
0219B0:  6E 6C 69 6E 65 28 29 0D 0A 7B 0D 0A 09 69 6E 74    nline()..{...int
0219C0:  20 6B 3B 0D 0A 09 63 68 61 72 20 2A 75 6E 69 74     k;...char *unit
0219D0:  3B 0D 0A 09 77 68 69 6C 65 28 31 29 20 7B 0D 0A    ;...while(1) {..
0219E0:  09 09 6B 69 6C 6C 28 29 3B 0D 0A 09 09 69 66 20    ..kill();....if 
0219F0:  28 69 6E 70 75 74 3D 3D 30 29 6F 70 65 6E 69 6E    (input==0)openin
021A00:  29 3B 0D 0A 09 65 72 72 6F 72 5F 70 72 69 6E 74    );...error_print
021A10:  28 6D 73 67 29 3B 0D 0A 09 7D 0D 0A 2F 2A 09 09    (msg);...}../*..
021A20:  09 09 09 09 2A 2F 0D 0A 2F 2A 09 77 72 69 74 74    ....*/../*.writt
021A30:  65 6E 20 42 79 20 4D 69 6B 65 20 42 65 72 6E 73    en By Mike Berns
021A40:  6F 6E 20 34 2F 38 31 09 09 2A 2F 0D 0A 2F 2A 09    on 4/81..*/../*.
021A50:  09 09 09 09 09 2A 2F 0D 0A 6D 75 6C 74 69 64 65    .....*/..multide
021A60:  66 28 73 6E 61 6D 65 29 0D 0A 63 68 61 72 20 2A    f(sname)..char *
021A70:  73 6E 61 6D 65 3B 0D 0A 7B 0D 0A 09 63 68 61 72    sname;..{...char
021A80:  20 6D 73 67 5B 38 30 5D 3B 0D 0A 09 73 74 72 63     msg[80];...strc
021A90:  70 79 28 6D 73 67 2C 22 61 6C 72 65 61 64 79 20    py(msg,"already 
021AA0:  64 65 66 69 6E 65 64 20 73 79 6D 62 6F 6C 20 6F    defined symbol o
021AB0:  72 20 66 75 6E 63 74 69 6F 6E 20 5C 22 22 29 3B    r function \"");
021AC0:  0D 0A 09 73 74 72 63 61 74 28 6D 73 67 2C 73 6E    ...strcat(msg,sn
021AD0:  61 6D 65 29 3B 0D 0A 09 73 74 72 63 61 74 28 6D    ame);...strcat(m
021AE0:  73 67 2C 22 5C 22 22 29 3B 0D 0A 09 65 72 72 6F    sg,"\"");...erro
021AF0:  72 5F 70 72 69 6E 74 28 6D 73 67 29 3B 0D 0A 09    r_print(msg);...
021B00:  7D 0D 0A 6E 65 65 64 62 72 61 63 6B 28 73 74 72    }..needbrack(str
021B10:  29 0D 0A 63 68 61 72 20 2A 73 74 72 3B 0D 0A 7B    )..char *str;..{
021B20:  0D 0A 09 69 66 20 28 21 6D 61 74 63 68 28 73 74    ...if (!match(st
021B30:  72 29 29 20 65 72 72 6F 72 28 22 6D 69 73 73 69    r)) error("missi
021B40:  6E 67 20 62 72 61 6B 65 74 22 29 3B 0D 0A 09 7D    ng braket");...}
021B50:  0D 0A 6E 65 65 64 6C 76 61 6C 28 29 0D 0A 7B 0D    ..needlval()..{.
021B60:  0A 09 65 72 72 6F 72 28 22 6D 75 73 74 20 62 65    ..error("must be
021B70:  20 6C 76 61 6C 75 65 22 29 3B 0D 0A 09 7D 0D 0A     lvalue");...}..
021B80:  66 69 6E 64 67 6C 62 28 73 6E 61 6D 65 29 0D 0A    findglb(sname)..
021B90:  63 68 61 72 20 2A 73 6E 61 6D 65 3B 0D 0A 7B 0D    char *sname;..{.
021BA0:  0A 09 63 68 61 72 20 2A 70 74 72 3B 0D 0A 09 70    ..char *ptr;...p
021BB0:  74 72 3D 73 74 61 72 74 67 6C 62 3B 0D 0A 09 77    tr=startglb;...w
021BC0:  68 69 6C 65 28 70 74 72 21 3D 67 6C 62 70 74 72    hile(ptr!=glbptr
021BD0:  29 20 7B 0D 0A 09 09 69 66 20 28 61 73 74 72 65    ) {....if (astre
021BE0:  71 28 73 6E 61 6D 65 2C 70 74 72 2C 6E 61 6D 65    q(sname,ptr,name
021BF0:  6D 61 78 29 29 20 72 65 74 75 72 6E 20 70 74 72    max)) return ptr
021C00:  28 29 3B 0D 0A 09 09 69 66 20 28 65 6F 66 29 20    ();....if (eof) 
021C10:  72 65 74 75 72 6E 3B 0D 0A 09 09 69 66 20 28 69    return;....if (i
021C20:  6E 70 75 74 32 29 20 7B 0D 0A 09 09 09 75 6E 69    nput2) {.....uni
021C30:  74 3D 66 69 6E 70 32 3B 0D 0A 09 09 09 6C 69 6E    t=finp2;.....lin
021C40:  65 32 2B 2B 3B 0D 0A 09 09 09 7D 0D 0A 09 09 65    e2++;.....}....e
021C50:  6C 73 65 20 7B 0D 0A 09 09 09 75 6E 69 74 3D 66    lse {.....unit=f
021C60:  69 6E 70 3B 0D 0A 09 09 09 6C 69 6E 65 31 2B 2B    inp;.....line1++
021C70:  3B 0D 0A 09 09 09 7D 0D 0A 09 09 77 68 69 6C 65    ;.....}....while
021C80:  28 28 6B 3D 67 65 74 63 28 75 6E 69 74 29 29 20    ((k=getc(unit)) 
021C90:  21 3D 20 45 52 52 4F 52 29 20 7B 0D 0A 09 09 09    != ERROR) {.....
021CA0:  69 66 28 28 6B 3D 3D 27 5C 6E 27 29 20 7C 7C 20    if((k=='\n') || 
021CB0:  28 6C 70 74 72 3E 3D 6C 69 6E 65 6D 61 78 29 0D    (lptr>=linemax).
021CC0:  0A 09 09 09 09 7C 7C 20 28 6B 3D 3D 32 36 29 29    .....|| (k==26))
021CD0:  20 62 72 65 61 6B 3B 0D 0A 09 09 09 69 66 20 28     break;.....if (
021CE0:  6B 20 21 3D 20 27 5C 72 27 29 20 6C 69 6E 65 5B    k != '\r') line[
021CF0:  6C 70 74 72 2B 2B 5D 3D 6B 3B 0D 0A 09 09 09 7D    lptr++]=k;.....}
021D00:  0D 0A 09 09 6C 69 6E 65 5B 6C 70 74 72 5D 3D 30    ....line[lptr]=0
021D10:  3B 20 20 20 2F 2A 20 61 70 70 65 6E 64 20 6E 75    ;   /* append nu
021D20:  6C 6C 20 2A 2F 0D 0A 09 09 69 66 28 6B 3C 3D 30    ll */....if(k<=0
021D30:  20 7C 7C 20 6B 3D 3D 32 36 29 20 7B 0D 0A 09 09     || k==26) {....
021D40:  09 69 66 20 28 69 6E 70 75 74 32 29 20 7B 0D 0A    .if (input2) {..
021D50:  09 09 09 09 63 6C 6F 73 65 28 69 6E 70 75 74 32    ....close(input2
021D60:  29 3B 0D 0A 09 09 09 09 69 6E 70 75 74 32 3D 30    );......input2=0
021D70:  3B 0D 0A 09 09 09 09 7D 0D 0A 09 09 09 65 6C 73    ;......}.....els
021D80:  65 20 7B 0D 0A 09 09 09 09 63 6C 6F 73 65 28 69    e {......close(i
021D90:  6E 70 75 74 29 3B 0D 0A 09 09 09 09 69 6E 70 75    nput);......inpu
021DA0:  74 3D 30 3B 0D 0A 09 09 09 09 7D 0D 0A 09 09 09    t=0;......}.....
021DB0:  7D 0D 0A 09 09 69 66 28 6C 70 74 72 29 20 7B 0D    }....if(lptr) {.
021DC0:  0A 09 09 09 69 66 28 63 74 65 78 74 20 26 26 20    ....if(ctext && 
021DD0:  63 6D 6F 64 65 29 20 7B 0D 0A 09 09 09 09 63 6F    cmode) {......co
021DE0:  6D 6D 65 6E 74 28 29 3B 0D 0A 09 09 09 09 74 61    mment();......ta
021DF0:  62 28 29 3B 0D 0A 09 09 09 09 6F 75 74 73 74 72    b();......outstr
021E00:  3B 0D 0A 09 09 70 74 72 3D 70 74 72 2B 73 79 6D    ;....ptr=ptr+sym
021E10:  73 69 7A 3B 0D 0A 09 09 7D 0D 0A 09 72 65 74 75    siz;....}...retu
021E20:  72 6E 20 30 3B 0D 0A 09 7D 0D 0A 66 69 6E 64 6C    rn 0;...}..findl
021E30:  6F 63 28 73 6E 61 6D 65 29 0D 0A 63 68 61 72 20    oc(sname)..char 
021E40:  2A 73 6E 61 6D 65 3B 0D 0A 7B 0D 0A 09 63 68 61    *sname;..{...cha
021E50:  72 20 2A 70 74 72 3B 0D 0A 09 70 74 72 3D 73 74    r *ptr;...ptr=st
021E60:  61 72 74 6C 6F 63 3B 0D 0A 09 77 68 69 6C 65 28    artloc;...while(
021E70:  70 74 72 21 3D 6C 6F 63 70 74 72 29 20 7B 0D 0A    ptr!=locptr) {..
021E80:  09 09 69 66 28 61 73 74 72 65 71 28 73 6E 61 6D    ..if(astreq(snam
021E90:  65 2C 70 74 72 2C 6E 61 6D 65 6D 61 78 29 29 72    e,ptr,namemax))r
021EA0:  65 74 75 72 6E 20 70 74 72 3B 0D 0A 09 09 70 74    eturn ptr;....pt
021EB0:  72 3D 70 74 72 2B 73 79 6D 73 69 7A 3B 0D 0A 09    r=ptr+symsiz;...
021EC0:  09 7D 0D 0A 09 72 65 74 75 72 6E 20 30 3B 0D 0A    .}...return 0;..
021ED0:  09 7D 0D 0A 2F 2A 20 54 65 73 74 20 69 66 20 6E    .}../* Test if n
021EE0:  65 78 74 20 69 6E 70 75 74 20 73 74 72 69 6E 67    ext input string
021EF0:  20 69 73 20 6C 65 67 61 6C 20 73 79 6D 62 6F 6C     is legal symbol
021F00:  20 6E 61 6D 65 20 2A 2F 0D 0A 73 79 6D 6E 61 6D     name */..symnam
021F10:  65 28 73 6E 61 6D 65 29 0D 0A 63 68 61 72 20 2A    e(sname)..char *
021F20:  73 6E 61 6D 65 3B 0D 0A 7B 0D 0A 09 69 6E 74 20    sname;..{...int 
021F30:  6B 3B 63 68 61 72 20 63 3B 0D 0A 09 62 6C 61 6E    k;char c;...blan
021F40:  6B 73 28 29 3B 0D 0A 09 69 66 20 28 21 61 6C 70    ks();...if (!alp
021F50:  68 61 28 63 68 28 29 29 29 20 72 65 74 75 72 6E    ha(ch())) return
021F60:  20 30 3B 0D 0A 09 6B 3D 30 3B 0D 0A 09 77 68 69     0;...k=0;...whi
021F70:  6C 65 28 61 6E 28 63 68 28 29 29 29 20 73 6E 61    le(an(ch())) sna
021F80:  6D 65 5B 6B 2B 2B 5D 3D 67 63 68 28 29 3B 0D 0A    me[k++]=gch();..
021F90:  09 73 6E 61 6D 65 5B 6B 5D 3D 30 3B 0D 0A 09 72    .sname[k]=0;...r
021FA0:  65 74 75 72 6E 20 31 3B 0D 0A 09 7D 0D 0A 2F 2A    eturn 1;...}../*
021FB0:  20 52 65 74 75 72 6E 20 6E 65 78 74 20 61 76 61     Return next ava
021FC0:  69 6C 20 69 6E 74 65 72 6E 61 6C 20 6C 61 62 65    il internal labe
021FD0:  6C 20 6E 75 6D 62 65 72 20 2A 2F 0D 0A 67 65 74    l number */..get
021FE0:  6C 61 62 65 6C 28 29 0D 0A 7B 0D 0A 09 72 65 74    label()..{...ret
021FF0:  75 72 6E 20 28 2B 2B 6E 78 74 6C 61 62 29 3B 0D    urn (++nxtlab);.
022000:  28 6C 69 6E 65 29 3B 0D 0A 09 09 09 09 6E 6C 28    (line);......nl(
022010:  29 3B 0D 0A 09 09 09 09 7D 0D 0A 09 09 09 6C 70    );......}.....lp
022020:  74 72 3D 30 3B 0D 0A 09 09 09 72 65 74 75 72 6E    tr=0;.....return
022030:  3B 0D 0A 09 09 09 7D 0D 0A 09 09 7D 0D 0A 09 7D    ;.....}....}...}
022040:  0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
022050:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
022060:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
022070:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
022080:  09 22 5E 5B 52 4F 22 09 20 20 2E 2E 2E 45 53 43    ."^[RO".  ...ESC
022090:  41 50 45 2C 52 2C 4F 0D 0A 38 20 20 4E 20 53 09    APE,R,O..8  N S.
0220A0:  20 22 5E 48 22 09 20 20 20 43 55 52 53 4F 52 20     "^H".   CURSOR 
0220B0:  4C 45 46 54 0D 0A 38 20 20 20 20 20 43 20 20 22    LEFT..8     C  "
0220C0:  5E 55 22 09 20 20 20 43 55 52 53 4F 52 20 43 4F    ^U".   CURSOR CO
0220D0:  4C 55 4D 4E 20 30 0D 0A 31 33 20 20 20 20 43 20    LUMN 0..13    C 
0220E0:  22 5E 27 23 39 44 27 22 20 20 48 4F 4D 45 2E 2E    "^'#9D'"  HOME..
0220F0:  2E 0D 0A 45 20 20 23 39 44 09 22 5E 5B 48 22 09    ...E  #9D."^[H".
022100:  20 20 2E 2E 2E 45 53 43 41 50 45 2C 48 0D 0A 36      ...ESCAPE,H..6
022110:  36 20 4E 20 53 20 43 20 22 5E 27 23 39 45 27 22    6 N S C "^'#9E'"
022120:  20 45 58 50 41 4E 44 20 45 53 43 20 4B 45 59 2E     EXPAND ESC KEY.
022130:  2E 2E 0D 0A 45 20 20 23 39 45 09 20 22 5E 5B 5E    ....E  #9E. "^[^
022140:  5B 22 20 20 20 2E 2E 2E 45 53 43 41 50 45 2C 45    ["   ...ESCAPE,E
022150:  53 43 41 50 45 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A    SCAPE...........
022160:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
022170:  1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A    ................
022180:  00 6D 73 E2 28 0D 00 00 68 ED F4 0F 29 00 3F 00    .ms.(...h...).?.
022190:  58 02 8C 20 45 35 2C 32 41 2C 30 30 2C 30 30 2C    X.. E5,2A,00,00,
0221A0:  32 32 2C 38 30 2C 42 43 2C 33 41 2C 30 30 2C 30    22,80,BC,3A,00,0
0221B0:  30 2C 33 32 2C 38 32 2C 42 43 2C 43 44 2C 38 30    0,32,82,BC,CD,80
0221C0:  2C 42 43 2C 32 31 2C 30 30 2C 30 30 00 3F 00 62    ,BC,21,00,00.?.b
0221D0:  02 8C 20 32 32 2C 38 31 2C 42 43 2C 32 31 2C 38    .. 22,81,BC,21,8
0221E0:  30 2C 42 43 2C 33 36 2C 43 33 2C 45 31 2C 44 38    0,BC,36,C3,E1,D8
0221F0:  2C 43 38 2C 46 45 2C 31 41 2C 33 37 2C 33 46 2C    ,C8,FE,1A,37,3F,
022200:  0A 09 7D 0D 0A 2F 2A 20 50 72 69 6E 74 20 6C 61    ..}../* Print la
022210:  62 65 6C 20 61 74 20 73 74 61 72 74 20 6F 66 20    bel at start of 
022220:  6C 69 6E 65 20 2A 2F 0D 0A 73 70 72 69 6E 74 6C    line */..sprintl
022230:  61 62 65 6C 28 6C 61 62 65 6C 29 0D 0A 69 6E 74    abel(label)..int
022240:  20 6C 61 62 65 6C 3B 0D 0A 7B 0D 0A 09 70 72 69     label;..{...pri
022250:  6E 74 6C 61 62 65 6C 28 6C 61 62 65 6C 29 3B 0D    ntlabel(label);.
022260:  0A 09 63 6F 6C 28 29 3B 0D 0A 09 6E 6C 28 29 3B    ..col();...nl();
022270:  0D 0A 09 7D 0D 0A 2F 2A 20 50 72 69 6E 74 20 73    ...}../* Print s
022280:  70 65 63 69 66 69 65 64 20 6E 75 6D 62 65 72 20    pecified number 
022290:  61 73 20 6C 61 62 65 6C 20 2A 2F 0D 0A 70 72 69    as label */..pri
0222A0:  6E 74 6C 61 62 65 6C 28 6C 61 62 65 6C 29 0D 0A    ntlabel(label)..
0222B0:  69 6E 74 20 6C 61 62 65 6C 3B 0D 0A 7B 0D 0A 09    int label;..{...
0222C0:  6F 75 74 73 74 72 28 22 40 22 29 3B 0D 0A 09 6F    outstr("@");...o
0222D0:  75 74 64 65 63 28 6C 61 62 65 6C 29 3B 0D 0A 09    utdec(label);...
0222E0:  7D 0D 0A 2F 2A 20 54 65 73 74 20 69 66 20 67 69    }../* Test if gi
0222F0:  76 65 6E 20 63 68 61 72 61 63 74 65 72 20 69 73    ven character is
022300:  20 61 6C 70 68 61 20 2A 2F 0D 0A 61 6C 70 68 61     alpha */..alpha
022310:  28 63 29 0D 0A 63 68 61 72 20 63 3B 0D 0A 7B 0D    (c)..char c;..{.
022320:  0A 09 72 65 74 75 72 6E 28 28 63 3E 3D 27 61 27    ..return((c>='a'
022330:  20 26 26 20 63 3C 3D 27 7A 27 29 20 7C 7C 0D 0A     && c<='z') ||..
022340:  09 09 28 63 3E 3D 27 41 27 20 26 26 20 63 3C 3D    ..(c>='A' && c<=
022350:  27 5A 27 29 20 7C 7C 20 63 3D 3D 27 5F 27 29 3B    'Z') || c=='_');
022360:  0D 0A 09 7D 0D 0A 2F 2A 20 54 65 73 74 20 69 66    ...}../* Test if
022370:  20 67 69 76 65 6E 20 63 68 61 72 61 63 74 65 72     given character
022380:  20 69 73 20 6E 75 6D 65 72 69 63 20 2A 2F 0D 0A     is numeric */..
022390:  6E 75 6D 65 72 69 63 28 63 29 0D 0A 63 68 61 72    numeric(c)..char
0223A0:  20 63 3B 0D 0A 7B 0D 0A 09 72 65 74 75 72 6E 28     c;..{...return(
0223B0:  63 3E 3D 27 30 27 20 26 26 20 63 3C 3D 27 39 27    c>='0' && c<='9'
0223C0:  29 3B 0D 0A 09 7D 0D 0A 2F 2A 20 54 65 73 74 20    );...}../* Test 
0223D0:  69 66 20 67 69 76 65 6E 20 63 68 61 72 61 63 74    if given charact
0223E0:  65 72 20 69 73 20 61 6C 70 68 61 6E 75 6D 65 72    er is alphanumer
0223F0:  69 63 20 2A 2F 0D 0A 61 6E 28 63 29 0D 0A 09 63    ic */..an(c)...c
022400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0224A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0224B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0224C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0224D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0224E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0224F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0225A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0225B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0225C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0225D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0225E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0225F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022600:  68 61 72 20 63 3B 0D 0A 7B 20 20 20 20 20 20 20    har c;..{       
022610:  72 65 74 75 72 6E 28 61 6C 70 68 61 28 63 29 20    return(alpha(c) 
022620:  7C 7C 20 6E 75 6D 65 72 69 63 28 63 29 29 3B 0D    || numeric(c));.
022630:  0A 09 7D 0D 0A 2F 2A 20 50 72 69 6E 74 20 61 20    ..}../* Print a 
022640:  63 61 72 72 69 61 67 65 20 72 65 74 75 72 6E 20    carriage return 
022650:  61 6E 64 20 61 20 73 74 72 69 6E 67 20 6F 6E 6C    and a string onl
022660:  79 20 74 6F 20 63 6F 6E 73 6F 6C 65 20 2A 2F 0D    y to console */.
022670:  0A 70 6C 28 73 74 72 29 0D 0A 63 68 61 72 20 2A    .pl(str)..char *
022680:  73 74 72 3B 0D 0A 7B 0D 0A 09 70 75 74 63 68 28    str;..{...putch(
022690:  27 5C 72 27 29 3B 0D 0A 09 77 68 69 6C 65 20 28    '\r');...while (
0226A0:  2A 73 74 72 29 20 70 75 74 63 68 28 2A 73 74 72    *str) putch(*str
0226B0:  2B 2B 29 3B 0D 0A 09 7D 0D 0A 61 64 64 77 68 69    ++);...}..addwhi
0226C0:  6C 65 28 70 74 72 29 0D 0A 09 69 6E 74 20 70 74    le(ptr)...int pt
0226D0:  72 5B 5D 3B 0D 0A 7B 0D 0A 09 69 6E 74 20 6B 3B    r[];..{...int k;
0226E0:  0D 0A 09 69 66 20 28 77 71 70 74 72 3D 3D 77 71    ...if (wqptr==wq
0226F0:  6D 61 78 29 20 7B 0D 0A 09 09 65 72 72 6F 72 28    max) {....error(
022700:  22 74 6F 6F 20 6D 61 6E 79 20 61 63 74 69 76 65    "too many active
022710:  20 77 68 69 6C 65 73 22 29 3B 0D 0A 09 09 72 65     whiles");....re
022720:  74 75 72 6E 3B 0D 0A 09 09 7D 0D 0A 09 6B 3D 30    turn;....}...k=0
022730:  3B 0D 0A 09 77 68 69 6C 65 20 28 6B 3C 77 71 73    ;...while (k<wqs
022740:  69 7A 29 20 2A 77 71 70 74 72 2B 2B 20 3D 20 70    iz) *wqptr++ = p
022750:  74 72 5B 6B 2B 2B 5D 3B 0D 0A 09 7D 0D 0A 64 65    tr[k++];...}..de
022760:  6C 77 68 69 6C 65 28 29 0D 0A 7B 0D 0A 09 69 66    lwhile()..{...if
022770:  20 28 72 65 61 64 77 68 69 6C 65 28 29 29 20 77     (readwhile()) w
022780:  71 70 74 72 3D 77 71 70 74 72 2D 77 71 73 69 7A    qptr=wqptr-wqsiz
022790:  3B 0D 0A 09 7D 0D 0A 72 65 61 64 77 68 69 6C 65    ;...}..readwhile
0227A0:  28 29 0D 0A 7B 0D 0A 09 69 66 20 28 77 71 70 74    ()..{...if (wqpt
0227B0:  72 3D 3D 77 71 29 20 7B 0D 0A 09 09 65 72 72 6F    r==wq) {....erro
0227C0:  72 28 22 6E 6F 20 61 63 74 69 76 65 20 77 68 69    r("no active whi
0227D0:  6C 65 22 29 3B 0D 0A 09 09 72 65 74 75 72 6E 20    le");....return 
0227E0:  30 3B 0D 0A 09 09 7D 0D 0A 09 65 6C 73 65 20 72    0;....}...else r
0227F0:  65 74 75 72 6E 20 77 71 70 74 72 2D 77 71 73 69    eturn wqptr-wqsi
022800:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
022810:  1D 00 01 00 02 09 52 E5 1D 00 C1 02 00 00 00 02    ......R.........
022820:  1D 00 C6 02 00 00 00 02 1D 00 C2 02 00 00 00 02    ................
022830:  1D 00 C7 02 00 00 00 02 1D 00 C3 02 00 00 00 02    ................
022840:  1D 00 C8 02 00 00 00 02 1D 00 C4 02 00 00 00 02    ................
022850:  1D 00 C9 02 00 00 00 02 1D 00 C5 02 00 00 00 02    ................
022860:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
022870:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
022880:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
022890:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0228A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0228B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0228C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0228D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0228E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0228F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
022900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0229A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0229B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0229C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0229D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0229E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0229F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022A00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022A10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022A20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022A30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022A40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022A50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022A60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022A70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022A80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022A90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022AA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022AB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022AC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022AD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022AE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022AF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022B00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022B10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022B20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022B30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022B40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022B50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022B60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022B70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022B80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022B90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022BA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022BB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022BC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022BD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022BE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022BF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022C00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022C10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022C20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022C30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022C40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022C50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022C60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022C70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022C80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022C90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022CA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022CB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022CC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022CD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022CE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022CF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022D00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022D10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022D20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022D30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022D40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022D50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022D60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022D70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022D80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022D90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022DA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022DB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022DC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022DD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022DE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022DF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022E00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022E10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022E20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022E30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022E40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022E50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022E60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022E70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022E80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022E90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022EA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022EB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022EC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022ED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022EE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022EF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022F00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022F10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022F20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022F30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022F40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022F50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022F60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022F70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022F80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022F90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022FA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022FB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022FC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022FD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022FE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
022FF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0230A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0230B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0230C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0230D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0230E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0230F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0231A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0231B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0231C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0231D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0231E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0231F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0232A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0232B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0232C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0232D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0232E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0232F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0233A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0233B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0233C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0233D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0233E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0233F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0234A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0234B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0234C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0234D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0234E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0234F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0235A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0235B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0235C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0235D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0235E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0235F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0236A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0236B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0236C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0236D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0236E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0236F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0237A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0237B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0237C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0237D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0237E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0237F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0238A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0238B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0238C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0238D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0238E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0238F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0239A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0239B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0239C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0239D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0239E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0239F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023A00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023A10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023A20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023A30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023A40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023A50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023A60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023A70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023A80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023A90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023AA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023AB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023AC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023AD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023AE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023AF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023B00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
023B10:  1E 00 01 00 02 09 52 E5 1E 00 C1 02 00 00 00 02    ......R.........
023B20:  1E 00 C6 02 00 00 00 02 1E 00 C2 02 00 00 00 02    ................
023B30:  1E 00 C7 02 00 00 00 02 1E 00 C3 02 00 00 00 02    ................
023B40:  1E 00 C8 02 00 00 00 02 1E 00 C4 02 00 00 00 02    ................
023B50:  1E 00 C9 02 00 00 00 02 1E 00 C5 02 00 00 00 02    ................
023B60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
023B70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
023B80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
023B90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
023BA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
023BB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
023BC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
023BD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
023BE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
023BF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
023C00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023C10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023C20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023C30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023C40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023C50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023C60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023C70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023C80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023C90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023CA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023CB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023CC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023CD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023CE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023CF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023D00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023D10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023D20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023D30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023D40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023D50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023D60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023D70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023D80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023D90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023DA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023DB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023DC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023DD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023DE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023DF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023E00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023E10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023E20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023E30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023E40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023E50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023E60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023E70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023E80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023E90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023EA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023EB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023EC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023ED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023EE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023EF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023F00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023F10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023F20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023F30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023F40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023F50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023F60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023F70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023F80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023F90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023FA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023FB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023FC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023FD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023FE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
023FF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0240A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0240B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0240C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0240D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0240E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0240F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0241A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0241B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0241C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0241D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0241E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0241F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0242A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0242B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0242C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0242D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0242E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0242F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0243A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0243B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0243C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0243D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0243E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0243F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0244A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0244B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0244C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0244D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0244E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0244F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0245A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0245B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0245C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0245D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0245E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0245F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0246A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0246B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0246C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0246D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0246E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0246F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0247A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0247B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0247C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0247D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0247E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0247F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0248A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0248B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0248C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0248D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0248E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0248F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0249A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0249B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0249C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0249D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0249E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0249F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024A00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024A10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024A20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024A30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024A40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024A50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024A60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024A70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024A80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024A90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024AA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024AB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024AC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024AD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024AE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024AF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024B00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024B10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024B20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024B30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024B40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024B50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024B60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024B70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024B80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024B90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024BA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024BB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024BC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024BD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024BE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024BF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024C00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024C10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024C20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024C30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024C40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024C50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024C60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024C70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024C80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024C90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024CA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024CB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024CC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024CD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024CE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024CF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024D00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024D10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024D20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024D30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024D40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024D50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024D60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024D70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024D80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024D90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024DA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024DB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024DC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024DD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024DE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024DF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024E00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
024E10:  1F 00 01 00 02 09 52 E5 1F 00 C1 02 00 00 00 02    ......R.........
024E20:  1F 00 C6 02 00 00 00 02 1F 00 C2 02 00 00 00 02    ................
024E30:  1F 00 C7 02 00 00 00 02 1F 00 C3 02 00 00 00 02    ................
024E40:  1F 00 C8 02 00 00 00 02 1F 00 C4 02 00 00 00 02    ................
024E50:  1F 00 C9 02 00 00 00 02 1F 00 C5 02 00 00 00 02    ................
024E60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
024E70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
024E80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
024E90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
024EA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
024EB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
024EC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
024ED0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
024EE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
024EF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
024F00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024F10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024F20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024F30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024F40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024F50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024F60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024F70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024F80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024F90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024FA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024FB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024FC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024FD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024FE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
024FF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0250A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0250B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0250C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0250D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0250E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0250F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0251A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0251B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0251C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0251D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0251E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0251F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0252A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0252B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0252C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0252D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0252E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0252F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0253A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0253B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0253C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0253D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0253E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0253F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0254A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0254B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0254C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0254D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0254E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0254F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0255A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0255B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0255C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0255D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0255E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0255F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0256A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0256B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0256C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0256D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0256E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0256F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0257A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0257B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0257C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0257D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0257E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0257F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0258A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0258B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0258C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0258D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0258E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0258F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0259A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0259B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0259C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0259D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0259E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0259F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025A00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025A10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025A20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025A30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025A40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025A50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025A60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025A70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025A80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025A90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025AA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025AB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025AC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025AD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025AE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025AF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025B00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025B10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025B20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025B30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025B40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025B50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025B60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025B70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025B80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025B90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025BA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025BB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025BC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025BD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025BE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025BF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025C00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025C10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025C20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025C30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025C40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025C50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025C60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025C70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025C80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025C90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025CA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025CB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025CC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025CD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025CE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025CF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025D00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025D10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025D20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025D30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025D40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025D50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025D60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025D70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025D80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025D90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025DA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025DB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025DC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025DD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025DE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025DF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025E00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025E10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025E20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025E30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025E40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025E50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025E60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025E70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025E80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025E90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025EA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025EB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025EC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025ED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025EE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025EF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025F00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025F10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025F20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025F30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025F40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025F50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025F60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025F70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025F80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025F90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025FA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025FB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025FC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025FD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025FE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
025FF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0260A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0260B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0260C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0260D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0260E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0260F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026100:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
026110:  20 00 01 00 02 09 52 E5 20 00 C1 02 00 00 00 02     .....R. .......
026120:  20 00 C6 02 00 00 00 02 20 00 C2 02 00 00 00 02     ....... .......
026130:  20 00 C7 02 00 00 00 02 20 00 C3 02 00 00 00 02     ....... .......
026140:  20 00 C8 02 00 00 00 02 20 00 C4 02 00 00 00 02     ....... .......
026150:  20 00 C9 02 00 00 00 02 20 00 C5 02 00 00 00 02     ....... .......
026160:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
026170:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
026180:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
026190:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0261A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0261B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0261C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0261D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0261E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0261F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
026200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0262A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0262B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0262C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0262D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0262E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0262F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0263A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0263B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0263C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0263D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0263E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0263F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0264A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0264B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0264C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0264D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0264E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0264F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0265A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0265B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0265C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0265D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0265E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0265F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0266A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0266B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0266C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0266D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0266E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0266F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0267A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0267B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0267C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0267D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0267E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0267F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0268A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0268B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0268C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0268D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0268E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0268F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0269A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0269B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0269C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0269D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0269E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0269F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026A00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026A10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026A20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026A30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026A40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026A50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026A60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026A70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026A80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026A90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026AA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026AB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026AC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026AD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026AE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026AF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026B00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026B10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026B20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026B30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026B40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026B50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026B60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026B70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026B80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026B90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026BA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026BB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026BC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026BD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026BE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026BF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026C00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026C10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026C20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026C30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026C40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026C50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026C60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026C70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026C80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026C90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026CA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026CB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026CC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026CD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026CE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026CF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026D00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026D10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026D20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026D30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026D40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026D50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026D60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026D70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026D80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026D90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026DA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026DB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026DC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026DD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026DE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026DF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026E00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026E10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026E20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026E30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026E40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026E50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026E60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026E70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026E80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026E90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026EA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026EB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026EC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026ED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026EE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026EF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026F00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026F10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026F20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026F30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026F40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026F50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026F60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026F70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026F80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026F90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026FA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026FB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026FC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026FD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026FE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
026FF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0270A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0270B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0270C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0270D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0270E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0270F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0271A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0271B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0271C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0271D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0271E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0271F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0272A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0272B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0272C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0272D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0272E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0272F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0273A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0273B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0273C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0273D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0273E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0273F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027400:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
027410:  21 00 01 00 02 09 52 E5 21 00 C1 02 00 00 00 02    !.....R.!.......
027420:  21 00 C6 02 00 00 00 02 21 00 C2 02 00 00 00 02    !.......!.......
027430:  21 00 C7 02 00 00 00 02 21 00 C3 02 00 00 00 02    !.......!.......
027440:  21 00 C8 02 00 00 00 02 21 00 C4 02 00 00 00 02    !.......!.......
027450:  21 00 C9 02 00 00 00 02 21 00 C5 02 00 00 00 02    !.......!.......
027460:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
027470:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
027480:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
027490:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0274A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0274B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0274C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0274D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0274E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0274F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
027500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0275A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0275B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0275C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0275D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0275E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0275F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0276A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0276B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0276C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0276D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0276E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0276F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0277A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0277B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0277C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0277D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0277E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0277F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0278A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0278B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0278C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0278D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0278E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0278F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0279A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0279B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0279C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0279D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0279E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0279F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027A00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027A10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027A20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027A30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027A40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027A50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027A60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027A70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027A80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027A90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027AA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027AB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027AC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027AD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027AE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027AF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027B00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027B10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027B20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027B30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027B40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027B50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027B60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027B70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027B80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027B90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027BA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027BB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027BC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027BD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027BE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027BF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027C00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027C10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027C20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027C30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027C40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027C50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027C60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027C70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027C80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027C90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027CA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027CB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027CC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027CD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027CE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027CF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027D00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027D10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027D20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027D30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027D40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027D50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027D60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027D70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027D80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027D90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027DA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027DB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027DC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027DD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027DE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027DF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027E00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027E10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027E20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027E30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027E40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027E50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027E60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027E70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027E80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027E90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027EA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027EB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027EC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027ED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027EE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027EF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027F00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027F10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027F20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027F30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027F40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027F50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027F60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027F70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027F80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027F90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027FA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027FB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027FC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027FD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027FE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
027FF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0280A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0280B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0280C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0280D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0280E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0280F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0281A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0281B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0281C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0281D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0281E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0281F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0282A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0282B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0282C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0282D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0282E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0282F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0283A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0283B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0283C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0283D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0283E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0283F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0284A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0284B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0284C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0284D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0284E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0284F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0285A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0285B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0285C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0285D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0285E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0285F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0286A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0286B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0286C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0286D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0286E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0286F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028700:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
028710:  22 00 01 00 02 09 52 E5 22 00 C1 02 00 00 00 02    ".....R.".......
028720:  22 00 C6 02 00 00 00 02 22 00 C2 02 00 00 00 02    ".......".......
028730:  22 00 C7 02 00 00 00 02 22 00 C3 02 00 00 00 02    ".......".......
028740:  22 00 C8 02 00 00 00 02 22 00 C4 02 00 00 00 02    ".......".......
028750:  22 00 C9 02 00 00 00 02 22 00 C5 02 00 00 00 02    ".......".......
028760:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
028770:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
028780:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
028790:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0287A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0287B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0287C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0287D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0287E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0287F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
028800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0288A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0288B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0288C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0288D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0288E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0288F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0289A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0289B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0289C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0289D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0289E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0289F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028A00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028A10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028A20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028A30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028A40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028A50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028A60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028A70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028A80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028A90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028AA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028AB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028AC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028AD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028AE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028AF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028B00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028B10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028B20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028B30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028B40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028B50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028B60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028B70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028B80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028B90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028BA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028BB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028BC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028BD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028BE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028BF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028C00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028C10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028C20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028C30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028C40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028C50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028C60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028C70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028C80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028C90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028CA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028CB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028CC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028CD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028CE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028CF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028D00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028D10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028D20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028D30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028D40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028D50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028D60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028D70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028D80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028D90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028DA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028DB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028DC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028DD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028DE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028DF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028E00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028E10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028E20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028E30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028E40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028E50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028E60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028E70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028E80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028E90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028EA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028EB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028EC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028ED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028EE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028EF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028F00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028F10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028F20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028F30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028F40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028F50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028F60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028F70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028F80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028F90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028FA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028FB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028FC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028FD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028FE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
028FF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0290A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0290B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0290C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0290D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0290E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0290F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0291A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0291B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0291C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0291D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0291E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0291F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0292A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0292B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0292C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0292D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0292E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0292F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0293A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0293B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0293C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0293D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0293E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0293F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0294A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0294B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0294C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0294D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0294E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0294F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0295A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0295B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0295C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0295D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0295E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0295F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0296A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0296B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0296C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0296D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0296E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0296F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0297A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0297B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0297C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0297D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0297E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0297F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0298A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0298B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0298C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0298D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0298E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0298F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0299A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0299B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0299C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0299D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0299E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0299F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029A00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
029A10:  23 00 01 00 02 09 52 E5 23 00 C1 02 00 00 00 02    #.....R.#.......
029A20:  23 00 C6 02 00 00 00 02 23 00 C2 02 00 00 00 02    #.......#.......
029A30:  23 00 C7 02 00 00 00 02 23 00 C3 02 00 00 00 02    #.......#.......
029A40:  23 00 C8 02 00 00 00 02 23 00 C4 02 00 00 00 02    #.......#.......
029A50:  23 00 C9 02 00 00 00 02 23 00 C5 02 00 00 00 02    #.......#.......
029A60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
029A70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
029A80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
029A90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
029AA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
029AB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
029AC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
029AD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
029AE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
029AF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
029B00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029B10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029B20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029B30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029B40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029B50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029B60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029B70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029B80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029B90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029BA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029BB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029BC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029BD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029BE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029BF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029C00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029C10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029C20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029C30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029C40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029C50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029C60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029C70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029C80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029C90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029CA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029CB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029CC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029CD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029CE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029CF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029D00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029D10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029D20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029D30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029D40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029D50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029D60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029D70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029D80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029D90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029DA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029DB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029DC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029DD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029DE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029DF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029E00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029E10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029E20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029E30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029E40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029E50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029E60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029E70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029E80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029E90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029EA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029EB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029EC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029ED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029EE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029EF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029F00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029F10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029F20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029F30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029F40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029F50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029F60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029F70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029F80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029F90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029FA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029FB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029FC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029FD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029FE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
029FF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A0A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A0B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A0C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A0D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A0E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A0F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A1A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A1B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A1C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A1D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A1E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A1F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A2A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A2B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A2C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A2D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A2E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A2F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A3A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A3B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A3C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A3D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A3E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A3F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A4A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A4B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A4C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A4D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A4E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A4F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A5A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A5B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A5C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A5D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A5E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A5F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A6A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A6B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A6C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A6D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A6E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A6F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A7A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A7B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A7C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A7D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A7E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A7F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A8A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A8B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A8C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A8D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A8E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A8F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A9A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A9B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A9C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A9D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A9E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02A9F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AA00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AA10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AA20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AA30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AA40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AA50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AA60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AA70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AA80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AA90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AAA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AAB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AAC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AAD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AAE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AAF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AB00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AB10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AB20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AB30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AB40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AB50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AB60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AB70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AB80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AB90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ABA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ABB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ABC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ABD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ABE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ABF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AC00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AC10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AC20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AC30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AC40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AC50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AC60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AC70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AC80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AC90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ACA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ACB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ACC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ACD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ACE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ACF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AD00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
02AD10:  24 00 01 00 02 09 52 E5 24 00 C1 02 00 00 00 02    $.....R.$.......
02AD20:  24 00 C6 02 00 00 00 02 24 00 C2 02 00 00 00 02    $.......$.......
02AD30:  24 00 C7 02 00 00 00 02 24 00 C3 02 00 00 00 02    $.......$.......
02AD40:  24 00 C8 02 00 00 00 02 24 00 C4 02 00 00 00 02    $.......$.......
02AD50:  24 00 C9 02 00 00 00 02 24 00 C5 02 00 00 00 02    $.......$.......
02AD60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02AD70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02AD80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02AD90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02ADA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02ADB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02ADC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02ADD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02ADE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02ADF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02AE00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AE10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AE20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AE30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AE40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AE50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AE60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AE70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AE80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AE90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AEA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AEB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AEC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AEE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AEF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AF00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AF10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AF20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AF30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AF40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AF50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AF60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AF70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AF80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AF90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AFA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AFB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AFC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AFD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AFE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02AFF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B0A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B0B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B0C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B0D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B0E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B0F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B1A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B1B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B1C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B1D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B1E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B1F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B2A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B2B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B2C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B2D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B2E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B2F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B3A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B3B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B3C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B3D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B3E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B3F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B4A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B4B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B4C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B4D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B4E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B4F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B5A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B5B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B5C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B5D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B5E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B5F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B6A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B6B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B6C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B6D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B6E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B6F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B7A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B7B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B7C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B7D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B7E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B7F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B8A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B8B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B8C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B8D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B8E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B8F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B9A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B9B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B9C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B9D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B9E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02B9F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BA00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BA10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BA20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BA30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BA40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BA50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BA60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BA70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BA80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BA90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BAA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BAB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BAC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BAD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BAE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BAF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BB00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BB10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BB20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BB30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BB40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BB50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BB60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BB70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BB80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BB90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BBA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BBB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BBC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BBD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BBE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BBF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BC00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BC10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BC20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BC30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BC40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BC50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BC60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BC70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BC80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BC90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BCA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BCB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BCC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BCD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BCE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BCF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BD00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BD10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BD20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BD30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BD40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BD50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BD60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BD70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BD80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BD90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BDA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BDB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BDC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BDD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BDE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BDF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BE00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BE10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BE20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BE30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BE40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BE50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BE60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BE70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BE80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BE90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BEA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BEB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BEC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BEE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BEF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BF00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BF10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BF20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BF30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BF40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BF50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BF60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BF70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BF80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BF90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BFA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BFB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BFC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BFD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BFE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02BFF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C000:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
02C010:  25 00 01 00 02 09 52 E5 25 00 C1 02 00 00 00 02    %.....R.%.......
02C020:  25 00 C6 02 00 00 00 02 25 00 C2 02 00 00 00 02    %.......%.......
02C030:  25 00 C7 02 00 00 00 02 25 00 C3 02 00 00 00 02    %.......%.......
02C040:  25 00 C8 02 00 00 00 02 25 00 C4 02 00 00 00 02    %.......%.......
02C050:  25 00 C9 02 00 00 00 02 25 00 C5 02 00 00 00 02    %.......%.......
02C060:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02C070:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02C080:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02C090:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02C0A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02C0B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02C0C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02C0D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02C0E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02C0F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02C100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C1A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C1B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C1C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C1D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C1E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C1F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C2A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C2B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C2C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C2D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C2E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C2F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C3A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C3B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C3C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C3D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C3E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C3F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C4A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C4B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C4C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C4D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C4E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C4F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C5A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C5B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C5C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C5D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C5E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C5F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C6A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C6B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C6C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C6D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C6E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C6F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C7A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C7B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C7C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C7D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C7E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C7F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C8A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C8B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C8C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C8D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C8E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C8F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C9A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C9B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C9C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C9D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C9E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02C9F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CA00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CA10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CA20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CA30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CA40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CA50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CA60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CA70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CA80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CA90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CAA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CAB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CAC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CAD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CAE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CAF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CB00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CB10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CB20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CB30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CB40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CB50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CB60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CB70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CB80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CB90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CBA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CBB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CBC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CBD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CBE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CBF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CC00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CC10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CC20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CC30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CC40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CC50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CC60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CC70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CC80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CC90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CCA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CCB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CCC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CCD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CCE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CCF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CD00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CD10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CD20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CD30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CD40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CD50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CD60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CD70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CD80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CD90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CDA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CDB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CDC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CDD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CDE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CDF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CE00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CE10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CE20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CE30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CE40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CE50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CE60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CE70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CE80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CE90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CEA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CEB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CEC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CEE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CEF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CF00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CF10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CF20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CF30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CF40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CF50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CF60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CF70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CF80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CF90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CFA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CFB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CFC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CFD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CFE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02CFF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D0A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D0B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D0C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D0D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D0E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D0F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D1A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D1B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D1C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D1D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D1E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D1F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D2A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D2B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D2C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D2D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D2E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D2F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D300:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
02D310:  26 00 01 00 02 09 52 E5 26 00 C1 02 00 00 00 02    &.....R.&.......
02D320:  26 00 C6 02 00 00 00 02 26 00 C2 02 00 00 00 02    &.......&.......
02D330:  26 00 C7 02 00 00 00 02 26 00 C3 02 00 00 00 02    &.......&.......
02D340:  26 00 C8 02 00 00 00 02 26 00 C4 02 00 00 00 02    &.......&.......
02D350:  26 00 C9 02 00 00 00 02 26 00 C5 02 00 00 00 02    &.......&.......
02D360:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02D370:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02D380:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02D390:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02D3A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02D3B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02D3C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02D3D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02D3E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02D3F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02D400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D4A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D4B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D4C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D4D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D4E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D4F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D5A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D5B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D5C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D5D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D5E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D5F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D6A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D6B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D6C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D6D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D6E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D6F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D7A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D7B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D7C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D7D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D7E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D7F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D8A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D8B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D8C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D8D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D8E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D8F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D9A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D9B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D9C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D9D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D9E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02D9F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DA00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DA10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DA20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DA30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DA40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DA50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DA60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DA70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DA80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DA90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DAA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DAB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DAC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DAD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DAE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DAF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DB00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DB10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DB20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DB30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DB40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DB50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DB60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DB70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DB80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DB90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DBA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DBB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DBC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DBD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DBE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DBF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DC00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DC10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DC20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DC30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DC40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DC50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DC60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DC70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DC80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DC90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DCA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DCB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DCC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DCD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DCE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DCF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DD00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DD10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DD20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DD30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DD40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DD50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DD60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DD70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DD80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DD90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DDA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DDB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DDC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DDD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DDE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DDF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DE00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DE10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DE20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DE30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DE40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DE50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DE60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DE70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DE80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DE90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DEA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DEB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DEC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DEE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DEF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DF00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DF10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DF20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DF30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DF40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DF50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DF60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DF70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DF80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DF90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DFA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DFB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DFC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DFD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DFE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02DFF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E0A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E0B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E0C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E0D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E0E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E0F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E1A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E1B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E1C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E1D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E1E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E1F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E2A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E2B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E2C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E2D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E2E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E2F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E3A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E3B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E3C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E3D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E3E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E3F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E4A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E4B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E4C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E4D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E4E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E4F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E5A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E5B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E5C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E5D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E5E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E5F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E600:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
02E610:  27 00 01 00 02 09 52 E5 27 00 C1 02 00 00 00 02    '.....R.'.......
02E620:  27 00 C6 02 00 00 00 02 27 00 C2 02 00 00 00 02    '.......'.......
02E630:  27 00 C7 02 00 00 00 02 27 00 C3 02 00 00 00 02    '.......'.......
02E640:  27 00 C8 02 00 00 00 02 27 00 C4 02 00 00 00 02    '.......'.......
02E650:  27 00 C9 02 00 00 00 02 27 00 C5 02 00 00 00 02    '.......'.......
02E660:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02E670:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02E680:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02E690:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02E6A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02E6B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02E6C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02E6D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02E6E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02E6F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02E700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E7A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E7B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E7C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E7D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E7E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E7F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E8A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E8B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E8C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E8D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E8E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E8F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E9A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E9B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E9C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E9D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E9E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02E9F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EA00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EA10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EA20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EA30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EA40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EA50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EA60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EA70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EA80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EA90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EAA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EAB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EAC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EAD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EAE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EAF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EB00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EB10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EB20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EB30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EB40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EB50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EB60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EB70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EB80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EB90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EBA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EBB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EBC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EBD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EBE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EBF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EC00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EC10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EC20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EC30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EC40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EC50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EC60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EC70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EC80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EC90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ECA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ECB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ECC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ECD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ECE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ECF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ED00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ED10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ED20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ED30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ED40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ED50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ED60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ED70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ED80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02ED90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EDA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EDB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EDC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EDD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EDE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EDF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EE00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EE10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EE20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EE30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EE40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EE50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EE60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EE70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EE80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EE90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EEA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EEB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EEC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EEE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EEF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EF00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EF10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EF20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EF30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EF40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EF50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EF60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EF70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EF80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EF90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EFA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EFB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EFC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EFD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EFE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02EFF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F0A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F0B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F0C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F0D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F0E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F0F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F1A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F1B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F1C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F1D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F1E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F1F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F2A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F2B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F2C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F2D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F2E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F2F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F3A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F3B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F3C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F3D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F3E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F3F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F4A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F4B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F4C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F4D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F4E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F4F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F5A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F5B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F5C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F5D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F5E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F5F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F6A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F6B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F6C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F6D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F6E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F6F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F7A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F7B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F7C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F7D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F7E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F7F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F8A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F8B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F8C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F8D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F8E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F8F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02F900:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
02F910:  28 00 01 00 02 09 52 E5 28 00 C1 02 00 00 00 02    (.....R.(.......
02F920:  28 00 C6 02 00 00 00 02 28 00 C2 02 00 00 00 02    (.......(.......
02F930:  28 00 C7 02 00 00 00 02 28 00 C3 02 00 00 00 02    (.......(.......
02F940:  28 00 C8 02 00 00 00 02 28 00 C4 02 00 00 00 02    (.......(.......
02F950:  28 00 C9 02 00 00 00 02 28 00 C5 02 00 00 00 02    (.......(.......
02F960:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02F970:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02F980:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02F990:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02F9A0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02F9B0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02F9C0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02F9D0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02F9E0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02F9F0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
02FA00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FA10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FA20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FA30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FA40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FA50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FA60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FA70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FA80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FA90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FAA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FAB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FAC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FAD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FAE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FAF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FB00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FB10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FB20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FB30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FB40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FB50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FB60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FB70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FB80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FB90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FBA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FBB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FBC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FBD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FBE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FBF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FC00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FC10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FC20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FC30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FC40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FC50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FC60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FC70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FC80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FC90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FCA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FCB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FCC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FCD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FCE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FCF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FD00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FD10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FD20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FD30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FD40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FD50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FD60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FD70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FD80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FD90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FDA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FDB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FDC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FDD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FDE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FDF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FE00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FE10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FE20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FE30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FE40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FE50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FE60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FE70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FE80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FE90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FEA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FEB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FEC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FEE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FEF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FF00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FF10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FF20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FF30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FF40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FF50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FF60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FF70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FF80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FF90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FFA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FFB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FFC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FFD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FFE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
02FFF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0300A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0300B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0300C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0300D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0300E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0300F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0301A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0301B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0301C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0301D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0301E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0301F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0302A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0302B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0302C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0302D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0302E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0302F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0303A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0303B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0303C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0303D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0303E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0303F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0304A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0304B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0304C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0304D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0304E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0304F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0305A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0305B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0305C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0305D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0305E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0305F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0306A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0306B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0306C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0306D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0306E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0306F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0307A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0307B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0307C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0307D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0307E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0307F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0308A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0308B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0308C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0308D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0308E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0308F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0309A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0309B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0309C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0309D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0309E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0309F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030A00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030A10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030A20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030A30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030A40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030A50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030A60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030A70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030A80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030A90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030AA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030AB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030AC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030AD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030AE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030AF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030B00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030B10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030B20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030B30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030B40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030B50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030B60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030B70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030B80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030B90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030BA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030BB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030BC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030BD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030BE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030BF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030C00:  54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00    Track-Info......
030C10:  29 00 01 00 02 09 52 E5 29 00 C1 02 00 00 00 02    ).....R.).......
030C20:  29 00 C6 02 00 00 00 02 29 00 C2 02 00 00 00 02    ).......).......
030C30:  29 00 C7 02 00 00 00 02 29 00 C3 02 00 00 00 02    ).......).......
030C40:  29 00 C8 02 00 00 00 02 29 00 C4 02 00 00 00 02    ).......).......
030C50:  29 00 C9 02 00 00 00 02 29 00 C5 02 00 00 00 02    ).......).......
030C60:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
030C70:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
030C80:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
030C90:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
030CA0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
030CB0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
030CC0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
030CD0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
030CE0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
030CF0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
030D00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030D10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030D20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030D30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030D40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030D50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030D60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030D70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030D80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030D90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030DA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030DB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030DC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030DD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030DE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030DF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030E00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030E10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030E20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030E30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030E40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030E50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030E60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030E70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030E80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030E90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030EA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030EB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030EC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030ED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030EE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030EF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030F00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030F10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030F20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030F30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030F40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030F50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030F60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030F70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030F80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030F90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030FA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030FB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030FC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030FD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030FE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
030FF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031000:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031010:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031020:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031030:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031040:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031050:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031060:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031070:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031080:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031090:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0310A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0310B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0310C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0310D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0310E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0310F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031100:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031110:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031120:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031130:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031140:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031150:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031160:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031170:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031180:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031190:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0311A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0311B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0311C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0311D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0311E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0311F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031200:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031210:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031220:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031230:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031240:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031250:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031260:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031270:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031280:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031290:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0312A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0312B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0312C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0312D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0312E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0312F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031300:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031310:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031320:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031330:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031340:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031350:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031360:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031370:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031380:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031390:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0313A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0313B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0313C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0313D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0313E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0313F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031400:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031410:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031420:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031430:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031440:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031450:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031460:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031470:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031480:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031490:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0314A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0314B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0314C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0314D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0314E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0314F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031500:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031510:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031520:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031530:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031540:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031550:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031560:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031570:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031580:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031590:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0315A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0315B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0315C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0315D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0315E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0315F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031600:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031610:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031620:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031630:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031640:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031650:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031660:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031670:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031680:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031690:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0316A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0316B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0316C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0316D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0316E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0316F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031700:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031710:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031720:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031730:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031740:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031750:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031760:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031770:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031780:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031790:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0317A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0317B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0317C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0317D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0317E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0317F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031800:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031810:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031820:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031830:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031840:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031850:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031860:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031870:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031880:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031890:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0318A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0318B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0318C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0318D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0318E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0318F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031900:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031910:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031920:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031930:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031940:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031950:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031960:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031970:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031980:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031990:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0319A0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0319B0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0319C0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0319D0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0319E0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
0319F0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031A00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031A10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031A20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031A30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031A40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031A50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031A60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031A70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031A80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031A90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031AA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031AB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031AC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031AD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031AE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031AF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031B00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031B10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031B20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031B30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031B40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031B50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031B60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031B70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031B80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031B90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031BA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031BB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031BC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031BD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031BE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031BF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031C00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031C10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031C20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031C30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031C40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031C50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031C60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031C70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031C80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031C90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031CA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031CB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031CC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031CD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031CE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031CF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031D00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031D10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031D20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031D30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031D40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031D50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031D60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031D70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031D80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031D90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031DA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031DB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031DC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031DD0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031DE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031DF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031E00:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031E10:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031E20:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031E30:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031E40:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031E50:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031E60:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031E70:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031E80:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031E90:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031EA0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031EB0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031EC0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031ED0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031EE0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
031EF0:  E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5    ................
RESULT OF SEARCH :
PRO=11   CHEA=0   COD=22   MUSI=0   COP=9   GRA=1   WRIT=52   198=13   199=0   STARTER=0   KBI=0   CAAV=0   L.TOURNIER=0  
EXTENDED CPC DSK File    SAMdisk170514*  RRUNTIME ASM  STDLIB  ASMSTDLIB  ASMI !
"#$%&'SUBMIT  C  4()*+,-.FUNCTIONASM/01FUNCTIONCRL2C       DEF/345678C       SUB
9C1      C  QABCDC2      C  bEFGHIJKLMNOPQC4      C  *RSTUVWC5      C  7XYZC6   
   C  abC8      C  8cdefghiC7      C  jjklmnopqrstuvwC9      C  xyzm  jmpsxt    
fetch a single byte from stack plus a 2 byte offset  and sign extend byte into h
l    gcharslcsect  popb  ldaxb  movl,a  inxb  ldaxb  movh,a  inxh  dadsp  pushb 
 mova,m  jmpsxt    fetch a single byte from address in hl and  sign extend into 
hl    gchar csect  mova,m  jmpsxt    put the accum into hl and sign extend throu
gh h    sxtcsect  movl,a  rlc  sbba  movh,a  ret    fetch a full 16-bit integer 
from offset plus stack pCL      SUBC3      C  %ointer  into hl    gintsscsect  p
opb  ldaxb  movl,a  mvih,0  inxb  dadsp  pushb  mova,m  inxh  movh,m  movl,a  re
t    fetch a 16-bit integer from stack pointer plus  a 16 bit offset and put val
ue in hl    gintslcsect  popb  ldaxb  movl,a  inxb  ldaxb  movh,a  inxb  dadsp  
pushb  mova,m  inxh  movh,m  movl,a  ret    fetch a full 16-bit integer from the
 address in hl  into hl    gintcsect  mova,m  inxh  movh,m  movl,a  ret    store
 a byte stack plus 8 byte offset    pcharsscsect  xchg  popb  ldaxb  movl,a  mvi
h,0  inxb  dadsp  movm,e  xchg  pushb  ret    store a byte at stack plus offset 
   pcharslcsect  xchg  popb  ldaxb  movl,a  inxb  ldaxb  movh,a  inxb  dadsp  mo
vm,e  xchg  pushb  ret    store 16-bit integer at offset plus stack     pintsscs
ect  xchg  popb  ldaxb  movl,a  mvih,0  inxb  dadsp  movm,e  inxh  movm,d  xchg 
 pushb  ret    store a 16 bit integer in hl at stack plus offset    pintslcsect 
 xchg  popb  ldaxb  movl,a  inxb  ldaxb  movh,a  inxb  dadsp  movm,e  inxh  movm
,d  pushb  xchg  ret    store a 16-bit integer in hl at the address in de    pin
tcsect  mova,l  staxd  inxd  mova,h  staxd  ret  page  incdeccsect    take the a
ddress in hl and add value that follow and save back  address in hl    preinc  c
allincdecl  callinc  nop  ret    take the addretitleruntime package for small "C
"    ramequ0start of ram in system  extrnmain    *******************************
*************************  *  run time libray for small c compiler*  *  by Ron C
ain*  *  ********************************************************    fetch a sin
gle byte from stack pointer plus  offset of byte following call and sign extend 
 into hl    gcharsscsect  popb  ldaxb  movl,a  inxb  mvih,0  dadsp  pushb  mova,
  Rss in hl and sub value that follow and  save it back in place    predec  call
incdecl  calldec  nop  ret    take the address in hl and sub value that follow a
nd save  back in address in hl and restore value to pre inc    postinc  callincd
ecl  pushd  callinc  poph  nop  ret    take the address in hl and add value that
 follow and  save back in address in hl restore value pre dec    postdec  callin
cdecl  pushd  calldec  poph  nop  ret    load needed valutib,compret  pushb  cal
lcmp  rz  rnc  dcxh  ret    test if de less than or equal to hl (signed)    le  
popb  popd  pushb  lxib,compret  pushb  callcmp  rz  rc  dcxh  ret  page    test
 if de greater than hl (unsigned)    ugt  popb  popd  pushb  lxib,compret  pushb
  xchg  callucmp  rc  dcxh  ret    test if de less than hl(unsigned)    ult  pop
b  popd  pushb  lxib,compret  pushb  callucmp  rc  dcxh  ret    test if de great
 for inc and dec     incdecl  popd  popb  ldaxb  inxb  pushb  pushd  dcxb  oraa 
 jpincdec1  move,m  inxh  movd,m  ret  incdec1  move,m  mova,e  rlc  sbba  movd,
a  ret    add value in a to de and save at address in hl    inc  ani07fh  adde  
move,a  mova,d  aci0  movd,a  jmpincdecs    subtract value in a to de and save a
t address in hl    dec  ani07fh  cma  inra  adde  move,a  mova,d  aci0ffh  movd,
a  jmpincdecs     storeer than or equal to hl (unsigned)    uge  popb  popd  pus
hb  lxib,compret  pushb  callucmp  rnc  dcxh  ret    test if de less than or equ
al to hl (unsigned)    ule  popb  popd  pushb  lxib,compret  pushb  callucmp  rz
  rc  dcxh  ret    common routine to preform a signed compare of  de and hl     
de-hl and sets the conditions  carry set means de  hl  zero/non-zero set accordi
ng to equality    cmp  mova,e  subl  move,a  mova,d  sbbh   value in de at addre
ss in hl    incdecs  ldaxb  oraa  jpincdec2  movm,d  dcxh  movm,e  xchg  mova,h 
 oral  ret  incdec2  movm,e  xchg  mova,h  oral  ret  page    inclusive "or" hl 
and de into hl    orcsect  popb  popd  pushb  mova,l  orae  movl,a  mova,h  orad
  movh,a  oral  ret    excluseive "or" hl and de into hl    xorcsect  popb  popd
  pushb  mova,l  xrae  movl,a  mova,h  xrad  movh,a  oral  ret    "and" hl andlx
ih,1  jmcmp1  orae  ret  cmp1  orae  stc  ret    common routine to perform unsin
ged compare    carry set if de less than hl  zero/non-zero set accordingly hlde 
   ucmp  mova,d  cmph  jnzucmp1  mova,e  cmpl  ucmp1  lxih,1  ret    set machine
 status for all comditional operators    compret  mova,h  oral  ret  page    shi
ft de arithmetically right by hl return in hl    asrcsect  popb  popd  pushb  as
r1  xchg  mova,h  ral  mova,h  rar  de into hl    andcsect  popb  popd  pushb  m
ova,l  anae  movl,a  mova,h  anad  movh,a  oral  ret    in all the following com
pare routines hl is set to 1   if the condition is true, otherwise it is set to 
0     not current condition    nlogcsect  mova,h  oral  jnznlog1  lxih,1  mova,h
  oral  ret  nlog1  lxih,0  mova,h  oral  ret  page  compcsect    test if hl equ
al to de    eq  popb  popd  pushb  lxib,compret  pushb  callcmp movh,a  mova,l  
rar  movl,a  dcre  jnz asr1  ret    shift de arithmetically left by hl and retur
n in hl    aslcsect  popb  popd  pushb  asl1  xchg  dadh  dcre  jnzasl1  ret    
subtract hl from de and return in hl    subcsect  popb  popd  pushb  mova,e  sub
l  movl,a  mova,d  sbbh  movh,a  ret    from the two's complement of hl    negcs
ect  callcom  inxh  ret    from the one's complement of hl    comcsect  mova,h  
cma  mo  rz  dcxh  ret    test if de to hl for not equal    ne  popb  popd  push
b  lxib,compret  pushb  callcmp  rnz  dcxh  ret    test if de greater then hl (s
igned)    gt  popb  popd  pushb  lxib,compret  pushb  xchg  callcmp  rc  dcxh  r
et    test if de less then hl (signed)    lt  popb  popd  pushb  lxib,compret  p
ushb  callcmp  rc  dcxh  ret    test if de greater then or equal to hl (signed) 
   ge  popb  popd  pushb  lx  Rvh,a  mova,l  cma  movl,a  ret    mutiply de by h
l and return in hl (signed)    mult  csect  popb  popd  pushb  movb,h  movc,l  l
xih,0  mult1  mova,c  rrc  jncmult2  dadd  mult2  xraa  mova,b  rar   movb,a  mo
va,c  rar  movc,a  orab  rz  xraa  mova,e  ral  move,a  mova,d  ral  movd,a  ora
e  rz  jmpmult1    divide de by hl and return quotient in hl   return remainder 
in de (signed)    divcsect  popb  popd  pushb  movb,h   call bods to do a cpm fu
nction bods(c,de)    bdoscsect  poph  popd  popb  pushb  pushd  pushh  jmp5    e
xit back to system    exitcsect  mvic,0  call5    take command buffer and build 
pointer list    initcsect  lhld6+ramget pointer to high memory  dcxhmove to just
 below bdos  sphlmake it current stack  lxih,80h+rampointer to start of command 
buffer  move,mnumber of bytes in command line  mvid,0make it 16 bit value  daddp
oint to endmovc,l  mova,d  xrab  pushpsw  mova,d  oraa  cmdeneg  mova,b  oraa  c
mbcneg  mvia,16  pushpsw  xchg  lxid,0  div1  dadh  callrdel  jzdiv2  callcmpbcd
e  jmdiv2  mova,l  ori1  movl,a  mova,e  subc  move,a  mova,d  sbbb  movd,a  div
2  poppsw  dcra  jzdiv3  pushpsw  jmpdiv1  div3  poppsw  rp  calldeneg  xchg  ca
lldeneg  xchg  ret    negate the integer in bc (used by divide only)    deneg  m
ova,d  cma  movd,a  m of text  inxhmove past end of buffer  mvim,0make end of te
xt  lxid,cpointerplace where pointer should place  lxih,80h+ramaddress of text s
tring  lxib,1number of arg  init2  inxhmove pointer to next byte  mova,mcheck fo
r end of buffer  oraaset machine status  jzinit10yes call main line  cpi' 'is th
ere a leading space  jzinit2yes  mova,lsave pointer value  staxd  mova,h  inxd  
staxd  inxd  inrcadd 1 to arg count  inova,e  cma  move,a  inxd  ret    negate t
hen integer in bc (used by divide only)    bcneg  mova,b  cma  movb,a  mova,c  c
ma  movc,a  inxb  ret    roate de left one bit (used by divide only)    rdel  mo
va,e  ral  move,a  mova,d  ral  movd,a  orae  ret    compare bc to de (used by d
ivide only)    cmpbcde   mova,e  subc  mova,d  sbbb  ret    used by switch to se
arch table  calling format form compiler  d-pointer to table  h-where to go if v
alit3  inxhmove to next byte  mova,mget byte into a  oraasee if end of buffer  j
zinit10yes...  cpi' 'check for space  jnzinit3no keep looking  mvim,0mark as end
 of parm  jmpinit2loop for next command  init10  lxih,cpointer-2get address of p
ointers  pushbpush argc on stack  pushhpush argv on stack  callmainexecute main 
line  jmp 0it just return from main exit to cpm  dwccnull  cpointer  dwccnull,cc
null,ccnull,ccnull,cue not in table  b- number of  entry in table    switchcsect
  xthlget value of expresstion to check  xchgput value in de  switch1  mova,e  c
mpmcheck to see if low byte match  inxhmove pointer to next byte of data  jnzswi
tch2no nov to next entry  mova,dmove high byte of data  cmpmcheck to see if matc
h  jnzswitch2yes jump to address  inxh  move,mget low byte of address  inxh  mov
d,mget high byte of address  xchgput address in hl  popbremcnull  dwccnull,ccnul
l,ccnull,ccnull,ccnull  dwccnull,ccnull,ccnull,ccnull,ccnull  dwccnull,ccnull,cc
null,ccnull,ccnull  dwccnull,ccnull,ccnull,ccnull,ccnull  ccnull  db'noname',0  
page  oeqequeq-comp  oneequne-comp  ogtequgt-comp  olteqult-comp  ogeequge-comp 
 oleequle-comp    ougtequugt-comp  oultequult-comp  ougeequuge-comp  ouleequule-
comp    opreiequpreinc-incdec  opredequpredec-incdec  oposiequpostinc-inove entr
y from stack  pchljump to needed case statement  switch2  inxhmove pointer to ne
xt entry  inxh  inxh  dcrbcheck to see if done with scan  jnzswitch1  xthlget ad
dress of where to go when done  popbremove entry from stack  pchlgo there    cal
l a bios routine with be loaded    bioscsect  poph  popb  popd  pushd  pushb  pu
shh  lhld1  dcxh   dcxh  dcxh  mvid,0  dadd  dadd  dadd  callbios1  movl,a  mvih
,0  ret  bios1pchl     Rcdec  oposdequpostdec-incdec    end  cpi'z'+1is it great
er then 'z'  jncislowwer1yes...not lower case  lxih,truereturn true for lowwer c
ase  ret  islowwer1  lxih,falsereturn false for anything but lowwer case  ret   
 isdigit    function to check to see if character is digit 0-9 only    calling f
ormat from "c"  isdigit(char)    isdigitcsect  mova,lget character to test  cpi'
0'see if less then a zero  jcisdigit1yes...not a vaild digit  cpi'9'+1is it grea
ter than nine  jncisdigit1yes...nottitlesmall c i/o package  extrnbios  bdosequ5
address on entry address for bdos  cpmcmd  equ80haddress of cpm command line  tr
ueequ1value for true  falseequ0value for false    toupper    function to shift l
ower case character to upper    calling format from "c"  toupper(char)    touppe
rcsect  mova,lget character to test  cpi61hcheck to see if less then 'a'  rcyes 
return to caller  cpi7bhcheck to see if greater then 'z'  rncyes..return to call
er a vaild digit  lxih,trueis a vaild digit  ret  isdigit1  lxih,falsenot a vail
d digit  ret    isspace    function to check to see if white space tab or blank 
   calling format from "c"  isspace(char)    isspacecsect  mova,lget character t
o check  lxih,trueassume true  cpi' 'check for a space  rz  cpi9check for a tab 
 rz  lxih,false  ret    strlen    function to get the lenght of a string    call
ing format in "c"  lenstrlen(string)    strlen  ani5fhmask off lowwer case bit  
movl,aput it in reg for return  retreturn to caller    tolowwer    function to c
onvert character to lowwer case    calling format from "c"  tolowwer(char)    to
lowwercsect  mova,lget character to shift to lowwer case  cpi'A'see if less then
 'A'  rcyes...return to caller  cpi'Z'+1see if greater then 'Z'  rncyes...return
 to caller  ani0bfhremove upper case bit  movl,aput chracter back in place  ret 
   isalphacsect  xchgput address of string in de  lxih,0make string of zero leng
ht  strlen1  ldaxdget character from string  oraacheck to see if end of string  
rzyes return to caller  inxhadd 1 to string lenght  inxdmove to next character  
jmpstrlen1loop till end of string found    strcpy    function to copy first seco
nd string to first string    calling format from "c"  strcpy(object,source)    s
trcpycsect  popbget return address from stack  popdget    function check to see 
if alpha character a-z or A-Z only    calling format from "c"  isalpha(char)    
isalphacsect  pushhsave calling arg for later  callisuppercheck to see if upper 
case  xchgput answer in de  pophget character to test back  callislowwercheck to
 see if lowwer case  daddadd isupper to is lowwer answer  ret      isupper    fu
nction to check to see if character is upper case    calling format in "c"  isup
per(char)     isuppercsect  mov source address  pophget object address  pushhres
tore machine stack  pushd  pushb  pushh  strcpy1  ldaxdget address of source  ch
aracter  movm,astore character in object string  oraacheck to see if end of stri
ng  jzstrcpy2end of string return to caller  inxh  inxdmove pointer to next byte
  jmpstrcpy1loop till done with copy  strcpy2  pophreturn address of object stri
ng  ret    strcat    function to put string2 at then end of string1 and return a
a,lget character to check  cpi'A'see if less then upper case a  jcisupper1not up
per case  cpi'Z'+1check to see if less then   jncisupper1no upper case  lxih,tru
eyes it is upper case  ret  isupper1  lxih,falsenot upper case  ret    islowwer 
   function to check to see if character is lowwer case    calling format from "
c"  islowwer(char)    islowwercsect  mova,lget character to check  cpi'a'see if 
less then 'a'  jcislowwer1yes...not upper case    Rddress of           string 1 
   calling format in "c"  strcat(string1,string2)    strcatcsect  popbget return
 address  popdget address of string 2  pophget address of string 1  pushhretore 
machine stack  pushd  pushb  pushhsave address of source string  strcat1  mova,m
get character from source buffer  oraacheck to see if zero  jzstrcat2yes end of 
string found  inxhmove pointer to next byte  jmpstrcat1loop till end of string f
ound  strcat2  action  inxdmove pointer to next pointer  dcxbsubtract 1 from cou
nt  jmpsetmem1loop till all bytes set    movmem    function to move source addre
ss to object address for count bytes    calling format from  "C"  movmem(source,
object,count)    movmemcsect  callargloadget args bc1, de2, hl3  pushbswitch arg
s so that   pushdbccount  pushhdeobject  popbhlsource  poph  popd  mova,bcheck t
o see if count  0  orac  rzzero return to callerldaxdget character from string 2
  movm,asave character in string1  oraacheck to see if end of buffer  jzstrcat3y
es return to caller  inxhmove object pointer up 1  inxdmove source pointer up 1 
 jmpstrcat2  strcat3  pophget address of string1  ret  strpos    function to loo
k for string 2 in string 1    calling format in "c"  strpos(string1,string2)    
strposcsect  callargloadget args load into read be1 de2 hl3  pushb  poph  lxib,1
destring  callmovmemhtcheck to see if sourcedest  jcmovmemtmove tial first  mvia
,2check to see if z80  inra  jpemovmemf88080 do a byte by byte move  dw0b0edh  r
et  movmemf8  mova,mget source byte  staxdsave byte in object buffer  inxhmove o
bject pointer up 1  inxdmove source pointer up 1 byte  dcxbsubtract 1 from count
  mova,bsee if done  orac  jnzmovmemf8no keep on looping  ret  movmemt  dcxbtail
 first. compute new source  dadband destination2, hlstring1 bc0  xchg  strpos1  
ldaxdget character to check  oraacheck to see if end of string  jzstrpos5end of 
string1 string 2 not found in string1  cmpmis it equal to string2 character 1  j
zstrpos2yes...  inxdno add 1 to string 1 pointer  inxbadd 1 to offset pointer  j
mpstrpos1loop till end of string1 or string2 found  strpos2  pushhsave strating 
address of string 21  pushdsave current address of string 1  strpos3  inxd  inxh
  mova,mget ch address  xchg  dadb  xchg  mvia,2check to see if z80  inra  jpemo
vmemt88080 do a byte by byte move  dw0b8edh  ret  movmemt8  mova,mget source byt
e  staxdsave object byte  dcxhmove to next byte of source buffer  dcxdmove to ne
xt byte of object buffer  dcxbsubtract 1 from count  mova,bcehck to see if all d
one  orac  jnzmovmemt8no keep on looping  ret  movmemht  mova,h  cmpd  rnz  mova
,l  cmpe  ret    outp    function to output 1 byte taracter from string 2  oraas
et machine flags  jzstrpos4end of string2 found must be a mathc  ldaxdget arg1  
cmpmis this character a match  jzstrpos3   popdrestore pointer for string1 and s
tring 2  poph  inxdadd 1 to string pointer  inxbadd 1 to offset in string1  jmps
trpos1loop till end of string 1  strpos4  movl,cstring found return offset for c
aller  movh,b  popb  popb  ret  strpos5  lxih,0string not found  ret    setmem  
  function too a data port    calling format from "C"  outp(port,data)    outpcs
ect  popbget return address  pophget data for port  popdget port number  pushdre
store machine stack  pushh  pushb  mova,eget port number  staoutp1+1save port nu
mber  mova,lget data to send  outp1  out0send data to port  ret    inp    functi
on to input 1 byte from data port and return to caller    calling format in "c" 
 datainp(port)    inpcsect  mova,lget port number fill a block of memory with a 
given constant    calling format in "c"  setmem(address,count,constant)    setme
mcsect  popbget return address  pophget constant  mova,lput constant in a  popbg
et count  popdget address  lxih,8offset in to put stack back  dadsp  sphlrestore
 stack pointer  movl,aplace to save constant  setmem1  mova,bcheck to see if cou
nt is zero  orac  rzall done with move  mova,lget constant to store  staxdset me
mory lo  R  stainp1+1save port number for input  inp1  in0input data from port  
mvih,0zero high byte of number  movl,aput data in reg for "c"  ret    puts    fu
nction to print a string to console ending with a null    call format from "C"  
  puts(string)    putscsect  pushhsave calling address in stack  puts1  mova,mge
t character to print  oraacheck for zero  jzputs2if done return  pushhsave point
er for later user  movl,aput character in reg for pumber of character in string 
 inxd  gets1  ldaxdget character from input buffer  movm,asave character in buff
er  inxhmove pointer to next byte  inxd  dcrbsee if all done with move  jnzgets1
     no keep on looping  gets2  mvim,0put ending zero in stringo  mvic,2cpm outp
ut character function  mvie,0ahcharacter to output  callbdosoutput a linefeed  p
ophget address of iput string  retall done return to calleru    kbstat    funtio
n to get status sh  callputchprint character on console  pophget address of char
acter back  inxhmove to next character  jmpputs1loop till done with string  puts
2  pophget address of start of string  retreturn to caller    console i/o functi
ons    putch    output 1 character to console and do not check   to see if chara
cter is ready at console input    calling format from "C"  putch(c)    putchcsec
t  mova,lget character to print  cpi0ahcheck for line feed  jnzputof cpm console
 returns  true or 1 if console character is ready or  0 if character is not read
y    call format for c  kbstat()    kbstat csect  mvic,2cpm function number for 
status check  pushbsend jump number out  pushbarg  callbioscall bios cons-stat  
popbremove args from stack  popb  mova,lget return status from bios  oraaset mac
hine status reg.  lxih,0make it false (keyboard not ready)  rzreturn to caller k
eyboard not ready  lxih,1keyboard rch1no.....  mvie,0dhprint return   mvic,2cpm 
print number function  callbdosprint chararcer to console  mvil,0ahprint line fe
ed  putch1  move,lput character in correct reg for call  mvic,2cpm output functi
on  callbdosprint character to console  ret    function to get 1 character from 
cpm console and return    character to caller    calling format in "C"  chgetch(
)    getch  csect  mvic,1cpm function number for getch  callbdosget character fe
ady  retall done return to caller      open    function to build fcb and try to 
open file  address of fcb in de while name in hl. if file  is open ok then 0 is 
return else -1 is return    calling format from "C"  open(fcb,filename)    openc
sect  popbget return addess  pophget address of file name  popdaddress of fcb  p
ushdput data back on stack  pushh  pushb  pushdput address of fcb in stack  push
hput address of file name in stack  callsetfcbtrrom console  cpi0dhcheck to see 
if a return  jnzgetch1  no check for a z end of file  mvid,0ahsend a lf to conso
le  pushcput it stack for putch  callputchprint character on console  lxih,10and
 return lf (new line)  ret  getch1  cpi26check to see if end of file  jnzgetch2 
 not a end of file return char.  lxih,-1return end of file maker  retall done re
turn to caller  getch2  movl,amove character to return reg.  mvih,0zero high byt
e of ry to scan for a fcb  popdremove address of file name from stack  popdremov
e address of fcb from stack  inrlcheck to see if vaild return code  jzopen10erro
r invaild file name  mvic,15cpm function to open a file  callbdosexecute cpm ope
n function  inrasee if error opening file  jzopen10error file not found  lxih,0s
et return code to zero  retreturn to caller  open10  lxih,-1error return code  r
etreturn to caller    create    function to build feutrn  ret    gets    functio
n to get a string from console and return address            of input string    
calling format from "C"  gets(string)    getscsect  pushhsave address of string 
 pushh  mvim,250save for bdos call  mvic,10cpm read string function  xchgput add
ress of string in de for cpm  callbdoscall cpm to read string in  popdget addres
s of input string back  movh,dput address in hl  movl,e  inxdmove to lenght coun
t  movb,mget nu  Rcb and delete file then  try to create file address of fcb in 
de   while name in hl. if file is created ok  0 is return else -1 is return    c
alling format from "C"  create(fcb,filename)    createcsect  popbget return addr
ess  pophget address of file name  popdget address of fcb   pushdput data back o
n stack  pushh  pushb  pushdset up arg list for setfcb  pushh  callsetfcbtry tos
can and build fcb  popdremove arg for setfcb from stack  popd  inrls11  lxih,36n
umber of byte to move back  dadspadd to current stack pointer  sphlput new value
 in stack pointer  xchgput return code in hl  retall done return to caller    re
ad    function to read x record from disk and return  number of record read or -
1    calling format from "C"  read(fcb,buffer,count)    readcsect  lxih,2offset 
in stack till count  dadspget address of number of record to read  mova,mget low
 byte of count  move,msave for later ee if error in file name  jzcreate10error i
n file name  pushdsave address of fcb  mvic,19cpm function to delete a file  cal
lbdoscall bdos to do needed function  popdrestore address of fcb to create  mvic
,22cpm function to make file  callbdoscall bods to do needed function  inracheck
 to see if error  jzcreate10error unable to creat file  lxih,0every thing ok set
 return code to zero  retreturn to caller  create10  lxih,-1error set return cod
e to -1  use  inxhmove to high byte of count  oramsee if 16 bit count is zero  m
ovd,mget high byte of count   jzread1yes do not read any more records  dcxdsubtr
act 1 from count  movm,dput high byte back  dcxhpoint to high byte  movm,esave l
ow byte  inxhmove to buffer address  inxh  move,mget address of buffer  inxhmove
 to high byte of address  pushhsave current pointer on stack  movd,mget high byt
e of address  mvic,26set dma address  callbdosret    close    function to close 
a file that is current open.  address of fcb in de. if able to close file o is  
is return or -1 if unable to close    calling format from "C"  close(fcb)    clo
secsect  popbreturn address  popdaddress of fcb  pushdput data back in stack  pu
shb  mvic,16cpm function to close a file  callbdoscall cpm to do needed function
  inracheck for errors  jzclose10error unable to close file  lxih,0every thing i
s ok set return cocall cpm to set buffer address  pophremove current pointer fro
m stack  inxhmove to address of fcb  pushhput current pointer back on stack  mov
e,mget low byte of fcb address  inxhmove to high byte of address  movd,mget high
 address of fcb  mvic,20read record from dsik  callbdoscall cpm to do it  pophge
t current pointer back  oraacheck for errors  jnzread2error reading file from di
sk  dcxhmove to address of buffer  movd,mget high byte of addrede to zero  retre
turn to caller  close10  lxih,-1error set return code to error  ret    unlink   
 function to build fcb and try to delete  delete file. if ok return 0 else -1   
 calling format from "C"  unlink(filename)    unlinkcsect  popbget return addres
s  popdget address of file name  pushdput data back in stack  pushb  lxih,-36put
 stack pointer in hl  dadspaddress of stack in hl  sphlset new address of stack 
pointer  lxib,36get address ofss  dcxhmove to low  byte of address  move,mget lo
w byte of address  xchgput address in hl and varble address in hl  lxib,80hlengh
t of 1 record on disk  dadbadd sector lenght to buffer address  xchgput buffer a
ddress back in de  movm,esave new low byte of address  inxhmove to high byte of 
address  movm,dsave high byte of address  jmpreadsee it time to read next record
  read1  lxih,0every thing is ok return to caller  jmpread3set dma address to tb
u fcb for delete  dadbadd to get base for fcb  pushhset up arg for setfcb  pushd
  callsetfcbtry to build fcb  popdremove arg for setfcb  popd  inrlsee if error 
 jzunlink10error not a vaild file name  mvic,19function number to delete a file 
 callbdoscall cpm to delete file from system  inracheck to see if in error  jzun
link10error unable to delete file  lxid,0return code  jmpunlink11reset stack poi
nter  unlink10  lxid,-1set error code   unlink  Rf and return  read2  lxih,-1err
or reading file  read3  pushhsave return code  lxid,cpmcmdaddress of temp buff  
mvic,26set dma address function  callbdoscall cpm to do needed funtion  pophget 
return code from stack  retall done return to caller    function to write x reco
rd fromdisk and return  false if no errors or true if error    calling format fr
om "C"  write(fcb,buffer,count)    writecsect  lxih,2offset in stack till count 
 dadspget address offcb(fcb,filename)    setfcbcsect  popbget return address  po
phaddress of file name  popdaddress of fcb  pushdput data back on stack  pushh  
pushb  dcxhset pointer back 1 before file name  setfcb1  inxhmove pointer to nex
t chracter  mova,mget character from buffer  oraacheck for end of buffer  jzsetf
cb6error null file name  cpi' 'see if leading space   jzsetfcb1yes move to next 
character  pushhsave starting address of file name  setfcb1a   number of record 
to read  mova,mget low byte of count  move,msave for later use  inxhmove to high
 byte of count  oramsee if 16 bit count is zero  movd,mget high byte of count   
jzwrite1yes donot write any more records  dcxdsubtract 1 from count  movm,dput h
igh byte back  dcxhpoint to high byte  movm,esave low byte  inxhmove to buffer a
ddress  inxh  move,mget address of buffer  inxhmove to high byte of address  pus
hhsave current pointemova,mget character from file name  oraasee if end of strin
g  jzsetfcb1byes... loop back till not space  inxhmove to next byte  jmpsetfcb1a
  setfcb1b  dcxhmove back 1 character  mova,mget this chracter from buffer  cpi'
 'is this character a space  jzsetfcb1bloop till none space character is found  
inxhmove to end of string  mvim,0move end of string marker  pophget starting add
ress back  inxhmove to "" if disk spec  mova,mget this character fr on stack  mo
vd,mget high byte of address  mvic,26set dma address  callbdoscall cpm to set bu
ffer address  pophremove current pointer from stack  inxhmove to address of fcb 
 pushhput current pointer back on stack  move,mget low byte of fcb address  inxh
move to high byte of address  movd,mget high address of fcb  mvic,21write record
 to disk  callbdoscall cpm to do it  pophget current pointer back  oraacheck for
 errors  jnzwrite2error writorm file name  dcxhput pointer back  cpi''see if dis
k spec in file name   jnzsetfcb2no gt ready for file name  mova,mget disk name  
callsetfcb10make if upper case  sui''make it 01-16 for disk a-p  inxhmove to sta
rt of file name  inxh  jmpsetfcb3move disk value into fcb  setfcb2  xraamake def
ualt disk  setfcb3  staxdsave value for disk drive  inxdmove fcb to file name  m
vib,8number of byte in file name  callsetfcb11move file name into plaing file fr
om disk  dcxhmove to address of buffer  movd,mget high byte of address  dcxhmove
 to low  byte of address  move,mget low byte of address  xchgput address in hl a
nd varble address in hl  lxib,80hlenght of 1 record on disk  dadbadd sector leng
ht to buffer address  xchgput buffer address back in de  movm,esave new low byte
 of address  inxhmove to high byte of address  movm,dsave high byte of address  
jmpwritesee ittime towrite next record ce  jnzsetfcb6see if bad character in fil
e name  cpi'.'chek to see if file type  jnzsetfcb4no do not move pointer past '.
'  inxhmove to file type byte  setfcb4  mvib,3number of bytes in file type  call
setfcb11move file type into fcb  jnzsetfcb6see if bad character in file type  mv
ib,24number of bytes left in fcb  mvia,0value to file fcb with  setfcb5  staxdpu
t 0 in fcb ex-r2  inxdmove to next byte  dcrbsee if done with move  jnzsetfcb5no
 keep write1  lxih,0every thing is ok return to caller  jmpwrite3set dma address
 to tbuf and return  write2  lxih,-1error writing file  write3  pushhsave return
 code  lxid,cpmcmdaddress of temp buff  mvic,26set dma address function  callbdo
scall cpm to do needed funtion  pophget return code from stack  retall done retu
rn to caller    setfcb    function to build fcb for file name pointed to in hl a
nd  address of fcb in de     calling format from "C"  set  R on moveing  lxih,0r
eturn false if no errors  ret  setfcb6  lxih,-1return -1 if bad character in fil
e name  ret    shift character to upper case    setfcb10  cpi061his it less then
 lowwer case a  rcyes...  cpi07ahis it greater then lowwer case z  rncyes  ani05
fhmake it loower case  ret    scan b characters and move into fcb checking for "
" and  bad character in file name    setfcb11  mova,mget character form file nam
e  cpi'*'is it a wild card  mih,0get size of free list area  stabasefree+2save a
s current size of free area  lxih,3000size of memory not to use  shldalocmxsave 
it for later use  ret    data area used for free storage mangment    freelistdse
ct  Basefreeds4  allocpds2  alocmxds2    argload    function to load bc with arg
 back 3 de with arg back 2 hl with   1 back  argloadcsect  lxih,8offset in stack
 for arg for bc  dadspadd to stack pointer  movc,m  inxh  movb,m  inxh via,''yes
 make it all   jzsetfcb114make all   setfcb112  mova,mget character to check  ca
llsetfcb12get and check to see if vaild  jcsetfcb113no....  staxdsave character 
in fcb  inxhmove both pointers up by 1 bye  inxd  dcrbsee if  done with file nam
e  jnzsetfcb11no keep on moveing  jmpsetfcb115done with file look for ending cha
r  setfcb113  oraacheck to see if end of file name  jzsetfcb113ayes...  cpi'.'ch
eck for delimter  rnzno ret move,m  inxh  movd,m  inxh  mova,m  inxh  movh,m  mo
vl,a  ret      inxh  movh,m  movl,a  ret      st*s*u1#"u*£+"£b1wo12w&!o 1 . &7O*
ourn and show error  setfcb113a  mvia,' 'done with field  pad with blanks  setfc
b114  staxdfill fcb with value  inxdmove to next byte of fcb  dcrbsee if done wi
th move  jnzsetfcb114no keep on filling  setfcb115  mova,mget character from fil
e name  oraa  rz  cpi'.'check for '.'  rz  inxh  jmpsetfcb115not ending characte
r keep on looking    check to see if vaild character for fcb a-z and 0-9 only  s
et carry if not a vaild character otherwise reset carry    setfcb12  callsetfcb1
0upper case character  cpi''wild card character  jzsetfcb121yes vaild character 
 cpi'$'needed for submit files  jzsetfcb121yes valid character  cpi'0'is it less
 then '0'  rcyes error invaild character  cpi'9'+1is it greater then 0 and less 
then eq 9  jcsetfcb121yes vaild character  cpi'A'is it less then 'A'  rcyes erro
r between '9' and 'A'  cpi'Z'+1is it between 'A' and 'Z'   cmcflop carry bit  re
t  setfcb121  stcset c/********************************************************/
  /**/  /*copyright(c) 1981 By Mike Bernson*/  /**/  /*submit command for cpm 2.
x*/  /*read input file and convert to $$$.sub with*/  /*$1-$9 to pram from coman
d line and convert*/  /*a to control character*/  /**/  /***********************
*********************************/    #define ERROR-1/* error return value */  #
define LF0x0a/* value used for line feed */  #define CR0x0d/* value used for ret
urn */ arry flag  cmcset carry off  ret    rsvstk    function to set how close t
o go to machine stack pointer    calling format in "C"  rsvstk(amount)    rsvstk
csect  shldalocmxsave number of bytes not to used  ret    storinit    function t
o init stroage allocation system    calling format from "c"  storinit()    stori
nitcsect  lxih,basefreeget address of start of free list  shldbasefreesave as fi
rst element  shldallocpsave as pointer to last block  lx  R #define ENDFILE0x1a/
* value used for end of file */    char infcb36/* pointer to input fcb */  char 
outfcb36/* output fcb */    char *prt/* just a spare pointer */  int  inpoff/* i
nput buffer offset */  int  outoff/* output buffer offset */    int  line/* curr
ent line number */    char inbuff128/* input buffer */  char outbuff17000/* outp
ut buffer */    /********************************************************/  /**/
  /*main*/  /**/  /*function return    /* linefeed ingore */  case LF   break   
 /* must be a viald cjaracter put in output buffer */  default  putbuff(current)
        /********************************************************/  /**/  /*doou
tput*/  /**/  /*functionto write output record to disk*/  /*put character count 
at offset 0 */  /**/  /*date writtendec 16, 1980 By Mike Bernson*/  /**/  /*****
***************************************************/  dooutput(open input and ou
tput data file */  /*also process data and output*/  /*data to $$$.sub and set l
oc 8 ff*/  /**/  /*Date writtenJan 28, 1981 by Mike Bernson*/  /**/  /**********
**********************************************/  main(argc,argv)  int argc/* num
ber of arg on command line +1 */  int argv/* pointer to each arg on command line
 */    char filename132/* hold input file name */    strcpy(filename,argv1)  str
cat(filename,".sub")    if (open(infcb,filename)    outbuff(line-1)*128outoff-1 
/* character count */    /* zero buffer till end */  while(outoff128) putbuff(0)
  if (++line148)error("Too manylines")      /***********************************
*********************/  /**/  /*done*/  /**/  /*functionto write output buffer o
ut*/  /*in backward record format*/  /**/  /*Date writtenDec 16, 1980 By Mike Be
rnson*/  /**/  /********************************************************/  done(
)    char tem)  ERROR)   infcb01/* try drive a */  if (bdos(15,infcb)  0xff)   p
uts("Input file not found")  exit()      for(lineargc line12 argvline++"")  inpo
ff128  line1    /* process input file and write output */  while(1)   doinput(ar
gv+1)  dooutput()          /****************************************************
****/  /**/  /*doinput*/  /**/  /*functionto proccess input buffer and*/  /*chan
ge $1-$9 to text needed and*/  /*p    /* create output file on disk a*/  if (ope
n(outfcb,"A$$$.SUB") ! ERROR)   outfcb32outfcb15  else if (create(outfcb,"A$$$.S
UB")  ERROR)   puts("Output File not created")  exit()    while(--line)   if (wr
ite(outfcb,outbuff+128*(line-1),1)  ERROR)   error("Disk is Full")  exit()      
close(outfcb)  prt8  *prt255  exit()        /***********************************
*********************/  /**/  /*getbuff*/  /**/  /*functionconvert ''a to contro
l char*/  /**/  /*date writtenJan 28, 1981 By Mike Bernson*/  /**/  /***********
*********************************************/  doinput(parm)  int parm    int c
urrent   /* current character working on */    outoff1/* set output offset to ze
ro */    /* pick up 1 line of input */  while(outoff120)     /* get charcter and
 see what need to be done */  switch(currentgetbuff())     /* end of file  */  c
ase ENDFILE   done()    /* '$' can be $1to getn next character from */  /*from i
nput buffer and convert*/  /*to upper case*/  /**/  /*date writtenDec 16, 1980 b
y Mike Bernson*/  /**/  /*******************************************************
*/  getbuff()    if (inpoff  128)   if (read(infcb,inbuff,1)  ERROR) return ENDF
ILE  inpoff0    return toupper(inbuffinpoff++)      /***************************
*****************************/  /**/  /*putbuff*/  /**/  /*functionto write -$9 
or $$ */  case '$'   if ((currentgetbuff())'$')   putbuff('$')  break    if (cur
rent'0' && current'9')   prtparmcurrent-'0'  while(*prt) putbuff(*prt++)  break 
   error("Invalid parmeter")  break    /* check for control chraracter */  case 
''   currentgetbuff()  if (current'A' && current'Z')  putbuff(current-'')  else 
error("Invalid control character ")  break    /* check for end of line */  case 
CR     R         chracter to output */  /*buff and inc offset*/  /**/  /*inputch
aracter to write*/  /**/  /*date writtenDec 16, 1980 By Mike Bernson*/  /**/  /*
*******************************************************/  putbuff(data)  char da
ta    outbuff(line-1)*128+outoff++data        /*********************************
***********************/  /**/  /*error*/  /**/  /*functionto print error messag
e follow*/  /*by at line (line number)*/  /**/ hadd 1 to string lenght  inxdadd 
1 to pointer to string  relocjmp,strlen1check next character    postlude strlen 
       preludestrcpy    strcpy  callarghakget arg list  lhldarg1get address of w
here to save string  xchgput address in de  lhldarg2get address of string to cop
y  strcpy1  mova,mget value from source string  staxdsave character a object str
ing  oraacheck to see if done  rzif zero done return to caller  inxhadd 1 to sou
rce pointer /*date writtendec 16, 1980 By Mike Bernson*/  /**/  /***************
*****************************************/  error(msg)  char *msg    puts(msg)/*
 print error message */  puts(" at line ")/* print "at line" */  outdec(line)/* 
print line number */  exit() /* end back to cpm */      /***********************
*********************************/  /**/  /*outdec*/  /**/  /*functionto output 
number in dec from*/  /*to console*/  /**/  /*date wri  inxdadd 1 to object poin
ter  relocjmp,strcpy1down till end of string    postlude strcpy        preludest
rcat  strcat  callarghakget parm list  lhldarg1get address of frist parm  xchgpu
t it in hl  lhldarg2get second parm  strcat1  ldaxdget byte to see if zero  oraa
set status flags  relocjz,strcat2end of string 1   inxdadd 1 to pointer  relocjm
p,strcat1loop till end of string 1  strcat2  mova,mget char for source string  s
taxdsave at end ofttenDec 16, 1980 By Mike Bernson*/  /**/  /*******************
*************************************/  outdec(number)  int number    char zero,
num  int  place    place10000  zero0    while(place0)   numnumber/place+'0' /* g
et current digit */  if (num ! '0'  place 1  zero)   zero1 /* set zero suppress 
*/  putch(num) /* print character */    numbernumber % place  placeplace/10     
 placeplace/10      10        placeplace/10  second string  oraacheck to see if 
zero  rzreturn if end of string 2  inxhadd 1 to source pointer  inxdadd 1 to obj
ect pointer  relocjmp,strcat2loop till end of source string  postlude strcat    
    preludestrpos    strpos  callarghakget parm list  pushbsave c stack on machi
ne stack  lhldarg1get string that we are searching in  xchgput address in de  lx
ib,0zero postion   strpos1  lhldarg2get address of search for string  strpos2  l
daxdget character to check   oraacheck to see if end of string 1  relocjz,strpos
4end of string arg2 is not inside of arg1  inxbadd 1 to postion  inxdadd 1 top p
ointer of arg1  cmpmcheck to see if a match on first char  relocjnz,strpos2loop 
till fisrt character match  pushdsave current postion on stack  dcxdmove pointer
 back one  strpos3  inxhadd 1 to arg1  inxdadd 1 to arg2  mova,mcheck to see if 
end of arg2  oraasee if zero   relocjz,strpos5end of argtitle'string assebmle fu
nction for BDS C'  page60      maclibbds  maclibcmac      direct  defineSTRLEN  
defineSTRCPY  defineSTRCAT  defineSTRPOS  enddir    page    strlen    return len
ght of string    preludestrlen      strlen  callarghakget arg list  lhldarg1get 
point to string  xchgput address in de  lxih,0put a zero in hl (length)  strlen1
  ldaxdget value of this character  oraacheck to see if zero  rzif zero end of s
tring return  inx  R2 match found   ldaxdget arg1  cmpmcheck to see if match  re
locjz,strpos3loop to end of string or nomatch  popdremove search address from st
ack  relocjmp,strpos1loop till end of arg1  strpos4  popbrestore c stack pointer
  lxih,0arg2 not found in arg1  ret  strpos5  movh,barg2 found in arg1  movl,c  
popdremove junk from stack  popbrestore b stack pointer  ret      postlude strpo
s  end   /*      Define system dependent parameters      */    /*      Stand-alo
ne definitions                 */    #define BUFSIZ1030  #define ERROR-1  #defin
e FALSE0  #define TRUE1  #define eol 13  #define CR13  #define LF10  #define BS8
  #define TB9  #define FF12    /*      Define symbol table parameters          *
/  #define lvalsize 3  #define SWITCHMAX 254  #define symsiz  15  #define symtbs
z 6000  #define numglbs 300  #define startglb symtab  #define endglb  startglb+n
umglbs*symsiz  #define starSTRLESTRCPSTRCA8STRPO£    8y02  G   1  2  (y2    y0 2
 1 'd ! #V#*0og*  "D xD ySTRLESTRCPSTRCA8STRPO£    8y02  G   1  2  (y2    y0 2 1
 'd ! #V#*0og*  "D xD ytloc endglb+symsiz  #define endloc  symtab+symtbsz-symsiz
    /*      Define symbol table entry format        */    #define name    0  #de
fine ident   9  #define type    10  #define indcnt11  #define storage 12  #defin
e offset  13  #define offset114  /*      System wide name size (for symbols)    
 */    #define namesize 9  #define namemax  8    /*      Define possible entries
 for "ident"     */    #define variable1/* a normal varble */  #define array2/* 
array of varbles */  #define pointer3/* poSTRLE7*!# 7**# 7** # 57**+#0!i %)+ RET
URN  8 N S "A"         CURSOR LEFT  8 C "'#9E'"  9 N S "W"         COPY repeat l
ast line  9 C "R"          CTRL COPY ignore current line and repeat  15 C "'#8E'
"     CTRL 0 'B*.*' (for PIP)  16 N S "G"        CLR  16 C "K"         Cinter to
 a varble */  #define function4/* entry is a function */  /*      Define possibl
e entries for "type"      */    #define cchar   1  #define cint    2    /*Lenght
 of possible entries for "type"*/    #define lchar1  #define lint2  #define lpoi
nt2    /*      Define possible entries for "storage"   */    #define statik  1  
#define stkloc  2  #define stkarg  3    /*values returned by heirxx */    #defin
eLOADED0/* value on top of stack */  #define ADDRESS1/* address of lvalue on sta
ck */ /*********************************************************************/  /
*                                                                   */  /*   Thi
s C compiler is copied from Dr. Dobb's Journal of Computer   */  /*        Calis
thenics & Orthodontia (issue number 45)               */  /*   -- Distribution a
nd use is unrestricted for non-commercial use. */  /*                           
                                        */  /*                                  
               RAF 8-8-80        */  / #define NOTLOADED2/* address in lvalue in
 array not loaded */  #define CONSTANT3/* constant in lval */  /*      Define th
e "while" statement queue      */    #define wqtabsz 100  #define wqsiz   6  #de
fine wqmax   wq+wqtabsz-wqsiz    /*      Define entry offsets in while queue    
 */    #define wqsym   0  #define wqsp    1  #define wqloop  2  #define wqlab   
3  #define wqend4  #define wqbody5  /*      Define the literal pool             
    */    #define litabsz 2000  #define litmax  litabsz-1    /* *               
                                                    */  /***********************
**********************************************/    /****************************
********************/  /*                                              */  /*   
          small-c compiler                 */  /*                 rev. 1.1      
               */  /*               by Ron Cain                    */  /*       
                                       */  /************************************
************/     R     Define the input line                   */    #define li
nesize 80  #define linemax linesize-1  #define mpmax   linemax    /*      Define
 the macro (define) pool          */    #define macqsize 1000  #define macmax  m
acqsize-1    /*      Define statement types (tokens)         */    #define stif 
   1  #define stwhile 2  #define stfor3  #define stswitch 4  #define streturn 5 
 #define stbreak 6  #define stcont  7  #define stasm   8  #define stexp   9    /
*name of some function called by code gen step */     /* work ptr to any char bu
ffer */  int     *iptr          /* work ptr to any int buffer */  /*file io buff
ers*/  char finpBUFSIZ/* input file buffer */  char finp2BUFSIZ/* input 2 file b
uffer */  char foutBUFSIZ/* ouput file buffer */  n&3!#Vr+s3*3*3!!s#r!#Vr+sz3!33
334!33CmVWZWU*9mAmV*smZXXX2mmX0)XXXZXDMR#go"9mZy xZ*Qmsm(    #define EQ"comp"  #
defineGE"comp+25h"  #define GT"comp+12h"  #define LE"comp+2fh"  #define LT"comp+
1ch"  #define NE"comp+19h"    #define UGE"ucomp+13h"  #define UGT"ucomp"  #defin
eULE"ucomp+1ch"  #defineULT"ucomp+0ah"    #define PREINC"incdec"  #define PREDEC
"incdec+08h"  #define POSTINC"incdec+10h"  #define POSTDEC"indec+1ah"    /*     
 Now reserve some storage words          */    char    symtabsymtbsz        /* s
ymbol table */  char    *glbptr,*locptr           cc1 c1.c -e 8000  cc1 c2.c -e 
8000  cc1 c3.c -e 8000  cc1 c4.c -e 8000  cc1 c5.c -e 8000  cc1 c6.c -e 8000  cc
1 c7.c -e 8000  cc1 c8.c -e 8000  cc1 c9.c -e 8000  clink c1 c2 c3 c4 c5 c6 c7 c
8 c9 c1 c2 c3 c4 c5 c6 c7 c8 c9  -r e00 -s    *0005*cc1 c6.c          /* ptrs to
 next entries */  int     wqwqtabsz            /* while queue */  int     *wqptr
                 /* ptr to next entry */    char    litqlitabsz          /* lite
ral pool */  int     litptr                 /* ptr to next entry */    char    m
acqmacqsize         /* macro string buffer */  int     macptr                 /*
 and its index */    char    linelinesize         /* parsing buffer */  char    
mlinelinesize        /* temp macro buffer */  int     lptr,mptr              /* 
ptrs into each */    /*      Misc storage    */    int     nxtlab,         /* ne
xt avail label # */          litlab,         /* label # assigned to literal pool
 */          sp,             /* compiler relative stk ptr */          argstk,   
      /* function arg sp */          ncmp,           /* # open compound statemen
ts */          errcnt,         /* # errors in compilation */          eof,      
      /* set non-zero on final input eof */          input,          /* iob # fo
r input file */          outpu/* start ccl */  /**/  /*Compiler begins execution
 here  */  /**/  #ifndef TRUE/*see if need to use include file */  #include c.de
f  #endif  main()    glbptrstartglb/* clear global symbols */  locptrstartloc/* 
clear local symbols */  wqptrwq/* clear while queue */  macptr/* clear the macro
 pool */  litptr/* clear literal pool */  nxtlab /* next label to assign */  sp 
/* stackptr (relative) */  errcnt/* no errors */  eof/* not eof yet */t,        
 /* iob # for output file (if any) */          input2,         /* iob # for "inc
lude" title */  line1,/* current line number in main file */  line2,/* current l
ine in include file */          ctext,          /* non-zero to intermix c-source
 */          cmode,          /* non-zero while parsing c-code */                
          /* zero when passing assembly code */  cif,/* state of preprocess if s
tatement */          lastst         /* last executed statment type */    char   
 *cptr        R           input/* no input file */  input2/* or include file */ 
 output/* no open units */  ncmp/* no open compound states */  ctext/* do not pr
int text */  lastst0/* no last statement yet */  cif/* state of #ifxxxx */  cmod
e1/* enable preprocessing */  litlabgetlabel()/* label number for literal poll *
/  /**/  /*compiler body*/  /**/  ask()/* get user options */  openout()/* get a
n output file */  openin()/* and initial input file */  header()ptrcptr+symsiz  
    /**/  /*dump extrn function*/  /**/  dumpextrn()    char *ptr    ptrstartglb
  while(ptr!glbptr)   if (!ptroffset) extrn(ptr)  ptrptr+symsiz      /**/  /*Rep
ort errors for user*/  /**/  errorsummary()    /* see if anything left hanging..
. */  if (ncmp) error("missing closing bracket")  /* open compund statment ... *
/  if (!cif) error("missing closing #endif")  nl()  comment()  outdec(errcnt) /*
 total # errors */  outst/* intro code */  parse()/* process ALL input */  dumpl
its()/* then dump literal pool */  dumpglbs()/* and all static memory */  dumpex
trn()/* make all function defined extrn */  errorsummary()/* summarize errors */
  trailer()/* follow-up code */  closeout()/* close the output */  if (errcnt) u
nlink("a$$$.sub") /* if errors erase submit file */  return/* then exit to syste
m */    /**/  /*Process all input text*/  /**/  /* At this level, only static de
clar(" errors in compilation.")  nl()    /**/  /*Get options from user*/  /**/  
ask()    int k  kill() /* clear input line */  pl("  * * *  small-c  version 1.1
 compiler  * * *n")  /* see if user wants to interleasve the c-text*/  /*      i
nform of comments (for clarity) */  pl("Do you wish to c-text to appear ")  gets
(line)/* get answer */  if(toupper(ch())'Y') ctext1/* user said yes */    /**/  
/*Get output filename*/  /**/  openout()    kill() rations,*/  /*defines, includ
es, and function*/  /*definitions are legal...*/  parse()    while (!eof) /* do 
until no more input */  if(amatch("char",4))   declglb(cchar)  ns()    else if(a
match("int",3))   declglb(cint)  ns()    else if(match("#asm")) doasm()  else if
(match("#include")) doinclude()  else if(match("#define")) addmac()   else if(ma
tch("#ifndef")) doifndef()  else if(match("#ifdef")) doifdef()   else newfunc() 
 blanks()/* force eo/* erase line */  output0       /* start with none */  pl("O
utput filename ") /* ask...*/  gets(line)     /* get a filename */  if(ch()0)ret
urn      /* none given... */  if ((outputfcreat(line,fout))  ERROR)     output0 
     /* can't open */  error("Open failure")    kill() /* erase line */    /**/ 
 /*Get (next) input file*/  /**/  openin()    input0/* none to start with */  wh
ile (!input)/* any above 1 allowed */  kill()/* clear line */  if(eof)f if pendi
ng */      /**/  /*Dump the literal pool*/  /**/  dumplits()    int j,k    if (l
itptr0) return  /* if nothing there, exit...*/  printlabel(litlab)  col()/* prin
t literal label */  k0 /* init an index... */  while (klitptr)  /*      to loop 
with */  defbyte() /* pseudo-op to define byte */  j10   /* max bytes per line *
/  while(j--)   outdec(litqk++)  if (j0  klitptr)   nl()  /* need cr */  break  
  outbyte('break/* if user said none */  pl("Input filename ")  gets(line)/* get
 a name */  if(ch()0)   eof1  break/* none given... */    line10  if ((inputfope
n(line,finp))  ERROR)   input0/* can't open it */  pl("Open failure")      kill(
) /* erase line */    /**/  /*Open an include file*/  /**/  doinclude()    char 
fname31/* place to open file name */  char fend/* ending character for file name
 */  int  lenght/* size of file name ,')   /* separate bytes */      litptr0    
/**/  /*Dump all static variables*/  /**/  dumpglbs()    int j  dsect("globals")
  cptrstartglb  while(cptrglbptr)   if (cptrident ! function)   /* do if anythin
g but function */  outstr(cptr)col()  /* output name as label... */  defstorage(
)   /*define storage */  j((cptroffset&255)+  ((cptroffset+1&255)8))  /* calc # 
bytes */  outdec(j)      /* need that many */  nl()    c  R*/  while(isspace(ch(
))) gch() /* skip over to name */  fend' '  if (ch()'')   fend''  gch()    if (c
h()'"')   fend'"'  gch()    lenght0  while(lenght30 && ch() && ch()!fend)   fnam
elenght++ch()  gch()    fnamelenght0  if (!(fend  ch()  (fend ' ' &&  !ch())))  
 error("invaild file name for include")  kill()  return    if (!lenght)   error(
"missing file name for include")  kill()  return    line20  if (input2)ine stack
 */  /*and adds symbol table entry with appropriate*/  /*stack offset to find it
 again*/  declloc(typ)    /* typ is cchar or cint */  int typ    int j  int coun
t  char snamenamesize  while(1)   count0  if (endst()) return  if (match("*"))  
  jpointer  ++count  while(ch()'*')   ++count  gch()      else jvariable  if (!s
ymname(sname)) illname()  if (findloc(sname)) multidef(sname)  dataparse(sname,t
yp,stkloc,j,count)  if (   error("nested include not aloud")  kill()  return    
if ((input2fopen(fname,finp2))  ERROR)    error("Open failure on include file") 
 input20    kill()    /**/  /*#ifndef */  /**/  doifndef()    char snamenamesize
  int lval2    /* check to if define as constant */  blanks()  if (constant(lval
))   cifFALSE  return      /* check to see if vaild sysmbol */  if (!symname(sna
me))   error("invaild identifier")  kill()  return  !match(",")) return      /**
/  /*parse out data item and add to symbol*/  /*symbol table.*/  /**/  /*written
 April 8, 1981 By Mike Bernson*/  /**/  dataparse(sname,typ,classid,identtyp,cou
nt)  char *sname/* pointer to name of symbol */  char typ/* type of data char or
 int */  char classid/* typ of storage static automic */  char identtyp/* type o
f varble pointer or varble */  int  count/* number of level of pointers */    in
t size/* amount of memory n    /* check to see if symbol is define */  if (findl
oc(sname)  findglb(sname))  cifFALSE else cifTRUE    /**/  /*#ifdef*/  /**/  doi
fdef()    char snamenamesize  int  lval2    /* check to see if constant */  blan
ks()  if (!constant(lval))   cifFALSE  return      /* check to see if vaild symb
ol*/  if (!symname(sname))   error("invaild identifier")  kill()      /* check t
o see if symbol is define */  if (findloc(sname)  findglb(sname))   cifTReeded f
or varble */  int value/* used to hold value for offset */  char *ptr/* pointer 
to free slot in symbol table */    /* check to see if subscript */  if (match(""
))     /* add 1 to inderict count */  ++count    /* check to see null subscript 
*/  if (sizeneedsub())     /* subscript size not null */  if (identtyppointer)  
   /* array of pointer *tempsize */  sizesize+size    else     /* array tempsize
 */  identtyparray  if (typcint) sUE else cifFALSE    /**/  /*Close the output f
ile*/  /**/  closeout()    if (output) /* if open mark end, close it */  putc(26
,fout)  fflush(fout)  fclose(output)    output0      /* mark as closed */    /**
/  /*Declare a static variable*/  /*(i.e. define for use)*/  /**/  /* makes an e
ntry in the symbol table so subsequent */  /*  references can call symbol by nam
e  */  declglb(typ)    /* typ is cchar or cint */  int typ    int j  int count  
chizesize+size      else     /* null size subscript */  identtyppointer  size2  
    else   /* no subscript */  if (identtyppointer) size2  else if (typ  cint) s
ize2 else size1    /* add data element to symbol table */  switch(classid)     /
* global symbol */  case statik   if (glbptrendglb)   error("global symnol table
 overflow")  return 0    ptrglbptr  glbptr+symsiz  valuesize  break    /* stack 
localar snamenamesize    while(1)   count0  if (endst()) return  if(match("*")) 
  jpointer  ++count   while(ch()'*')   ++count  gch()      else jvariable  if (!
symname(sname)) illname()  if(findglb(sname)) multidef(sname)  dataparse(sname,t
yp,statik,j,count)  if (match(",")0) return /* more */      /**/  /*      Declar
e local variables*/  /*      (i.e. define for use)*/  /**/  /* works just like "
declglb" but modifies mach  R varble */   case stkloc   spmodstk(sp-size)  value
sp  if (locptrendloc)   error("local symbol table overflow")  return 0    ptrloc
ptr  locptr+symsiz  break    /* arg stack */  case stkarg   valueargstk  argstk-
2  if (locptrendloc)   error("local symbol table overflow")  return 0    ptrlocp
tr  locptr+symsiz  break    /* file in symbol table entry */  strcpy(ptr+name,sn
ame)  ptridentidenttyp  ptrtyaration")  kill()  return    if(ptrfindglb(n))     
  /* already in symbol table  */  if (ptrident ! function) multidef(n)  /* alrea
dy variable by that name */  else if(ptroffset  function) multidef(n)  /* alread
y function by that name */  else   ptroffsetfunction  csect(n)    /* otherwise w
e have what was earlier*/  /*  assumed to be a function */    /* if not in table
, define as a function now */  else   /* fill in gobal symbol table */  ifpetyp 
 ptrstorageclassid  ptroffsetvalue  ptroffset+1value8  ptrindcntcount  return TR
UE    /* a"RO"  ...ESCAPE,R,O  8  N S "H"   CURSOR LEFT  8     C  "U"   CURSOR C
OLUMN 0  13    C "'#9D'"  HOME...  E  #9D"H"  ...ESCAPE,H  66 N S C "'#9E'" EXPA
ND ESC KEY...  E  #9E ""   ...ESCAPE,ESCAPE   (glbptrendglb)   error("gobal symb
ol table overflow")  else   ptrglbptr  glbptr+symsiz  strcpy(ptr+name,n)  ptride
ntfunction  ptrtypeint  ptroffsetfunction  ptroffset1  ptrindcnt  ptrstorage0   
 csect(n)      argstk0       /* init arg count */  while(match(")")  0)     /* t
hen count args */  /* any legal name bumps arg count */  if (symname(n)) argstka
rgstk+2  else  error("illegal argument name")  junk()    blanks()  /* if not clo
sing paren, should be a comma */  if( streq(line+lptr,")")  0)   if(match(",")0)
  error("expected comma")    if(endst())break    locptrstartloc/* "clear" local 
symbol table*/  sp0   /* preset stack ptr */  while(argstk)   /* now let user de
clare what types of things */  /*      those arguments were */  if (amatch("char
",4))   getarg(cchar)  ns()    else if (amatch("int",3))   getarg(cint)  ns()   
 else       #ifndef TRUE/* see if need include file */  #include c.def  #endif  
  /**/  /*Get required array size*/  /**/  /* invoked when declared variable is 
follwed by "" */  /*      this routine makes subscript the absolute */  /*      
size of the array. */  needsub()    int num1  if (match("")) return 0/* null siz
e */  if (number(num)0) /* go after a number */  error("must be constant")     /
* it isn't */  while(ch() ! ',' && ch() ! '' && ch()) gch()  return 1    error("
wrong number args")  break      if(statement()!streturn)    /* do a statement, b
ut if */  /* it's a return, skip */  /* cleaning up the stack */  modstk(0)  ret
()    sp0  locptrstartloc  dumplits()  litlabgetlabel()    /*      */  /*      D
eclare argument types  */  /*      */  /* called from "newfunc" this routine add
s a entry in the */  /*      local symbol table for each named argument */  geta
rg(t)       /* t  cchar or cint */  int t     if (num00)   error("negative size 
illegal")  num0(-num0)    needbrack("")/* force single dimension */  return num0
/* and return size */    /**/  /*      Begin a function*/  /**/  /* Called from 
"parse" this routine tries to make a function */  /*      out of what follows.  
  */  newfunc()    char nnamesize,*ptr  if (symname(n)  0)   error("illegal func
tion or declaration")  kill()  return    if (!match("("))   error("illegal funct
ion or decl  Rchar nnamesize,cint j,count  while(1)   count0  if (argstk  0) ret
urn   /* no more args */  if (match("*"))   jpointer  ++count  while(ch()'*')   
++count  gch()      else jvariable  if (symname(n)  0) illname()  if (findloc(n)
) multidef(n)  dataparse(n,t,stkarg,j,count)  if(endst())return  if(match(",")0)
error("expected comma")      /*      */  /*      Statement parser*/  /*      */ 
 /* called whenever syntax require/81*/  needcbrace()    if (match(""))return FA
LSE  error("Missing right brace")  junk()  return TRUE    /*      */  /*      Co
mpound statement      */  /*      */  /* allow any number of statements to fall 
between "" */  compound()    ++ncmp /* new level open */  while(match("")0)  if(
eof) return  else statement()  --ncmp /* close current level */    /*      */  /
*      "if" statement  */  /*      */  doif()    int flev,fsp,flab1,flab2  flevl
ocptrs      */  /*      a statement.     */  /*  this routine performs that stat
ement */  /*  and returns a number telling which one */  statement()         if 
(!ch() && eof) return  else if(amatch("char",4))   declloc(cchar)  ns()    else 
if(amatch("int",3))   declloc(cint)  ns()    else if(match("")) compound()  else
 if(amatch("if",2))   doif()  lastststif    else if(amatch("while",5))   dowhile
()  lastststwhile    else if (amatch("for",3))   dofor()      /* record current 
local level */  fspsp /* record current stk ptr */  flab1 getlabel() /* get labe
l for false branch */  test(flab1)    /*get expression, and branch false */  sta
tement()    /* if true, do a statement */  spmodstk(fsp) /* then clean up the st
ack */  locptrflev    /* and deallocate any locals */  if (amatch("else",4)0)/* 
if...else  */  /* simple "if"...print false label */  sprintlabel(flab1)  return
 /* and exit */    /* an "if...else" statement. */  jlastststfor    else if (ama
tch("switch",6))   doswitch()  lastststswitch    else if(amatch("return",6))   d
oreturn()  ns()  lastststreturn    else if(amatch("break",5))   dobreak()  ns() 
 lastststbreak    else if(amatch("continue",8))   docont()  ns()  lastststcont  
  else if(match(""))  else if(match("#asm"))   doasm()  ns()  lastststasm    /* 
if nothing else, assume it's an expression */  else   expression()  ns()  ump(fl
ab2getlabel()) /* jump around the false code */  sprintlabel(flab1)    /* print 
true label */  statement()/* and do else clause */  spmodstk(fsp)/* then clean u
p stack ptr */  locptrflev/* dellocate locals */  sprintlabel(flab2)/* print tru
e label */    /*      */  /*      "while" statement       */  /*      */  dowhil
e()    int quewqsiz    /* allocate local queue */    quewqsymlocptr      /* reco
rd local level */  quewqspsp   /* and stk ptr */  lastststexp    return lastst  
  /*      */  /*      Semicolon enforcer      */  /*      */  /* called whenever
 syntax requires a semicolon */  ns()    if(match("")0)error("missing semicolon"
)  /**/  /*need semicolon*/  /*writtenby MikeBernson1/81*/  /**/  needsem()    i
f (match(""))return FALSE  error("Missing semicolon")  junk()  return TRUE    /*
*/  /*need opening parn*/  /*writtenby MikeBernson1/81*/  needoparn()    if (mat
ch("("))quewqloop/* and looping label */  quewqendgetlabel()/* continue label */
  quewqlabgetlabel()/* and exit label */  addwhile(que)/* add to looping stack*/
  sprintlabel(quewqloop)/* loop label */  test(quewqlab)/* see if true */  state
ment()/* if so, do a statement */  jump(quewqloop)/* loopto label */  sprintlabe
l(quewqlab)/* exit label */  locptrquewqsym/* deallocate locals */  spmodstk(que
wqsp)/* clean up stkptr */  delwhile()/* deletreturn FALSE  error("Missing left 
parnthis")  junk()  return TRUE    /**/  /*need closing parn*/  /*writtenby Mike
Bernson1/81*/  needcparn()    if (match(")"))return FALSE  error("Missing right 
parnthis")  junk()  return TRUE    /**/  /*need opening brace*/  /*writtenby Mik
eBernson1/81*/  needobrace()    if (match(""))return FALSE  error("Missing left 
brace")  junk()  return TRUE    /**/  /*need closing brace*/  /*writtenby MikeBe
rnson1  Re queueentry */    /**/  /*"Switch" statement*/  /**/  /*written by Mik
e Bernson 1/81*/  /**/  doswitch()    int valueSWITCHMAX  /* value for case stat
emant */  int labelSWITCHMAX  /* value for each label */  int count,tenp /* numb
er of switches */  int endlabel  /* label for default */  int labelswitch/* used
 for switch label */  int temp,val2  int quewqsiz/* local que area */  count0/* 
number of case statements */  quewqsymlocptr/* local va/  quewqbodygetlabel()/* 
body for cody */  addwhile(que)/* add while to loop que */  if (needoparn()) /* 
check for open parn */  delwhile()/* delete for entry from que */  return    exp
ression()/* initexpress*/  if (needsem()) /* check for semcol */  delwhile()/* d
elete que entry */  return    sprintlabel(quewqloop)/* control looplabel */  sta
tusexpression()/* loop control express */  testjump(quewqlab,status)/* see if ex
it time */  jump(quewqbodyble pointer */  quewqspsp/* save current stack pointer
 */  endlabel/* default exit label */  quewqloop/* looping label */  quewqlab/* 
loop exit varble */  quewqendgetlabel()/* continue label */  addwhile(que)/* add
 to while stack */  if (needoparn()) /* check to seeif"(" exits */  delwhile()/*
 no delete switch entry and */  return/* return out of switch*/    expression()/
* expression for switch */  push()  if (needcparn()) /* check for ")" */  de)/* 
not time to exit do body */  if (needsem()) /* check for semcol */  delwhile()/*
 delete 1 queentry */  return    sprintlabel(quewqend)/* print end of loop */  e
xpression()/* end loop expression */  jump(quewqloop)/* do loop control expressi
on */  if (needcparn())   delwhile()  return    sprintlabel(quewqbody)  statemen
t()  jump(quewqend)  sprintlabel(quewqlab)  locptrquewqsym  spmodstk(quewqsp)  d
elwhile()    /*       */  /*      "lwhile()/* not fould detele queentry */  retu
rn/* and exit switch statemant */    if (needobrace())   delwhile()  return    j
ump(labelswitchgetlabel())  spsp+2    while(1)    if (amatch("case",4))   if (co
nstexp(val)  0 )   error("Bad constant")  continue    if (countSWITCHMAX-2)   va
luecountval0  sprintlabel(labelcount++getlabel())    else error("Too many case s
tatments")  if (!match("")) error("Missing colon")  return" statement      */  /
*      */  doreturn()    /* if not end of statement, get an expression */  if(en
dst()0)expression()  modstk(0)      /* clean up stk */  ret()  /* and exit funct
ion */    /*      */  /*      "break" statement       */  /*      */  dobreak() 
   int *ptr  /* see if any "whiles" are open */  if ((ptrreadwhile())0) return  
     /* no */  modstk(ptrwqsp)    /* else clean up stk ptr */  jump(ptrwqlab)   
    /* jump to exit label */    /*  else if (amatch("default",7))   endlabelgetl
abel()  sprintlabel(endlabel)  if (!match("")) error("Missing colon")    else if
 (match(""))   jump(quewqlab)/* jump past switch data */  temp0  sprintlabel(lab
elswitch)  execswitch(count,labelswitchgetlabel(),endlabel)  sprintlabel(labelsw
itch)  while(tempcount)   defword()  outdec(valuetemp)  outstr(",")  printlabel(
labeltemp++)  nl()    delwhile()  sprintlabel(quewqlab)        */  /*      "cont
inue" statement    */  /*      */  docont()    int *ptr  /* see if any "whiles" 
are open */  if ((ptrreadwhile())0) return       /* no */  modstk((ptrwqsp))    
/* else clean up stk ptr */  jump(ptrwqend)      /* jump to end label */    /*  
    */  /*      "asm" pseudo-statement  */  /*      */  /* enters mode where ass
embly language statements are */  /*      passed intact through parser    */  do
asm()    cmode0/* mark mode as "asm" */  whilelocptrquewqsym  spmodstk(quewqsp) 
 return    else statement()    /**/  /*"for" statement*/  /**/  /*written by Mik
e Bernson 1/81*/  /**/  dofor()    int quewqsiz/* local que area */  int status/
* machine status after expession */    quewqsymlocptr    /* save locaL LEVEL */ 
 quewqspsp/* and stack pointer */  quewqloopgetlabel()/* looping label */  quewq
labgetlabel()/* loop exit varble */  quewqendgetlabel()/* loop end label *  R(1)
  inline()      /* get and print lines */  if (match("#endasm")) break    /* unt
il... */  if(eof)break  outstr(line)  nl()    kill() /* invalidate line */  cmod
e1          kill() /* invalidate line */  cmode1           */        puts("end l
oopn")/* count is now zero. Call puts to   * output staring to screen   */      
while(cmacqk++)  keepch(c)  else   k0  while(csnamek++)  keepch(c)      else kee
pch(gch())    keepch(0)  if(mptrmpmax) error("line too long")  lptrmptr0  while(
linelptr++mlinemptr++)  lptr0    addmac()    char snamenamesize  int k  if (symn
ame(sname)  0)   illname()  kill()  return    k0  while(putmac(snamek++))  while
(isspace(ch())) gch()  while(putmac(gch()))  if (macptr  macmax) error("marco ta
ble full")    putmac(c)  char c    macqmacptrc  if(macptr  macmax) macptr++  ret
urn c    findmac(sname)  char *sname    int k  k0  while(kmacptr)   if(astreq(sn
ame,macq+k,namemax))   while(macqk++)  return k    while(macqk++)  while(macqk++
)    return 0    outbyte(c)  char c    if (!c) return 0/* if null return */  if 
(output)   if (putc(c,fout)  ERROR)   closeout()  error("Output file error")    
  else putch(c)  return c/* start of cc4 */  #ifndef TRUE/* check to see if need
 include file */  #include C.DEF  #endif  keepch(c)  char c    mlinemptrc  if (m
ptrmpmax) mptr++  return c    preprocess()    int k  char c,snamenamesize  if (!
cmode) return  mptrlptr0  while(!cif && !eof)   if (match("#endif")) cifTRUE  el
se inline()    if (ch()  '#') match("#endif")  while(ch())   if (isspace(ch())) 
  keepch(' ')  while(isspace(ch())) gch()    else if (ch(    outstr(ptr)  char *
ptr    while(outbyte(*ptr++))    nl()    outbyte('r')  outbyte('n')    tab()    
outbyte('t')    col()    outbyte('')    error(ptr)  char *ptr    char buff80  in
t  j,k  strcpy(buff,ptr)  strcat(buff," "")  jlptr-10  if (j0) j0  kstrlen(buff)
  while(j-15lptr && linej) buffk++linej++  buffk0  strcat(buff,""")  errorprint(
buff)  return    errorprint(ptr)  char ptr    char buff80  int k,j  comment()o) 
 '')   keepch(ch())  gch()  if (!ch())   error("missing escape character")  brea
k    keepch(ch())  gch()    else if(ch()'"')   keepch(ch())  gch()  while(ch()!'
"')   if(!ch())     error("missing quote")    break      if (ch()  '') keepch(gc
h())  keepch(gch())    gch()  keepch('"')    else if(ch()''')   keepch(''')  gch
()  while(ch()!''')   if(!ch())     error("missutstr(line)nl()comment()  k0  whi
le(klptr)   if(linek9) tab()  else outbyte(' ')  ++k    outbyte('')  nl()comment
()outstr("******  ")  outstr(ptr)  outstr("  ******")  nl()  if (input2)   strcp
y(buff,"Error in include file at line ")  sdec(buff+strlen(buff),line2)    else 
  strcpy(buff,"Error at line ")  sdec(buff+strlen(buff),line1)    strcat(buff," 
")  strcat(buff,ptr)  strcat(buff,"n")  pl(buff)  ++errcnt     ol(ptr)      char
 ptring apostrophe")    break      if (ch() '') keepch(gch())  keepch(gch())    
gch()  keepch(''')    else if((ch()'/') && (nch()'*'))   inchar()  inchar()  whi
le(!((ch()'*') && (nch()'/')))   if(ch()0)inline()  else inchar()  if(eof)break 
   inchar()  inchar()    else if(an(ch()))   k0  while(an(ch()))   if(knamemax)s
namek++ch()  gch()    snamek0  if(kfindmac(sname))    R    ot(ptr)  nl()    ot(p
tr)  char ptr    tab()  outstr(ptr)    streq(str1,str2)  char str1,str2    int k
  k0  while(str2k)   if (str1k!str2k) return 0  k++    return k    astreq(str1,s
tr2,len)  char str1,str2int len    int k  k0  while (klen)   if ((str1k)!(str2k)
)break  if(!str1k)break  if(!str2k)break  k++    if (an(str1k))return 0  if (an(
str2k))return 0  return k    match(lit)  char *lit    int k    /****************
****************************************/  /**/  /*expression handler */  /**/  
/*table below show precedence of operator*/  /**/  /****************************
****************************/  /*operator* routine* associativity*/  /**********
**********************************************/  /* ++ -- - * &* heir10* left to
 right*/  /********************************************************/  /** / %* h
eir9* rigth to left*/  /*************************blanks()  if (kstreq(line+lptr,
lit))  lptrlptr+k  return 1    return 0    amatch(lit,len)  char *litint len    
 int k  blanks()  if (kastreq(line+lptr,lit,len))   lptrlptr+k  while(an(ch())) 
inbyte()  return 1    return 0    blanks()    while(1)   while(ch()0)   inline()
  preprocess()  if (eof) break    if(isspace(ch())) gch()  else return      outd
ec(number)  int number    char buff10  outstr(sdec(buff,number))    sd**********
*********************/  /*+ -* heir8* left to right*/  /************************
********************************/  /* * heir7* left to right*/  /***************
*****************************************/  /*   * heir6* left to right*/  /****
****************************************************/  /* !* heir5* left to rigt
h */  /********************************************************/  /*&* heir4* le
ft to rigth */  /*********************************************ec(string,number) 
 char string  int number    int k,zs,j  char c  jzs0  k10000  if (number0)   num
ber(-number)  stringj++'-'    while (k1)   cnumber/k + '0'  if (c ! '0'  k  1  z
s)   zs1  stringj++c     numbernumber%k  kk/10    stringj0  return string    /**
/  /*to output number as a hex value*/  /**/  /*written june 28, 1981 by Mike Be
rnson*/  /**/  outhex(value)  int value    int  postion  cha***********/  /** he
ir3* left to right */  /********************************************************
/  /** heir2* left to right */  /***********************************************
*********/  /*&&* heir1e* left to right */  /***********************************
*********************/  /** heir1d* left to right */  /*************************
*******************************/  /*  - + * %  * heir1 * left to right */  /*/ &
  ***/  /******************************************r *hex    hex"0123456789abcde
f"  for(postion16 postion  0 postion -4)   outbyte(hex(valuepostion) & 0x0f)  ou
tbyte('h')   ,FNxgGoy*$&&&&&**************/  #ifndef TRUE/* check to see if need
 include file */  #include C.DEF  #endif  expression()            int lvallvalsi
ze,status  statusFALSE  rvalue(lval,heir1(lval,&status))  return status    heir1
(lval,status)  int lval  int *status            int k  char *ptr          kheir1
d(lval,status)          if (ch() !  '' && nch() ! '') return k  *statusFALSE  sw
itch(ch())     /* just an equal */  case ''   gch()  equal(lval,k)  break    /* 
add   Rvalue then store */  case '+'   case '-'   gch()gch()  equalexp(lval,k)  
sizeadjust(lval)  if (ch()  '-') sub() else add()  k1  break    case '*'   gch()
gch()  equalexp(lval,k)  mult()  k1  break    case '/'   gch()gch()  equalexp(lv
al,k)  div()  k1  break      case '%'   gch()gch()  equalexp(lval,k)  mod()  k1 
 break      case '&'   gch()gch()  equalexp(lval,k)  and()  k1&"))   push()  rva
lue(lval2,heir5(lval2,status))  and()  *statusTRUE    else return 0      heir5(l
val,status)  int lval  int *status    int k,lval2lvalsize  kheir6(lval,status)  
blanks()  if ((streq(line+lptr,"") 0) &&                  (streq(line+lptr,"!") 
 0)) return k          rvalue(lval,k)          while(1)   if (match(""))   push(
)  rvalue(lval2,heir6(lval2,status))  eq()  *statusTRUE    else if (match("!")) 
  push  break      case ''   gch()gch()  equalexp(lval,k)  xor()  k1  break    c
ase ''   gch()gch()  equalexp(lval,k)  or()  k1  break    default  return k    s
tore(lval,k)  return 0    /**/  /*written by Mike Bernson 1/81*/  /**/  heir1d(l
val,status)  int lval  int *status    int k,lval2lvalsize  int label  kheir1e(lv
al,status)  blanks()  if (ch() ! ''  nch() ! '') return k  rvalue(lval,k)  ()  r
value(lval2,heir6(lval2,status))  ne()  *statusTRUE    else return 0      heir6(
lval,status)  int lval  int *status    int k,lval2lvalsize  kheir7(lval,status) 
 blanks()  if ((streq(line+lptr,"")  0) &&  (streq(line+lptr,"")  0) &&  (streq(
line+lptr,"")  0) &&  (streq(line+lptr,"")  0)) return k  if (streq(line+lptr,""
)) return k  if (streq(line+lptr,"")) return k  rvalue(lval,k)  while(1)   if (m
atch(""))   push()  rlabelgetlabel()  while(1)   if (match(""))   truejump(label
,*status)  *statusTRUE  rvalue(lval2,heir1e(lval2,status))    else   sprintlabel
(label)  return 0        /**/  /*written by Mike Bernson 1/81*/  /**/  heir1e(lv
al,status)  int lval  int *status    int label  int k,lval2lvalsize  kheir2(lval
,status)  blanks()  if (ch() ! '&'  nch() ! '&') return k  rvalue(lval,k)  label
getlabel()  while(1)   if (match("&&"))   value(lval2,heir7(lval2,status))  *sta
tusTRUE  if (cptrlval0)  if(cptridentpointer)   ule()  continue    if (cptrlval2
0)  if(cptridentpointer)   le()  continue    le()    else if (match(""))   push(
)  rvalue(lval2,heir7(lval2,status))  *statusTRUE  if (cptrlval0)  if (cptrident
pointer)   uge()  continue    if (cptrlval20)  if (cptridentpointer)   uge()  te
stjump(label,*status)  *statusTRUE  rvalue(lval2,heir2(lval2,status))    else   
sprintlabel(label)  return 0        heir2(lval,status)  int lval  int *status   
 int k,lval2lvalsize  kheir3(lval,status)  blanks()  if (ch() ! ''  nch() ''  nc
h() '') return k  rvalue(lval,k)  while(1)   if (match(""))   push()  rvalue(lva
l2,heir3(lval2,status))  or()  *statusTRUE    else return 0      heir3(lval,stat
us)  int continue    ge()    else if ((streq(line+lptr,"")) &&  (streq(line+lptr
,"")0))   inbyte()  push()  rvalue(lval2,heir7(lval2,status))  *statusTRUE  if (
cptrlval0)  if (cptridentpointer)   ult()  continue    if(cptrlval20)  if (cptri
dentpointer)   ult()  continue    lt()    else if ((streq(line+lptr,"")) &&  (st
req(line+lptr,"")  0))   inbyte()  push()  rvallval  int *status    int k,lval2l
valsize   kheir4(lval,status)  blanks()  if (ch() ! ''  nch()  '') return k  rva
lue(lval,k)  while(1)   if (match(""))   push()  rvalue(lval2,heir4(lval2,status
))  xor()  *statusTRUE    else return 0      heir4(lval,status)  int lval  int *
status    int k,lval2lvalsize  kheir5(lval,status)  blanks()  if (ch() ! '&'  nc
h()'&'  nch()  '') return k  rvalue(lval,k)  while(1)   if (match("  Rue(lval2,h
eir7(lval2,status))  *statusTRUE  if (cptrlval0)  if (cptridentpointer)   ugt() 
 continue    if (cptrlval20)  if (cptridentpointer)   ugt()  continue    gt()   
 else return 0      #,"Grabando pistas..."###,()"ERROR DE CARGA EN LA PISTA " #,
"Intente de nuevo con otro volumen."S if(match("++"))   if (!(kheir10(lval,count
,status)))   needlval()  return LOADED    lval1 + *count  address(lval,k)  prein
c(lval)  return LOADED    else if (match("--"))   if (!(kheir10(lval,count,statu
s)))   needlval()  return LOADED    lval1 + *count  address(lval,k)  predec(lval
)  *statusTRUE  return LOADED    else if (match("-"))   if (isdigit(nch())) cons
tant()  else   kheir10(lval,count,status)  rvalue(lval,/* start of cc6 */  #ifnd
efTRUE/* see if need include file */  #include C.DEF  #endif    heir7(lval,statu
s)  int lval  int *status    int k,lval2lvalsize  kheir8(lval,status)  blanks() 
 if (!streq(line+lptr,"") &&  !streq(line+lptr,"")) return k  rvalue(lval,k)  wh
ile(1)   if (match(""))   push()  kheir8(lval2)  rvalue(lval2,k)  asr()  *status
FALSE    else if (match(""))   push()  kheir8(lval2)  rvalue(lval2,k)  k)  neg()
  *statusTRUE    return LOADED    else if (match("*"))   ++*count  kheir10(lval,
count,status)  rvalue(lval,k)  lval1 + *count  *count0  *statusFALSE  return ADD
RESS    else if (match("&"))   kheir10(lval,count,status)  *statusFALSE  if (k  
0  lval0)   error("illegal address")  return LOADED    else if (lval1) return LO
ADED  else   immed()  outstr(ptrlval0)  nl()  return LOADED   asl()  *statusFALS
E    else return 0      heir8(lval,status)  int lval  int *status    int k,lval2
lvalsize  kheir9(lval,status)  blanks()  if ((ch() ! '+' && ch() ! '-')  nch()  
'') return k  rvalue(lval,k)  while(1)    switch(ch())     /* add last item to n
ext item */  case '+'   push()  gch()  kheir9(lval2,status)  rvalue(lval2,k)  si
zeadjust(lval)  add()  *statusFALSE  break    /* subtract next item from    else
 if (match("!"))   rvalue(lval,heir10(lval,count,status))  nlogical()  *statusTR
UE  return LOADED    else   kheir11(lval,status)  movmem(lval,lval2,lvalsize*2) 
 lval21 + *count  if (match("++"))   if(k  LOADED)   needlval()  return LOADED  
  address(lval,k)  postinc(lval)  *statusTRUE  return LOADED    else if (match("
--"))   if (k  LOADED)   needlval()  return LOADED    address(lval,k)  pcurrent 
item */  case '-'   push()  gch()  kheir9(lval2,status)  rvalue(lval2,k)  sizead
just(lval)  sub()  *statusFALSE  break    /* operator not "+" or "-" */  default
   return 0        heir9(lval,status)  int lval  int *status    int k,lval2lvals
ize,temp    temp0  kheir10(lval,&temp,status)  blanks()  if ((ch() ! '*' && ch()
!'/' && ch() ! '%')    nch()  '') return k  rvalue(lval,k)  while(1)   if (match
(ostdec(lval)  *statusTRUE  return LOADED    else return k      *s*u1#"u*£+"£b1w
o12w&!o 1 . &7O*o"*"))   push()  kheir10(lval2,&temp,status)  rvalue(lval2,k)  m
ult()  *statusFALSE    else if (match("/"))   push()  kheir10(lval2,&temp,status
)  rvalue(lval2,k)  div()  *statusFALSE    else if (match("%"))   push()  kheir1
0(lval2,&temp,status)  rvalue(lval2,k)  mod()  *statusFALSE    else return 0    
  heir10(lval,count,status)  int lval  int *count  int *status    int k,lval2lva
lsize  char *ptr,flag     R  #ifndefTRUE/* check to see if include file is neede
d */  #include C.DEF  #endif    /* Begin a comment line for the assembler */  co
mment()    outbyte('')    /* Print all assembler info before any code is generat
ed */  header()    outstr("starttcsect")nl()  ol("jmptinit")  ol("extrntand,asl,
asr,comp,com,div")  ol("extrntgchar,gint,incdec")  ol("extrntmult,neg,nlog,or,pi
nt,sub")  ol("extrntsxt,ucomp,xor,init,switch")  ol("extrntgintss,gintsl,gcharss
,ess on the top of the stack */  putstk(typeobj)  char typeobj    pop()  putsec(
typeobj)    /* store the specified object type in the primary register */  /*at 
the address in the secondary register*/  putsec(typeobj)  char typeobj    if (ty
peobj  cchar)   ol("movta,l")  ol("staxtd")    else call("pint")    /**/  /*writ
ten by Mike Bernson 6/9/81*/  /**/  /*store hl value after call plus*/  /*curren
t stack*/  /**/  putmemstack(lval,typ)  int  *lval  chargcharsl")  ol("extrntpin
tss,pintsl,pcharss,pcharsl")    outstr("eqtequtcomp")nl()  outstr("getequtcomp+3
5h")nl()  outstr("gttequtcomp+1ah")nl()  outstr("letequtcomp+43h")nl()  outstr("
lttequtcomp+28h")nl()  outstr("netequtcomp+0dh")nl()  outstr("ugetequtucomp+6ch"
)nl()  outstr("ugttequtucomp+51h")nl()  outstr("uletequtucomp+79h")nl()  outstr(
"ulttequtucomp+5fh")nl()    outstr("preinctequtincdec")nl()  outstr("postincteq 
typ    int off  char *ptr    ptrlval0  offptroffset+ptroffset+1*256+lval2-sp    
if (typ  cint)   if (isbyte(off)) call("pintss") else call("pintsl")  else  if (
isbyte(off)) call("pcharss") else call("pcharsl")  defvalue(off)      /* Fetch t
he specified object type indirect through the */  /*      primary register into 
the primary register */  indirect(typeobj)  char typeobj    if (typeobj  cchar) 
call("gchar")  else call("gint")    /* add primary and secoutincdec+10h")nl()  o
utstr("predectequtincdec+08h")nl()  outstr("postdectequtincdec+1ah")nl()    /* P
rint any assembler stuff needed after all code */  trailer()    ol("end")    /**
/  /*rewritten  4/30/81 by Mike Bernson*/  /**/  /* Fetch a static memory cell i
nto the primary register */  getmem(sname,typ,off)  char *sname  int  typ  int  
off    if(typcchar)   ot("ldat")  outstr(sname)  if (off)   outstr("+")  outdec(
off)    nl()  ndary registers */  addaddress()    ol("dadtd")    /* Swap the pri
mary and secondary registers */  swap()    ol("xchg")    /* Print partial instru
ction to get an immediate value */  /*      into the primary register */  immed(
)    ot("lxith,")    /* Push the primary register onto the stack */  push()    o
l("pushth")  spsp-2    /* push the secondary registeron stack */  pushs()    ol(
"pushtd")  spsp-2    /* Pop the top of the stack into the secondary register */ 
 pop()  call("sxt")    else   ot("lhldt")  outstr(sname)  if (off)   outstr("+")
  outdec(off)    nl()      /**/  /*written by Mike Bernson 6/8/81*/  /**/  /*loa
d a byte offset from current stack*/  /**/  getmemstack(lval,typ)  int  *lval  c
har *typ    char *ptr  int  off    ptrlval0  offptroffset+ptroffset+1*256+lval2-
sp    if (typ  cint)  if (isbyte(off)) call("gintss") else call("gintsl")  else 
 if (isbyte(off)) ca  ol("poptd")  spsp+2    /* Swap the primary register and th
e top of the stack */  swapstk()    ol("xthl")    /* call routine and subtract 2
from stack pointer */  ccall(sname)  char *sname    spsp+2  call(sname)    /* Ca
ll the specified subroutine name */  call(sname)  char *sname    ot("callt")  ou
tstr(sname)  nl()    /* Return from subroutine */  ret()    ol("ret")    /* Perf
orm subroutine call to calue on top of stack */  callstk()    immed()  outstr("S
+5")  nll("gcharss") else call("gcharsl")  defvalue(off)    /**/  /*rewritten 4/
30/81 By Mike Bernson*/  /**/  /* Store the primary register into the specified*
/  /*static memory*/  putmem(sname,typ,off)  char *sname  int typ  int off    if
 (typcchar)   ol("movta,l")  ot("stat")    else ot("shldt")  outstr(sname)  if (
off)   outstr("+")  outdec(off)    nl()      /* Store the specified object type 
in the primary register */  /*      at the addr  Rl()  swapstk()  ol("pchl")  sp
sp+2    /* Jump to specified internal label number */  jump(label)  int label   
 ot("jmpt")  printlabel(label)  nl()    /* test the primary register and jump if
 treu to label */  truejump(label,status)  int label  int status    if (!status)
   ol("movta,h")  ol("oratl")    ot("jnzt")  printlabel(label)  nl()        /* T
est the primary register and jump if false to label */  testjump(label,status)  
int label  int status    if (!st  #ifndef TRUE    /* see if include needed */  #
include C.DEF  #endif  heir11(lval,status)  int *lval  int *status            in
t k          char *ptr          int  lval2lvalsize          kprimary(lval,status
)          ptrlval0          blanks()          switch(ch())             /* subsc
ript varble  */          case ''           gch()  /* eat '' */          switch(p
trident)             /* array of elements */          case array   *statusFALSE 
 ++lval1  atus)   ol("movta,h")  ol("oratl")    ot("jzt")  printlabel(label)  nl
()    /* routine to search switch table */  execswitch(count,label,endlabel)  in
t count/* number of case statement in switch */  int label/* label for switch ta
ble */  int endlabel/* label to execute when table search ends and not found */ 
   ot("lxitd,")  printlabel(label)  nl()  ot("lxith,")  printlabel(endlabel)  nl
()  ot("mvitb,")  outdec(count)  nl()  ot("jmptswitch")  nl()          if (const
exp(lval2) && ch()'')           lval2datasize(lval)*          lval20          ne
edbrack("")          return NOTLOADED                    else           expressi
on()          sizeadjust(lval)          swap()          address(lval,NOTLOADED) 
         addaddress()          needbrack("")          return ADDRESS            
          /* pointer to elements */          case pointer  *st  /* output extrn 
and symbol name */  extrn(n)  char *n    outstr("textrnt")  outstr(n)nl()      /
* output control section  name and key word */  csect(n)  char *n    outstr(n)  
col()  ol("CSECT")      /* output data section name and key word */  dsect(n)  c
har *n    outstr(n)  col()  ol("dsect")    /* define value using min amount of s
troage space */  defvalue(num)  int num    if (isbyte(num)) defbyte() else defwo
rd()  outdec(num)  nl()      /* check to see if nuatusFALSE          if (constex
p(lval2) && ch()'')   immed()  outdec(datasize(lval)*  lval20)  nl()  swap()  rv
alue(lval,2)  addaddress()                    else           expression()       
   sizeadjust(lval)          swap()          rvalue(lval,2)          addaddress(
)                    needbrack("")  lval1 + 1          return ADDRESS           
 /* not a vaild ident for mber is a byte */  isbyte(num)  int num    return (num
  0 && num 255)      /* Print pseudo-op to define a byte */  defbyte()    ot("db
t")    /* Print pseudo-op to define storage */  defstorage()    ot("dst")    /* 
Print pseudo-op to define a word */  defword()    ot("dwt")    /* Modify the sta
ck pointer to the new value indicated */  modstk(newsp)  int newsp    int k  kne
wsp-sp  if (!k) return newsp  if ( k  0)   if(k7)   if (k&1)   ol("inxtsp")  k-s
ubscript */          default           suberror(ptr)          return LOADED     
                 /* a function call */          case '('   *statusFALSE         
 gch() /* eat '(' */          callfunction(lval0)          return LOADED        
    /* not a subscripted or function call (not for this level */          defaul
t          return k                        primary(lval,status)  int *lval  int 
*status            char *ptr          char snamenamesize  -    while(k)   ol("po
ptb")  kk-2    return newsp      if (k0)   if (k-7)   if (k&1)   ol("dcxtsp")  k
++    while(k)   ol("pushtb")  kk+2    return newsp      swap()  immed()  outdec
(k)  nl()  ol("dadtsp")  ol("sphl")  swap()  return newsp    /*Double the primar
y register*/  doublereg()    ol("dadth")          R        int  num1          in
t k            /* clear lval array for use */          lval0          lval1     
     lval20            if(match("("))           kheir1(lval,status)          nee
dbrack(")")          return k              *statusFALSE          if (symname(sna
me))           if ((lval0findloc(sname))) return 2          if ((lval0ptrfindglb
(sname)))          if (ptrident ! function) return 2          if (ch() '(')     
      if (!(ptrfindglb(sname))) *ptr          if (!(ptrlval0)  k ! NOTLOADED) re
turn          switch(ptrstorage)             /* global symbol */          case s
tatik           immed()          outstr(ptr+name)          if (lval2)           
outstr("+")          outdec(lval2)                    nl()          break       
     /* local symbol */          case stkloc           case stkarg           imm
ed()          outdec((ptroffset+ptroffset1*256+lval2)-sp)          nl()         
      if (glbptrendglb)           error("global symbol table ofverflow")        
            else           ptrglbptr          glbptr+symsiz          strcpy(ptr+
name,sname)          ptridentfunction          ptrtypecint          ptroffset   
       ptroffset1          ptrstorage          ptrindcnt0                      l
val0ptr          return 2                    else           undefine(sname)     
     return 0      ot("dadtsp")          nl()          break                    
    /**/  /*date written 6/6/81 by Mike Bernson*/  /**/  /*check to see if stati
c load or store*/  /**/  loadstatic(lval,k)  int *lval  int k    char *ptr    pt
rlval0  if (ptrstorage  statik && k  NOTLOADED) return TRUE  else return FALSE  
  /*        */  /*      date written 4/30/81 By Mike Bernson    */  /*        */
  store(lval,k)  int *lval  int k            char *ptr  p                       
     if (constant(num))           return 0                    else           err
or("invalid expression")          junk()          return 0                    /*
        */  /*      written 4/23/81 by Mike Bernson         */  /*        */  si
zeadjust(lval)  int *lval            int size          sizedatasize(lval)       
   if (size  1) return          if (size  2)           doublereg()              
          /*        */  /*      writttrlval0          if (k0) return          sw
itch(ptrstorage)             /* local or arg type */          case stkloc       
    case stkarg           switch(ptrident)             /* ident array */        
  case array          if (lval1  ptrindcnt)  if (kADDRESS) putstk(ptrtype)  else
 putmemstack(lval,ptrtype)          break            /* ident is an pointer */  
        case pointer          if (lval1  ptrindcnt)  if (kADDRESS) putsen 4/23/8
1 By Mike Bernson         */  /*        */  datasize(lval)  int *lval           
 char *ptr          if (!(ptrlval0)) return 0          switch(ptrident)         
    /* array of elements */          case array           switch(ptrtype)       
      /* char type */          case cchar          return lchar            /* in
t type */          case cint           return lint                      /* point
er to elements */          case pointer       tk(ptrtype)  else putmemstack(lval
,ptrtype)          elseif (kADDRESS) putstk(cint)  else putmemstack(lval,cint)  
        break            /* ident is a variable */          case variable       
    if (kADDRESS) putstk(ptrtype)  else putmemstack(lval,ptrtype)          break
                    break            /* static varbles */          case statik  
         switch(ptrident)             /* array */          case array           
i    if (lval1  ptrindcnt && ptrindcnt  1)          return lpoint          else 
switch(ptrtype)             /* type char */          case cchar           return
 lchar            /* type int */          case cint          return lint        
      /* just a plain variable */  case variable   return 1                     
 /*        */  /*      written 4/23/81 By Mike Bernson         */  /*        */ 
 address(lval,k)  int *lval            char   Rf (lval1  ptrindcnt)          if 
(k1) putstk(ptrtype)          else putmem(ptr+name,ptrtype,          lval2)     
     break            /* pointer */          case pointer          if (lval1  pt
rindcnt)          if (k1) putstk(ptrtype)          else putmem(ptr+name,ptrtype,
lval1)          else          if (k1) putstk(cint)          else putmem(ptr+name
,cint,0)          break            /* variable */          case variabletmem(ptr
+name,ptrtype,0)          break                                equalexp(lval,k) 
 int *lval  int k            char *ptr          int  lval2lvalsize  int status  
          ptrlval0            /* check to see if vaild lval */          if ((ptr
identarray && ptrindcnt ! lval1)           k0  lval0  0)           needlval()   
       return                    address(lval,k)          push()          rvalue
(lval,1)  push()          rvalue(lval2,heir1e           if (k1) putstk(ptrtype) 
         else putmem(ptr+name,ptrtype,0)          break                         
       /*        */  /*      written 4/24/81 By Mike Bernson         */  /*     
   */  rvalue(lval,k)  int *lval  int k            char *ptr          ptrlval0  
        if (k0) return          switch(ptrstorage)             /* local or arg t
ype */          case stkloc           case stkarg           switch(ptrident)    
         /* iden(lval2,&status))                /*        */  /*      written 4/
9/81 By Mike Bernson          */  /*        */  equal(lval,k)  int lval  int k  
          char *ptr          int lval2lvalsize  int status            ptrlval0  
          /* check to see that is expresstion is array must be element */       
   if (ptrident  array && ptrindcnt ! lval1)           needlval()          retur
n                    switch(k)             /* data is a constant or value */   t
 array */          case array          if (lval1  ptrindcnt)  if (kADDRESS) indi
rect(ptrtype)  else getmemstack(lval,ptrtype)  else address(lval,k)          bre
ak            /* ident is an pointer */          case pointer          if (lval1
  ptrindcnt)  if (kADDRESS) indirect(ptrtype)  else getmemstack(lval,ptrtype)   
       else    if (kADDRESS) indirect(cint)  else getmemstack(lval,cint)        
  break                 case 0           needlval()          break            /*
 address of variable is on stack */          case 1           push()          br
eak            /* nothing of variable is on stack */          case 2           b
reak                    rvalue(lval2,heir1(lval2,&status))              test(lab
el)  int label    int status            needbrack("(")          statusexpression
()          needbrack(")")          testjump(label,status)            /*        
*/  /*     /* ident is a variable */          case variable           if (kADDRE
SS) indirect(ptrtype)  else getmemstack(lval,ptrtype)          break            
        break            /* static varbles */          case statik           swi
tch(ptrident)             /* array */          case array           if (lval1  p
trindcnt)          if (k1) indirect(ptrtype)          else getmem(ptr+name,ptrty
pe,          lval2)          else          written by Mike Bernson 3/80    */  /
*        */  constexp(val)  int val            blanks()          if (hex(val)) r
eturn 1          if (number(val)) return 1          if (pstr(val)) return 1     
     return 0            constant(val)  int val            if (hex(val)) immed()
          else if (number(val)) immed()          else if (pstr(val)) immed()    
      else if (qstr(val))           immed()          printlabel(litlab)         
 outbyte('+')                    else ret   if (k1) indirect(ptrtype)          e
lse address(lval,k)          break            /* pointer */          case pointe
r          if (lval1  ptrindcnt)          if (k1) indirect(ptrtype)          els
e getmem(ptr+name,ptrtype,lval2)          else          if (k1) indirect(cint)  
        else getmem(ptr+name,cint,0)          break            /* variable */   
       case variable           if (k1) indirect(ptrtype)          else g  Rurn 0
          outdec(val0)          nl()          return 1            hex(val)  int 
val            int check          char look2          if (ch() ! '0'  (nch() ! '
X' && nch() ! 'x'))          return 0          gch()          gch()          loo
k10          look0toupper(gch())          if (!(checkstrpos("0123456789ABCDEF",l
ook)))           error("invaild hex constant")          junk()          val00   
       return 1                    val0check-1          while(1)           look0
toupper(ch())          if (!(checkstrpos("0123456789ABCDEF",look)))          ret
urn 1          val0val0*16+check-1          gch()                      number(va
l)  int val            int k,minuschar c          kminus1          while(k)     
      k0          if (match("+")) k1          if (match("-"))           minus-mi
nus          k1                              if (!numeric(ch())) return 0       
   while(numeric(ch()))        /* start of c9 */  #ifndefTRUE/* check to see if 
include file is needed */  #include C.DEF  #endif    /*Add the primary and secon
dary registers*/  /*(results in primary) */  add()    pop()  ol("dadtd")    /*Su
btract the primary register from secondary */  /*(results in primary) */  sub() 
   ccall("sub")    /*Multiply the primary and secondary registers */  /*(results
 in primary) */  mult()    ccall("mult")    /*Divide the secondary register by t
he primary */  /*   cinbyte()          kk*10+(c-'0')                    if (minu
s0) k-k          val0k          return 1            pstr(val)  int val          
  int k          k0          if (!match("'")) return 0          while(ch() ! '''
 && ch()) k(k&255)*256 + estr()          gch()          val0k          return 1 
           qstr(val)  int val            char c          if (!match(""")) return
 0          val0litptr          while (ch() ! '"')           if(!ch()) break (qu
otient in primary, remainder in seconday) */  div()    ccall("div")    /*Compute
 remainder (mod) of seconday by primary */  /*(remainder in primary, quotient ie
nt in secondary) */  mod()    div()  swap()    /* Inclusive 'or' the primary and
 the secondary registers */  /*(results in primary) */  or()    ccall("or")    /
* Exxclusive 'or' then primary and the secondary registers */  /*(results in pri
mary)*/  xor()    ccall("xor")    /*'and' the primary and secondary registers   
      if(litptrlitmax)           error("string space exhausted")          while(
ch() !'"' && ch()) estr()          return 1                    litqlitptr++estr(
)                    gch()          litqlitptr++0          return 1            e
str()            char check          if (ch() ! '') return gch()          gch() 
         switch(toupper(checkgch()))           case 'R'  return CR          case
 'N'  return LF          case 'B'  return BS          case */  /*(results in pri
mary) */  and()    ccall("and")    /*Arithmetic shift right the secondary regist
er number of */  /*times in primary (results in primary ) */  asr()    ccall("as
r")    /*arithmetic left shift the secondary register number of */  /*times in p
rimary (results in primary) */  asl()    ccall("asl")    /*From two's complement
 of primary register */  neg()    call("neg")    /*form one's complement of prim
ary register */  com()    call("com")    preinc(lv 'T' return TB          case '
F'  return FF                    if (!isdigit(check)) return check          chec
kcheck-'0'          while(isdigit(ch())) checkcheck*8+gch()-'0'          return 
check               2,105,116  db32,97,110,121,  Ral)  int *lval    call("preinc
")  incdef(lval)    postinc(lval)  int *lval    call("postinc")  incdef(lval)   
 predec(lval)  int *lval    call("predec")  incdef(lval)    postdec(lval)  int *
lval    call("postdec")  incdef(lval)    incdef(lval)  int *lval    char *ptr  i
nt value    ptrlval0  if (ptrident  pointer && ptrindcnt ! lval1) value0x80  els
e value0  valuevalue  datasize(lval)  if (ptrtype  cint && ptrident ! pointer)cl
ink c1 c2 c3 c4 c5 c6 c7 c8 c9.c c1 c2 c3 c4 c8 c9.c -s -r e00   )m!9N#F##V##fo$
Q6 bkFw#6 $R$T!!$R$T",,04,DD,66,05,77,C9' *** COPYRIGHT ADVANTAGE 1985 *****77,C
9' *** COPYRIGHT ADVANTAGE 1985 ****"     fla  #,""AX "D"  #, u(nam(),t(nam(),".
")))b "T"  #,nam( valuevalue  0x80   defbyte()  outhex(value)  nl()       /*foll
owing are the conditional operators */  /*they compare the seconday register aga
inst the primary */  /*and put a leteral 1 in the primary if the condition is */
  /*true otherwise the clear the primary register */  /*change to not condition 
*/  nlogical()    call("nlog")    /*test for logical and */  land()    ccall("la
nd")    /*test for logical or */  lor()    ccall("lor")    /*test for equal */  
eq()    ccall("eq")    /*test for not equal */  ne()    ccall("ne")    /*test fo
r less than (signed) */  lt()    ccall("lt")    /*tet for less than or equal to 
(signed) */  le()    ccall("le")    /*test for greater than (signed) */  gt()   
 ccall("gt")    /*test for greater than or or equal (signed) */  ge()    ccall("
ge")    /*test for less than (unsigned) */  ult()    ccall("ult")    /*Test for 
lees than or equal to (unsigned) */  ule()    ccall("ule")    /*test/* start of 
cc3 */  /**/  #ifndef TRUE/* see if need include file */  #include C.DEF  #endif
  /*Perform a function call*/  /**/  /* called from heir11, this routine will ei
ther call*/  /*the named function, or if the supplied ptr is*/  /*zero, will cal
l the contents of HL*/  callfunction(ptr)  char *ptr      /* symbol table entry 
(or 0) */    int nargs  nargs0  blanks()/* already saw open paren */  if (ptr0) 
push()/* calling HL */  while (streq(line+lptr for greater than (unsigned) */  u
gt()    ccall("ugt")    /*test for greater than or equal to (unsigned) */  uge()
    ccall("uge")      CD,77,BC,30,18,C5,21,70,01,CD,83,BCEx C1,21,70,01,09,EB,21
,66,AE,06,08,73,23,72,23,10,FA,CD,7A,BC,C9 ,"CALL &140"( )  ,,,,  fla  TAP#,"CUR
RENT MODE TAPE"  DIS#,"CURRENT MODE DISC"1 *,")")  0)   if (endst()) break  expr
ession()/* get an argument */  if (ptr  0) swapstk() /* don't push addr */  push
()/* push argument */  nargsnargs+2/* count args*2 */  if (match(",")  0) break 
   needbrack(")")  if (ptr) call(ptr) else callstk()  spmodstk(sp+nargs)    /* c
lean up arguments */    junk()         if(an(inbyte())) while(an(ch())) gch()  e
lse while(an(ch())  0)   if(ch()  0) break  gch()    blanks()    endst()    blan
ks()  re  Rturn ((streq(line+lptr,"") (ch()  0)))    suberror(sname)  char *snam
e    char msg80    strcpy(msg,"identifier "")  strcat(msg,sname)  strcat(msg,"" 
is not a vaild array base")  errorprt(msg)  while(1)   if (endst()) return  if (
ch()'')   gch()  return    gch()        illname()    error("illegal symbol name"
)  junk()    undefine(sname)  char *sname    char msg80  strcpy(msg,"undefine id
entifier "")  strcat(msg,sname)  strcat(msg,"""z    ch()    return linelptr    n
ch()           if(ch()  0) return 0  else return(linelptr+1)    gch()         if
(ch()  0) return 0  else return linelptr++    kill()         lptr0  line00    in
byte()    while (!linelptr)   if (eof) return 0  inline()  preprocess()    retur
n gch()    inchar()    if (!linelptr) inline()  if (eof) return 0  return (gch()
)    inline()    int k  char *unit  while(1)   kill()  if (input0)openin)  error
print(msg)    /**/  /*written By Mike Bernson 4/81*/  /**/  multidef(sname)  cha
r *sname    char msg80  strcpy(msg,"already defined symbol or function "")  strc
at(msg,sname)  strcat(msg,""")  errorprint(msg)    needbrack(str)  char *str    
if (!match(str)) error("missing braket")    needlval()    error("must be lvalue"
)    findglb(sname)  char *sname    char *ptr  ptrstartglb  while(ptr!glbptr)   
if (astreq(sname,ptr,namemax)) return ptr()  if (eof) return  if (input2)   unit
finp2  line2++    else   unitfinp  line1++    while((kgetc(unit)) ! ERROR)   if(
(k'n')  (lptrlinemax)   (k26)) break  if (k ! 'r') linelptr++k    linelptr0   /*
 append null */  if(k0  k26)   if (input2)   close(input2)  input20    else   cl
ose(input)  input0      if(lptr)   if(ctext && cmode)   comment()  tab()  outstr
  ptrptr+symsiz    return 0    findloc(sname)  char *sname    char *ptr  ptrstar
tloc  while(ptr!locptr)   if(astreq(sname,ptr,namemax))return ptr  ptrptr+symsiz
    return 0    /* Test if next input string is legal symbol name */  symname(sn
ame)  char *sname    int kchar c  blanks()  if (!alpha(ch())) return 0  k0  whil
e(an(ch())) snamek++gch()  snamek0  return 1    /* Return next avail internal la
bel number */  getlabel()    return (++nxtlab) (line)  nl()    lptr0  return    
    "RO"  ...ESCAPE,R,O  8  N S "H"   CURSOR LEFT  8     C  "U"   CURSOR COLUMN 
0  13    C "'#9D'"  HOME...  E  #9D"H"  ...ESCAPE,H  66 N S C "'#9E'" EXPAND ESC
 KEY...  E  #9E ""   ...ESCAPE,ESCAPE  ms( h)X E5,2A,00,00,22,80,BC,3A,00,00,32,
82,BC,CD,80,BC,21,00,00b 22,81,BC,21,80,BC,36,C3,E1,D8,C8,FE,1A,37,3F,   /* Prin
t label at start of line */  sprintlabel(label)  int label    printlabel(label) 
 col()  nl()    /* Print specified number as label */  printlabel(label)  int la
bel    outstr("")  outdec(label)    /* Test if given character is alpha */  alph
a(c)  char c    return((c'a' && c'z')   (c'A' && c'Z')  c'')    /* Test if given
 character is numeric */  numeric(c)  char c    return(c'0' && c'9')    /* Test 
if given character is alphanumeric */  an(c)  char c         return(alpha(c)  nu
meric(c))    /* Print a carriage return and a string only to console */  pl(str)
  char *str    putch('r')  while (*str) putch(*str++)    addwhile(ptr)  int ptr 
   int k  if (wqptrwqmax)   error("too many active whiles")  return    k0  while
 (kwqsiz) *wqptr++  ptrk++    delwhile()    if (readwhile()) wqptrwqptr-wqsiz   
 readwhile()    if (wqptrwq)   error("no active while")  return 0    else return
 wqptr-wqsi  R  R  R   R           !R!!!!!!!!!  "R"""""""""  #R#########  $R$$$$
$$$$$  %R%%%%%%%%%  &R&&&&&&&&&  'R'''''''''  (R(((((((((  )R)))))))))
Tous droits réservés. Reproduction sans autorisation interdite. © Kukulcan