_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

PROGRAMM 1 QUELL

FILE INFORMATION

FILENAME(S): PROGRAMM 1 QUELL

FILE TYPE(S): PRG

FILE SIZE: 12.1K

FIRST SEEN: 2025-11-30 01:13:14

APPEARS ON: 2 disk(s)

FILE HASH

42e01e36d65cd24b14be72b0004c0fdd46643283ad4a306a621f4672077bde8d

FOUND ON DISKS (2 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
15722 SEITE A PROGRAMM 1 QUELL PRG C64er 3 9 DOWNLOAD FILE
DIVERSEN 64 ER A PROGRAMM 1 QUELL PRG DuncanTwain 3 9 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 61 5C 9D 5C 0A 00 3B 2A  2A 2A 2A 2A 2A 2A 2A 2A  |a\.\..;*********|
00000010: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000020: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000030: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 00 D9 5C  |*************..\|
00000040: 14 00 3B 2A 20 20 20 20  20 20 20 20 20 20 20 20  |..;*            |
00000050: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000060: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000070: 20 20 20 20 20 20 20 20  2A 00 15 5D 1E 00 3B 2A  |        *..]..;*|
00000080: 20 20 20 20 20 20 20 20  20 20 20 43 20 31 32 38  |           C 128|
00000090: 20 20 51 55 49 43 4B 53  4F 52 54 20 2D 20 52 4F  |  QUICKSORT - RO|
000000A0: 55 54 49 4E 45 20 20 20  20 20 20 20 20 20 20 20  |UTINE           |
000000B0: 20 20 20 20 2A 00 51 5D  28 00 3B 2A 20 20 20 20  |    *.Q](.;*    |
000000C0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000000D0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000000E0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000000F0: 2A 00 8D 5D 32 00 3B 2A  20 20 20 20 20 20 20 20  |*..]2.;*        |
00000100: 20 20 48 45 49 4D 4F 20  50 4F 4E 4E 41 54 48 20  |  HEIMO PONNATH |
00000110: 20 48 41 4D 42 55 52 47  20 20 31 39 38 36 20 20  | HAMBURG  1986  |
00000120: 20 20 20 20 20 20 20 20  20 20 20 20 2A 00 C9 5D  |            *..]|
00000130: 3C 00 3B 2A 20 4E 41 43  48 20 45 49 4E 45 52 20  |<.;* NACH EINER |
00000140: 43 36 34 2D 52 4F 55 54  49 4E 45 20 56 4F 4E 20  |C64-ROUTINE VON |
00000150: 4B 2E 53 4F 45 52 45 4E  53 45 4E 20 20 36 34 45  |K.SOERENSEN  64E|
00000160: 52 20 37 28 38 36 29 20  2A 00 05 5E 46 00 3B 2A  |R 7(86) *..^F.;*|
00000170: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000180: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000190: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000001A0: 20 20 20 20 2A 00 41 5E  50 00 3B 2A 2A 2A 2A 2A  |    *.A^P.;*****|
000001B0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000001C0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000001D0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000001E0: 2A 00 47 5E 5A 00 3B 00  54 5E 64 00 20 2E 90 24  |*.G^Z.;.T^d. ..$|
000001F0: 31 33 30 30 00 63 5E 6E  00 20 2E A9 30 2C 24 39  |1300.c^n. ..0,$9|
00000200: 33 30 30 00 69 5E 78 00  3B 00 B6 5E 82 00 3B 50  |300.i^x.;..^..;P|
00000210: 52 4F 47 52 2E 20 53 54  41 52 54 45 54 20 42 45  |ROGR. STARTET BE|
00000220: 49 20 24 31 33 30 30 2C  20 57 49 52 44 20 41 42  |I $1300, WIRD AB|
00000230: 45 52 20 42 45 49 20 41  53 53 45 4D 42 4C 49 45  |ER BEI ASSEMBLIE|
00000240: 52 55 4E 47 20 41 42 20  24 39 33 30 30 20 41 42  |RUNG AB $9300 AB|
00000250: 47 45 4C 45 47 54 00 F2  5E 8C 00 3B 20 55 4D 20  |GELEGT..^..; UM |
00000260: 4E 49 43 48 54 20 44 45  4E 20 51 55 45 4C 4C 54  |NICHT DEN QUELLT|
00000270: 45 58 54 20 4F 44 45 52  20 44 45 4E 20 54 4F 50  |EXT ODER DEN TOP|
00000280: 41 53 53 20 5A 55 20 5A  45 52 53 54 4F 45 52 45  |ASS ZU ZERSTOERE|
00000290: 4E 2E 00 2F 5F 96 00 3B  20 44 45 52 20 43 4F 44  |N../_..; DER COD|
000002A0: 45 20 4D 55 53 53 20 50  45 52 20 4D 4F 4E 49 54  |E MUSS PER MONIT|
000002B0: 4F 52 20 4E 41 43 48 20  24 31 33 30 30 20 47 45  |OR NACH $1300 GE|
000002C0: 53 43 48 4F 42 45 4E 20  57 45 52 44 45 4E 2E 00  |SCHOBEN WERDEN..|
000002D0: 35 5F A0 00 3B 00 6C 5F  AA 00 3B 2D 2D 2D 2D 2D  |5_..;.l_..;-----|
000002E0: 20 48 49 4C 46 53 5A 45  4C 4C 45 4E 20 2D 2D 2D  | HILFSZELLEN ---|
000002F0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00000300: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 00 72 5F B4  |------------.r_.|
00000310: 00 3B 00 9E 5F BE 00 20  2E 8F 58 41 44 52 3D 24  |.;.._.. ..XADR=$|
00000320: 30 41 3B 41 44 52 45 53  53 45 20 56 4F 4E 20 41  |0A;ADRESSE VON A|
00000330: 24 28 58 29 20 49 4E 20  24 30 41 2F 30 42 00 CA  |$(X) IN $0A/0B..|
00000340: 5F C8 00 20 2E 8F 59 41  44 52 3D 24 30 43 3B 41  |_.. ..YADR=$0C;A|
00000350: 44 52 45 53 53 45 20 56  4F 4E 20 41 24 28 59 29  |DRESSE VON A$(Y)|
00000360: 20 49 4E 20 24 30 43 2F  30 44 00 F6 5F D2 00 20  | IN $0C/0D.._.. |
00000370: 2E 8F 56 41 44 52 3D 24  30 45 3B 41 44 52 45 53  |..VADR=$0E;ADRES|
00000380: 53 45 20 56 4F 4E 20 41  24 28 56 29 20 49 4E 20  |SE VON A$(V) IN |
00000390: 24 30 45 2F 30 46 00 24  60 DC 00 20 2E 8F 58 44  |$0E/0F.$`.. ..XD|
000003A0: 45 53 3D 24 31 30 3B 44  45 53 43 52 49 50 54 4F  |ES=$10;DESCRIPTO|
000003B0: 52 20 41 24 28 58 29 20  49 4E 20 24 31 30 2C 31  |R A$(X) IN $10,1|
000003C0: 31 2C 31 32 00 52 60 E6  00 20 2E 8F 59 44 45 53  |1,12.R`.. ..YDES|
000003D0: 3D 24 31 33 3B 44 45 53  43 52 49 50 54 4F 52 20  |=$13;DESCRIPTOR |
000003E0: 41 24 28 59 29 20 49 4E  20 24 31 33 2C 31 34 2C  |A$(Y) IN $13,14,|
000003F0: 31 35 00 80 60 F0 00 20  2E 8F 56 44 45 53 3D 24  |15..`.. ..VDES=$|
00000400: 31 36 3B 44 45 53 43 52  49 50 54 4F 52 20 41 24  |16;DESCRIPTOR A$|
00000410: 28 56 29 20 49 4E 20 24  31 36 2C 31 37 2C 31 38  |(V) IN $16,17,18|
00000420: 00 A5 60 FA 00 20 2E 8F  4C 47 3D 24 31 39 3B 4C  |..`.. ..LG=$19;L|
00000430: 49 4E 4B 45 20 47 52 45  4E 5A 45 20 49 4E 20 24  |INKE GRENZE IN $|
00000440: 31 39 2C 31 41 00 CB 60  04 01 20 2E 8F 52 47 3D  |19,1A..`.. ..RG=|
00000450: 24 31 42 3B 52 45 43 48  54 45 20 47 52 45 4E 5A  |$1B;RECHTE GRENZ|
00000460: 45 20 49 4E 20 24 31 42  2C 31 43 00 EC 60 0E 01  |E IN $1B,1C..`..|
00000470: 20 2E 8F 56 45 52 4C 3D  24 31 44 3B 4C 41 45 4E  | ..VERL=$1D;LAEN|
00000480: 47 45 4E 56 45 52 47 4C  45 49 43 48 00 16 61 18  |GENVERGLEICH..a.|
00000490: 01 20 2E 8F 5A 57 53 50  3D 24 31 45 3B 5A 57 49  |. ..ZWSP=$1E;ZWI|
000004A0: 53 43 48 45 4E 53 50 45  49 43 48 45 52 20 28 31  |SCHENSPEICHER (1|
000004B0: 20 42 59 54 45 29 00 41  61 22 01 20 2E 8F 5A 57  | BYTE).Aa". ..ZW|
000004C0: 53 50 31 3D 24 31 46 3B  5A 57 49 53 43 48 45 4E  |SP1=$1F;ZWISCHEN|
000004D0: 53 50 45 49 43 48 45 52  20 28 32 20 42 59 54 45  |SPEICHER (2 BYTE|
000004E0: 29 00 6C 61 2C 01 20 2E  8F 5A 57 53 50 32 3D 24  |).la,. ..ZWSP2=$|
000004F0: 32 31 3B 5A 57 49 53 43  48 45 4E 53 50 45 49 43  |21;ZWISCHENSPEIC|
00000500: 48 45 52 20 28 32 20 42  59 54 45 29 00 72 61 36  |HER (2 BYTE).ra6|
00000510: 01 3B 00 99 61 40 01 20  2E 8F 41 52 59 54 41 42  |.;..a@. ..ARYTAB|
00000520: 3D 24 33 31 3B 46 45 4C  44 41 4E 46 41 4E 47 20  |=$31;FELDANFANG |
00000530: 49 4E 20 42 41 4E 4B 20  31 00 9F 61 4A 01 3B 00  |IN BANK 1..aJ.;.|
00000540: BB 61 4F 01 20 2E 8F 53  54 31 3D 24 46 42 3B 55  |.aO. ..ST1=$FB;U|
00000550: 4D 4C 41 44 45 56 45 4B  54 4F 52 00 DF 61 54 01  |MLADEVEKTOR..aT.|
00000560: 20 2E 8F 53 54 49 4E 3D  24 46 43 3B 53 54 41 50  | ..STIN=$FC;STAP|
00000570: 45 4C 20 45 49 4E 47 41  4E 47 53 57 45 52 54 00  |EL EINGANGSWERT.|
00000580: 0A 62 5E 01 20 2E 8F 53  54 4D 49 3D 24 46 44 3B  |.b^. ..STMI=$FD;|
00000590: 53 54 41 50 45 4C 4D 49  4E 49 4D 55 4D 2C 55 4D  |STAPELMINIMUM,UM|
000005A0: 4C 41 44 45 56 45 4B 54  4F 52 00 2C 62 68 01 20  |LADEVEKTOR.,bh. |
000005B0: 2E 8F 53 54 55 47 3D 24  46 45 3B 53 54 41 50 45  |..STUG=$FE;STAPE|
000005C0: 4C 55 4E 54 45 52 47 52  45 4E 5A 45 00 32 62 72  |LUNTERGRENZE.2br|
000005D0: 01 3B 00 6B 62 7C 01 20  2E 8F 5A 45 52 4F 3D 24  |.;.kb|. ..ZERO=$|
000005E0: 32 30 30 3B 48 49 45 52  20 46 41 45 4E 47 54 20  |200;HIER FAENGT |
000005F0: 44 41 53 20 56 45 52 53  43 48 4F 42 45 4E 45 20  |DAS VERSCHOBENE |
00000600: 50 52 4F 47 52 41 4D 4D  20 41 4E 00 A3 62 81 01  |PROGRAMM AN..b..|
00000610: 20 2E 8F 52 45 54 4F 55  52 3D 24 30 33 44 42 3B  | ..RETOUR=$03DB;|
00000620: 45 4E 44 41 44 52 45 53  53 45 20 49 4D 20 56 45  |ENDADRESSE IM VE|
00000630: 52 53 43 48 4F 42 45 4E  45 4E 20 50 52 4F 47 52  |RSCHOBENEN PROGR|
00000640: 41 4D 4D 00 A9 62 86 01  3B 00 D0 62 90 01 20 2E  |AMM..b..;..b.. .|
00000650: 8F 43 52 3D 24 46 46 30  30 3B 4B 4F 4E 46 49 47  |.CR=$FF00;KONFIG|
00000660: 55 52 41 54 49 4F 4E 53  52 45 47 49 53 54 45 52  |URATIONSREGISTER|
00000670: 00 08 63 9A 01 20 2E 8F  4C 43 52 42 3D 24 46 46  |..c.. ..LCRB=$FF|
00000680: 30 32 3B 4C 41 44 45 4B  4F 4E 54 52 4F 4C 4C 52  |02;LADEKONTROLLR|
00000690: 45 47 49 53 54 45 52 20  42 20 28 45 4E 54 48 41  |EGISTER B (ENTHA|
000006A0: 45 4C 54 20 24 37 46 29  00 0E 63 A4 01 3B 00 14  |ELT $7F)..c..;..|
000006B0: 63 AE 01 3B 00 1A 63 B8  01 3B 00 20 63 C2 01 3B  |c..;..c..;. c..;|
000006C0: 00 59 63 CC 01 3B 2A 2A  2A 2A 2A 2A 20 53 54 45  |.Yc..;****** STE|
000006D0: 55 45 52 50 52 4F 47 52  41 4D 4D 20 51 55 49 43  |UERPROGRAMM QUIC|
000006E0: 4B 53 4F 52 54 20 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |KSORT **********|
000006F0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 00 5F 63 D6 01 3B 00  |*********._c..;.|
00000700: 88 63 DB 01 53 54 45 55  45 52 30 20 A9 3B 55 4E  |.c..STEUER0 .;UN|
00000710: 54 45 52 42 52 45 43 48  55 4E 47 45 4E 20 56 45  |TERBRECHUNGEN VE|
00000720: 52 48 49 4E 44 45 52 4E  00 B4 63 E0 01 20 97 55  |RHINDERN..c.. .U|
00000730: 4D 4C 41 44 3B 50 52 4F  47 52 41 4D 4D 20 55 4D  |MLAD;PROGRAMM UM|
00000740: 4C 41 44 45 4E 20 49 4E  20 43 4F 4D 4D 4F 4E 20  |LADEN IN COMMON |
00000750: 41 52 45 41 00 DB 63 EA  01 20 81 23 3C 28 5A 45  |AREA..c.. .#<(ZE|
00000760: 52 4F 29 3B 49 4E 44 49  52 45 4B 54 45 4E 20 53  |RO);INDIREKTEN S|
00000770: 50 52 55 4E 47 56 45 4B  54 4F 52 00 06 64 F4 01  |PRUNGVEKTOR..d..|
00000780: 20 82 53 54 31 3B 41 55  46 20 4E 45 55 45 4E 20  | .ST1;AUF NEUEN |
00000790: 50 52 4F 47 52 41 4D 4D  41 4E 46 41 4E 47 20 52  |PROGRAMMANFANG R|
000007A0: 49 43 48 54 45 4E 00 15  64 FE 01 20 81 23 3E 28  |ICHTEN..d.. .#>(|
000007B0: 5A 45 52 4F 29 00 21 64  08 02 20 82 53 54 31 2B  |ZERO).!d.. .ST1+|
000007C0: 31 00 55 64 12 02 20 96  28 53 54 31 29 3B 53 50  |1.Ud.. .(ST1);SP|
000007D0: 52 55 4E 47 20 49 4E 53  20 55 4D 47 45 4C 41 44  |RUNG INS UMGELAD|
000007E0: 45 4E 45 20 51 55 49 43  4B 53 4F 52 54 50 52 4F  |ENE QUICKSORTPRO|
000007F0: 47 52 41 4D 4D 00 96 64  1C 02 4C 45 41 56 45 20  |GRAMM..d..LEAVE |
00000800: 97 55 4D 4C 41 44 3B 43  4F 4D 4D 4F 4E 20 41 52  |.UMLAD;COMMON AR|
00000810: 45 41 20 52 45 53 54 41  55 52 49 45 52 45 4E 2C  |EA RESTAURIEREN,|
00000820: 20 50 52 4F 47 52 41 4D  4D 20 5A 55 52 55 45 43  | PROGRAMM ZURUEC|
00000830: 4B 48 4F 4C 45 4E 00 B7  64 21 02 20 A8 3B 55 4E  |KHOLEN..d!. .;UN|
00000840: 54 45 52 42 52 45 43 48  55 4E 47 45 4E 20 46 52  |TERBRECHUNGEN FR|
00000850: 45 49 47 45 42 45 4E 00  D8 64 26 02 20 A4 3B 5A  |EIGEBEN..d&. .;Z|
00000860: 55 52 55 45 43 4B 20 49  4E 53 20 42 41 53 49 43  |URUECK INS BASIC|
00000870: 50 52 4F 47 52 41 4D 4D  00 DE 64 30 02 3B 00 24  |PROGRAMM..d0.;.$|
00000880: 65 3A 02 3B 2D 2D 2D 20  55 4E 54 45 52 50 52 4F  |e:.;--- UNTERPRO|
00000890: 47 52 41 4D 4D 20 5A 55  4D 20 55 4D 4C 41 44 45  |GRAMM ZUM UMLADE|
000008A0: 4E 20 56 4F 4E 20 43 4F  4D 4D 4F 4E 42 45 52 45  |N VON COMMONBERE|
000008B0: 49 43 48 20 55 4E 44 20  50 52 4F 47 52 41 4D 4D  |ICH UND PROGRAMM|
000008C0: 20 2D 2D 2D 00 2A 65 44  02 3B 00 5A 65 4E 02 55  | ---.*eD.;.ZeN.U|
000008D0: 4D 4C 41 44 20 81 23 3C  28 5A 45 52 4F 29 3B 56  |MLAD .#<(ZERO);V|
000008E0: 45 4B 54 4F 52 20 51 55  45 4C 4C 42 45 52 45 49  |EKTOR QUELLBEREI|
000008F0: 43 48 20 42 45 4C 45 47  45 4E 00 68 65 58 02 20  |CH BELEGEN.heX. |
00000900: 82 53 54 31 3B 4C 53 42  00 77 65 62 02 20 81 23  |.ST1;LSB.web. .#|
00000910: 3E 28 5A 45 52 4F 29 00  87 65 6C 02 20 82 53 54  |>(ZERO)..el. .ST|
00000920: 31 2B 31 3B 4D 53 42 00  B3 65 76 02 20 81 23 3C  |1+1;MSB..ev. .#<|
00000930: 28 41 4E 46 41 4E 47 29  3B 56 45 4B 54 4F 52 20  |(ANFANG);VEKTOR |
00000940: 5A 49 45 4C 42 45 52 45  49 43 48 20 42 45 4C 45  |ZIELBEREICH BELE|
00000950: 47 45 4E 00 C2 65 80 02  20 82 53 54 4D 49 3B 4C  |GEN..e.. .STMI;L|
00000960: 53 42 00 D3 65 8A 02 20  81 23 3E 28 41 4E 46 41  |SB..e.. .#>(ANFA|
00000970: 4E 47 29 00 E4 65 94 02  20 82 53 54 4D 49 2B 31  |NG)..e.. .STMI+1|
00000980: 3B 4D 53 42 00 EA 65 9E  02 3B 00 19 66 A8 02 20  |;MSB..e..;..f.. |
00000990: 83 23 24 30 31 3B 41 4E  5A 41 48 4C 20 50 41 47  |.#$01;ANZAHL PAG|
000009A0: 45 53 20 2D 31 20 28 35  31 32 20 42 59 54 45 53  |ES -1 (512 BYTES|
000009B0: 20 55 4D 4C 41 44 45 4E  29 00 40 66 B2 02 55 4D  | UMLADEN).@f..UM|
000009C0: 4C 41 44 31 20 84 23 24  30 30 3B 4F 46 46 53 45  |LAD1 .#$00;OFFSE|
000009D0: 54 20 49 4E 49 54 49 41  4C 49 53 49 45 52 45 4E  |T INITIALISIEREN|
000009E0: 00 70 66 BC 02 55 4D 4C  41 44 32 20 81 28 53 54  |.pf..UMLAD2 .(ST|
000009F0: 31 29 2C 59 3B 42 59 54  45 20 41 55 53 20 51 55  |1),Y;BYTE AUS QU|
00000A00: 45 4C 4C 42 45 52 45 49  43 48 20 4C 45 53 45 4E  |ELLBEREICH LESEN|
00000A10: 00 86 66 C6 02 20 A0 3B  42 45 49 53 45 49 54 45  |..f.. .;BEISEITE|
00000A20: 20 4C 45 47 45 4E 00 B0  66 D0 02 20 81 28 53 54  | LEGEN..f.. .(ST|
00000A30: 4D 49 29 2C 59 3B 42 59  54 45 20 41 55 53 20 5A  |MI),Y;BYTE AUS Z|
00000A40: 49 45 4C 42 45 52 45 49  43 48 20 4C 45 53 45 4E  |IELBEREICH LESEN|
00000A50: 00 DC 66 DA 02 20 82 28  53 54 31 29 2C 59 3B 55  |..f.. .(ST1),Y;U|
00000A60: 4E 44 20 49 4E 20 51 55  45 4C 4C 42 45 52 45 49  |ND IN QUELLBEREI|
00000A70: 43 48 20 53 43 48 52 45  49 42 45 4E 00 FB 66 E4  |CH SCHREIBEN..f.|
00000A80: 02 20 A1 3B 42 59 54 45  20 57 49 45 44 45 52 20  |. .;BYTE WIEDER |
00000A90: 48 45 52 56 4F 52 48 4F  4C 45 4E 00 27 67 EE 02  |HERVORHOLEN.'g..|
00000AA0: 20 82 28 53 54 4D 49 29  2C 59 3B 55 4E 44 20 49  | .(STMI),Y;UND I|
00000AB0: 4E 20 5A 49 45 4C 42 45  52 45 49 43 48 20 53 43  |N ZIELBEREICH SC|
00000AC0: 48 52 45 49 42 45 4E 00  3D 67 F8 02 20 9E 3B 4E  |HREIBEN.=g.. .;N|
00000AD0: 41 45 43 48 53 54 45 53  20 42 59 54 45 00 68 67  |AECHSTES BYTE.hg|
00000AE0: 02 03 20 B7 55 4D 4C 41  44 32 3B 42 49 53 20 32  |.. .UMLAD2;BIS 2|
00000AF0: 35 36 20 42 59 54 45 53  20 56 45 52 54 41 55 53  |56 BYTES VERTAUS|
00000B00: 43 48 54 20 53 49 4E 44  00 8E 67 0C 03 20 8A 53  |CHT SIND..g.. .S|
00000B10: 54 31 2B 31 3B 4D 53 42  20 51 55 45 4C 4C 42 45  |T1+1;MSB QUELLBE|
00000B20: 52 45 49 43 48 20 45 52  48 4F 45 48 45 4E 00 B9  |REICH ERHOEHEN..|
00000B30: 67 16 03 20 8A 53 54 4D  49 2B 31 3B 55 4E 44 20  |g.. .STMI+1;UND |
00000B40: 4D 53 42 20 5A 49 45 4C  42 45 52 45 49 43 48 20  |MSB ZIELBEREICH |
00000B50: 45 42 45 4E 46 41 4C 4C  53 00 DC 67 20 03 20 AF  |EBENFALLS..g . .|
00000B60: 3B 50 41 47 45 5A 41 45  48 4C 45 52 20 48 45 52  |;PAGEZAEHLER HER|
00000B70: 55 4E 54 45 52 5A 41 45  48 4C 45 4E 00 07 68 2A  |UNTERZAEHLEN..h*|
00000B80: 03 20 B8 55 4D 4C 41 44  32 3B 57 45 49 54 45 52  |. .UMLAD2;WEITER|
00000B90: 20 42 49 53 20 55 4E 54  45 52 4C 41 55 46 20 45  | BIS UNTERLAUF E|
00000BA0: 49 4E 54 52 49 54 54 00  29 68 34 03 20 A4 3B 5A  |INTRITT.)h4. .;Z|
00000BB0: 55 52 55 45 43 4B 20 49  4E 53 20 53 54 45 55 45  |URUECK INS STEUE|
00000BC0: 52 50 52 4F 47 52 41 4D  4D 00 2F 68 3E 03 3B 00  |RPROGRAMM./h>.;.|
00000BD0: 35 68 48 03 3B 00 6E 68  52 03 3B 2D 2D 2D 2D 2D  |5hH.;.nhR.;-----|
00000BE0: 2D 2D 20 5A 55 20 56 45  52 53 43 48 49 45 42 45  |-- ZU VERSCHIEBE|
00000BF0: 4E 44 45 53 20 50 52 4F  47 52 41 4D 4D 20 2D 2D  |NDES PROGRAMM --|
00000C00: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 00 74  |--------------.t|
00000C10: 68 5C 03 3B 00 B9 68 66  03 3B 2D 2D 2D 20 53 50  |h\.;..hf.;--- SP|
00000C20: 45 49 43 48 45 52 4B 4F  4E 46 49 47 55 52 41 54  |EICHERKONFIGURAT|
00000C30: 49 4F 4E 20 55 4D 53 43  48 41 4C 54 45 4E 20 41  |ION UMSCHALTEN A|
00000C40: 55 46 20 42 41 4E 4B 20  31 20 28 41 4C 4C 45 53  |UF BANK 1 (ALLES|
00000C50: 20 52 41 4D 29 20 2D 2D  2D 00 BF 68 70 03 3B 00  | RAM) ---..hp.;.|
00000C60: 00 69 7A 03 41 4E 46 41  4E 47 20 82 4C 43 52 42  |.iz.ANFANG .LCRB|
00000C70: 3B 44 41 44 55 52 43 48  20 57 49 52 44 20 44 45  |;DADURCH WIRD DE|
00000C80: 52 20 49 4E 48 41 4C 54  20 44 45 53 20 50 43 52  |R INHALT DES PCR|
00000C90: 42 20 49 4E 53 20 43 52  20 47 45 53 45 54 5A 54  |B INS CR GESETZT|
00000CA0: 00 06 69 84 03 3B 00 0C  69 8E 03 3B 00 40 69 98  |..i..;..i..;.@i.|
00000CB0: 03 3B 2D 2D 2D 2D 2D 20  50 52 4F 47 52 41 4D 4D  |.;----- PROGRAMM|
00000CC0: 20 51 55 49 43 4B 53 4F  52 54 20 2D 2D 2D 2D 2D  | QUICKSORT -----|
00000CD0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00000CE0: 00 46 69 A2 03 3B 00 7A  69 AC 03 3B 2D 2D 2D 20  |.Fi..;.zi..;--- |
00000CF0: 54 45 49 4C 20 31 3A 20  52 45 54 54 45 4E 20 44  |TEIL 1: RETTEN D|
00000D00: 45 52 20 42 41 53 49 43  2D 44 41 54 45 4E 20 2D  |ER BASIC-DATEN -|
00000D10: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 00 80 69 B6 03 3B  |----------..i..;|
00000D20: 00 96 69 C0 03 3B 2D 20  53 54 41 50 45 4C 5A 45  |..i..;- STAPELZE|
00000D30: 49 47 45 52 20 2D 00 BE  69 CA 03 53 54 41 52 54  |IGER -..i..START|
00000D40: 20 9C 3B 53 54 41 50 45  4C 5A 45 49 47 45 52 20  | .;STAPELZEIGER |
00000D50: 49 4E 53 20 58 2D 52 45  47 49 53 54 45 52 00 D9  |INS X-REGISTER..|
00000D60: 69 D4 03 20 88 53 54 49  4E 3B 55 4E 44 20 41 42  |i.. .STIN;UND AB|
00000D70: 53 50 45 49 43 48 45 52  4E 00 E4 69 DE 03 20 88  |SPEICHERN..i.. .|
00000D80: 53 54 4D 49 00 09 6A E8  03 20 98 3B 46 52 45 49  |STMI..j.. .;FREI|
00000D90: 45 4E 20 50 4C 41 54 5A  20 49 4D 20 53 54 41 43  |EN PLATZ IM STAC|
00000DA0: 4B 20 53 49 43 48 45 52  4E 00 10 6A F2 03 20 A7  |K SICHERN..j.. .|
00000DB0: 00 1B 6A FC 03 20 92 23  24 35 32 00 3F 6A 06 04  |..j.. .#$52.?j..|
00000DC0: 20 B6 53 50 52 3B 47 45  4E 55 47 20 50 4C 41 54  | .SPR;GENUG PLAT|
00000DD0: 5A 3A 57 45 49 54 45 52  2C 20 53 4F 4E 53 54 00  |Z:WEITER, SONST.|
00000DE0: 63 6A 10 04 20 96 52 45  54 4F 55 52 3B 41 42 42  |cj.. .RETOUR;ABB|
00000DF0: 52 55 43 48 20 44 45 53  20 50 52 4F 47 52 41 4D  |RUCH DES PROGRAM|
00000E00: 4D 45 53 00 83 6A 1A 04  53 50 52 20 86 23 24 30  |MES..j..SPR .#$0|
00000E10: 32 3B 53 54 41 50 45 4C  55 4E 54 45 52 47 52 45  |2;STAPELUNTERGRE|
00000E20: 4E 5A 45 00 98 6A 24 04  20 82 53 54 55 47 3B 46  |NZE..j$. .STUG;F|
00000E30: 45 53 54 4C 45 47 45 4E  00 B9 6A 2E 04 3B 2D 20  |ESTLEGEN..j..;- |
00000E40: 5A 45 52 4F 50 41 47 45  49 4E 48 41 4C 54 45 20  |ZEROPAGEINHALTE |
00000E50: 53 49 43 48 45 52 4E 20  2D 00 DB 6A 38 04 20 83  |SICHERN -..j8. .|
00000E60: 23 24 31 39 3B 5A 41 45  48 4C 45 52 20 49 4E 49  |#$19;ZAEHLER INI|
00000E70: 54 49 41 4C 49 53 49 45  52 45 4E 00 FB 6A 42 04  |TIALISIEREN..jB.|
00000E80: 5A 50 57 45 47 20 81 24  30 41 2C 58 3B 55 4D 4C  |ZPWEG .$0A,X;UML|
00000E90: 41 44 45 53 43 48 4C 45  49 46 45 00 19 6B 4C 04  |ADESCHLEIFE..kL.|
00000EA0: 20 A0 3B 57 45 52 54 45  20 41 55 46 20 53 54 41  | .;WERTE AUF STA|
00000EB0: 50 45 4C 20 4C 45 47 45  4E 00 20 6B 56 04 20 AF  |PEL LEGEN. kV. .|
00000EC0: 00 47 6B 60 04 20 B1 5A  50 57 45 47 3B 42 49 53  |.Gk`. .ZPWEG;BIS|
00000ED0: 20 41 4C 4C 45 20 49 4E  48 41 4C 54 45 20 47 45  | ALLE INHALTE GE|
00000EE0: 53 49 43 48 45 52 54 00  69 6B 6A 04 20 9C 3B 53  |SICHERT.ikj. .;S|
00000EF0: 54 41 50 45 4C 5A 45 49  47 45 52 20 41 4C 53 20  |TAPELZEIGER ALS |
00000F00: 45 49 4E 47 41 4E 47 53  2D 00 84 6B 74 04 20 88  |EINGANGS-..kt. .|
00000F10: 53 54 49 4E 3B 57 45 52  54 20 46 45 53 54 48 41  |STIN;WERT FESTHA|
00000F20: 4C 54 45 4E 00 8A 6B 7E  04 3B 00 BE 6B 88 04 3B  |LTEN..k~.;..k..;|
00000F30: 2D 2D 2D 20 54 45 49 4C  20 32 3A 20 46 45 53 54  |--- TEIL 2: FEST|
00000F40: 4C 45 47 45 4E 20 41 4E  46 41 4E 47 53 42 45 44  |LEGEN ANFANGSBED|
00000F50: 49 4E 47 55 4E 47 45 4E  20 2D 2D 2D 2D 2D 00 C4  |INGUNGEN -----..|
00000F60: 6B 92 04 3B 00 E4 6B 9C  04 3B 2D 20 53 43 48 41  |k..;..k..;- SCHA|
00000F70: 43 48 54 45 4C 55 4E 47  53 54 49 45 46 45 20 5A  |CHTELUNGSTIEFE Z|
00000F80: 3D 30 20 2D 00 F3 6B A6  04 53 4F 52 54 20 81 23  |=0 -..k..SORT .#|
00000F90: 24 30 30 00 FA 6B B0 04  20 A0 00 01 6C BA 04 20  |$00..k.. ...l.. |
00000FA0: A0 00 1C 6C C4 04 3B 2D  20 4C 49 4E 4B 45 20 47  |...l..;- LINKE G|
00000FB0: 52 45 4E 5A 45 20 4C 47  3D 31 20 2D 00 34 6C CE  |RENZE LG=1 -.4l.|
00000FC0: 04 20 A6 3B 45 4C 45 4D  45 4E 54 20 41 24 28 31  |. .;ELEMENT A$(1|
00000FD0: 29 20 49 4D 00 54 6C D8  04 20 81 41 52 59 54 41  |) IM.Tl.. .ARYTA|
00000FE0: 42 3B 45 52 53 54 45 4E  20 44 45 46 49 4E 49 45  |B;ERSTEN DEFINIE|
00000FF0: 52 54 45 4E 00 71 6C E2  04 20 86 23 24 30 41 3B  |RTEN.ql.. .#$0A;|
00001000: 41 52 52 41 59 20 46 45  53 54 53 54 45 4C 4C 45  |ARRAY FESTSTELLE|
00001010: 4E 00 89 6C EC 04 20 82  4C 47 3B 55 4E 44 20 41  |N..l.. .LG;UND A|
00001020: 44 52 45 53 53 45 20 49  4E 00 A4 6C F6 04 20 81  |DRESSE IN..l.. .|
00001030: 41 52 59 54 41 42 2B 31  3B 4C 47 20 55 4E 44 20  |ARYTAB+1;LG UND |
00001040: 4C 47 2B 31 00 B9 6C 00  05 20 86 23 24 30 30 3B  |LG+1..l.. .#$00;|
00001050: 45 49 4E 54 52 41 47 45  4E 00 DD 6C 0A 05 20 82  |EINTRAGEN..l.. .|
00001060: 4C 47 2B 31 3B 41 24 28  30 29 20 57 49 52 44 20  |LG+1;A$(0) WIRD |
00001070: 55 45 42 45 52 53 50 52  55 4E 47 45 4E 00 F9 6C  |UEBERSPRUNGEN..l|
00001080: 14 05 3B 2D 20 52 45 43  48 54 45 20 47 52 45 4E  |..;- RECHTE GREN|
00001090: 5A 45 20 52 47 3D 41 20  2D 00 16 6D 1E 05 20 A6  |ZE RG=A -..m.. .|
000010A0: 3B 4C 45 54 5A 54 45 53  20 45 4C 45 4D 45 4E 54  |;LETZTES ELEMENT|
000010B0: 20 41 24 28 41 29 00 3A  6D 28 05 20 84 23 24 30  | A$(A).:m(. .#$0|
000010C0: 32 3B 44 55 52 43 48 20  41 44 44 49 45 52 45 4E  |2;DURCH ADDIEREN|
000010D0: 20 44 45 52 20 46 45 4C  44 2D 00 61 6D 32 05 20  | DER FELD-.am2. |
000010E0: 81 28 41 52 59 54 41 42  29 2C 59 3B 4C 41 45 4E  |.(ARYTAB),Y;LAEN|
000010F0: 47 45 20 5A 55 4D 20 41  52 52 41 59 53 54 41 52  |GE ZUM ARRAYSTAR|
00001100: 54 00 75 6D 3C 05 20 86  41 52 59 54 41 42 3B 53  |T.um<. .ARYTAB;S|
00001110: 55 43 48 45 4E 00 7C 6D  46 05 20 99 00 83 6D 50  |UCHEN.|mF. ...mP|
00001120: 05 20 9E 00 94 6D 5A 05  20 81 28 41 52 59 54 41  |. ...mZ. .(ARYTA|
00001130: 42 29 2C 59 00 A3 6D 64  05 20 86 41 52 59 54 41  |B),Y..md. .ARYTA|
00001140: 42 2B 31 00 AA 6D 6E 05  20 9B 00 D0 6D 78 05 20  |B+1..mn. ...mx. |
00001150: A7 3B 4C 41 45 4E 47 45  20 44 45 53 20 4C 45 54  |.;LAENGE DES LET|
00001160: 5A 54 45 4E 20 44 45 53  43 52 49 50 54 4F 52 53  |ZTEN DESCRIPTORS|
00001170: 00 EE 6D 82 05 20 98 3B  41 42 5A 49 45 48 45 4E  |..m.. .;ABZIEHEN|
00001180: 20 55 4D 20 44 49 45 20  53 54 41 52 54 2D 00 0E  | UM DIE START-..|
00001190: 6E 8C 05 20 92 23 24 30  33 3B 41 44 52 45 53 53  |n.. .#$03;ADRESS|
000011A0: 45 20 56 4F 4E 20 41 24  28 41 29 20 5A 55 00 2A  |E VON A$(A) ZU.*|
000011B0: 6E 96 05 20 82 52 47 3B  45 52 4D 49 54 54 45 4C  |n.. .RG;ERMITTEL|
000011C0: 4E 20 55 4E 44 20 4E 41  43 48 00 45 6E A0 05 20  |N UND NACH.En.. |
000011D0: A0 3B 52 47 2F 52 47 2B  31 20 55 4E 44 20 41 55  |.;RG/RG+1 UND AU|
000011E0: 46 20 44 45 4E 00 60 6E  AA 05 20 9A 3B 53 54 41  |F DEN.`n.. .;STA|
000011F0: 50 45 4C 20 5A 55 20 53  43 48 49 45 42 45 4E 2E  |PEL ZU SCHIEBEN.|
00001200: 00 6B 6E B4 05 20 92 23  24 30 30 00 76 6E BE 05  |.kn.. .#$00.vn..|
00001210: 20 82 52 47 2B 31 00 7D  6E C8 05 20 A0 00 A2 6E  | .RG+1.}n.. ...n|
00001220: D2 05 20 B7 56 53 54 52  49 4E 47 3B 48 49 45 52  |.. .VSTRING;HIER|
00001230: 20 49 4D 4D 45 52 20 56  45 52 5A 57 45 49 47 55  | IMMER VERZWEIGU|
00001240: 4E 47 00 C5 6E DC 05 3B  2D 20 56 45 52 53 43 48  |NG..n..;- VERSCH|
00001250: 41 43 48 54 45 4C 55 4E  47 53 54 49 45 46 45 20  |ACHTELUNGSTIEFE |
00001260: 5A 3D 31 20 2D 00 CB 6E  E6 05 3B 00 DE 6E F0 05  |Z=1 -..n..;..n..|
00001270: 42 52 55 45 43 4B 45 34  20 B7 53 4F 52 54 00 E4  |BRUECKE4 .SORT..|
00001280: 6E FA 05 3B 00 18 6F 04  06 3B 2D 2D 2D 20 54 45  |n..;..o..;--- TE|
00001290: 49 4C 20 33 3A 20 56 45  52 47 4C 45 49 43 48 53  |IL 3: VERGLEICHS|
000012A0: 53 54 52 49 4E 47 20 42  45 52 45 43 48 4E 45 4E  |STRING BERECHNEN|
000012B0: 20 2D 2D 2D 2D 2D 2D 2D  00 1E 6F 0E 06 3B 00 32  | -------..o..;.2|
000012C0: 6F 18 06 3B 2D 20 58 3D  4C 47 2C 20 59 3D 52 47  |o..;- X=LG, Y=RG|
000012D0: 20 2D 00 38 6F 22 06 3B  00 60 6F 2C 06 56 53 54  | -.8o".;.`o,.VST|
000012E0: 52 49 4E 47 20 83 23 24  30 33 3B 49 4E 48 41 4C  |RING .#$03;INHAL|
000012F0: 54 45 20 56 4F 4E 20 4C  47 20 55 4E 44 20 52 47  |TE VON LG UND RG|
00001300: 00 81 6F 36 06 4C 41 44  58 59 20 81 4C 47 2C 58  |..o6.LADXY .LG,X|
00001310: 3B 49 4E 20 58 41 44 52  20 55 4E 44 20 59 41 44  |;IN XADR UND YAD|
00001320: 52 00 96 6F 40 06 20 82  58 41 44 52 2C 58 3B 55  |R..o@. .XADR,X;U|
00001330: 4D 4C 41 44 45 4E 00 9D  6F 4A 06 20 AF 00 A9 6F  |MLADEN..oJ. ...o|
00001340: 54 06 20 B1 4C 41 44 58  59 00 AF 6F 5E 06 3B 00  |T. .LADXY..o^.;.|
00001350: BE 6F 68 06 3B 2D 20 56  3D 58 2B 59 20 2D 00 C4  |.oh.;- V=X+Y -..|
00001360: 6F 72 06 3B 00 E6 6F 7C  06 20 A6 3B 41 44 44 49  |or.;..o|. .;ADDI|
00001370: 45 52 45 4E 20 53 54 41  52 54 41 44 52 45 53 53  |EREN STARTADRESS|
00001380: 45 4E 20 44 45 53 00 00  70 86 06 20 81 58 41 44  |EN DES..p.. .XAD|
00001390: 52 3B 45 52 53 54 45 4E  20 55 4E 44 20 44 45 53  |R;ERSTEN UND DES|
000013A0: 00 1F 70 90 06 20 86 59  41 44 52 3B 4C 45 54 5A  |..p.. .YADR;LETZ|
000013B0: 54 45 4E 20 44 45 53 43  52 49 50 54 4F 52 53 00  |TEN DESCRIPTORS.|
000013C0: 26 70 9A 06 20 99 00 33  70 A4 06 20 81 58 41 44  |&p.. ..3p.. .XAD|
000013D0: 52 2B 31 00 40 70 AE 06  20 86 59 41 44 52 2B 31  |R+1.@p.. .YADR+1|
000013E0: 00 46 70 B8 06 3B 00 5A  70 C2 06 3B 2D 20 56 3D  |.Fp..;.Zp..;- V=|
000013F0: 49 4E 54 28 56 2F 32 29  20 2D 00 60 70 CC 06 3B  |INT(V/2) -.`p..;|
00001400: 00 86 70 D6 06 20 8E 3B  4D 53 42 20 44 45 52 20  |..p.. .;MSB DER |
00001410: 53 55 4D 4D 45 20 52 45  43 48 54 53 20 53 48 49  |SUMME RECHTS SHI|
00001420: 46 54 45 4E 20 3D 00 A4  70 E0 06 20 82 56 41 44  |FTEN =..p.. .VAD|
00001430: 52 2B 31 3B 44 49 56 49  53 49 4F 4E 20 44 55 52  |R+1;DIVISION DUR|
00001440: 43 48 20 32 00 C9 70 EA  06 20 98 3B 4C 53 42 20  |CH 2..p.. .;LSB |
00001450: 44 45 52 20 53 55 4D 4D  45 20 52 45 43 48 54 53  |DER SUMME RECHTS|
00001460: 20 52 4F 54 49 45 52 45  4E 00 D0 70 F4 06 20 91  | ROTIEREN..p.. .|
00001470: 00 F4 70 FE 06 20 B5 53  50 52 31 3B 53 55 4D 4D  |..p.. .SPR1;SUMM|
00001480: 45 20 47 45 52 41 44 45  2C 44 41 4E 4E 20 53 50  |E GERADE,DANN SP|
00001490: 52 55 4E 47 00 10 71 08  07 20 92 23 24 30 31 3B  |RUNG..q.. .#$01;|
000014A0: 53 4F 4E 53 54 20 42 45  47 52 41 44 49 47 45 4E  |SONST BEGRADIGEN|
000014B0: 00 1B 71 12 07 20 B6 53  50 52 31 00 47 71 1C 07  |..q.. .SPR1.Gq..|
000014C0: 20 94 56 41 44 52 2B 31  3B 57 45 4E 4E 20 55 4E  | .VADR+1;WENN UN|
000014D0: 54 45 52 4C 41 55 46 20  4D 53 42 20 4B 4F 52 52  |TERLAUF MSB KORR|
000014E0: 49 47 49 45 52 45 4E 00  56 71 26 07 53 50 52 31  |IGIEREN.Vq&.SPR1|
000014F0: 20 82 56 41 44 52 00 5C  71 30 07 3B 00 7F 71 3A  | .VADR.\q0.;..q:|
00001500: 07 3B 2D 20 56 45 52 47  4C 45 49 43 48 53 53 54  |.;- VERGLEICHSST|
00001510: 52 49 4E 47 20 56 24 3D  41 24 28 56 29 20 2D 00  |RING V$=A$(V) -.|
00001520: 85 71 44 07 3B 00 AE 71  4E 07 20 84 23 24 30 30  |.qD.;..qN. .#$00|
00001530: 3B 44 45 53 43 52 49 50  54 4F 52 20 56 4F 4E 20  |;DESCRIPTOR VON |
00001540: 56 24 20 55 45 42 45 52  54 52 41 47 45 4E 00 C5  |V$ UEBERTRAGEN..|
00001550: 71 58 07 20 81 28 56 41  44 52 29 2C 59 3B 49 4E  |qX. .(VADR),Y;IN|
00001560: 20 56 44 45 53 00 D0 71  62 07 20 82 56 44 45 53  | VDES..qb. .VDES|
00001570: 00 D7 71 6C 07 20 9E 00  E6 71 76 07 20 81 28 56  |..ql. ...qv. .(V|
00001580: 41 44 52 29 2C 59 00 F3  71 80 07 20 82 56 44 45  |ADR),Y..q.. .VDE|
00001590: 53 2B 31 00 FA 71 8A 07  20 9E 00 09 72 94 07 20  |S+1..q.. ...r.. |
000015A0: 81 28 56 41 44 52 29 2C  59 00 16 72 9E 07 20 82  |.(VADR),Y..r.. .|
000015B0: 56 44 45 53 2B 32 00 1C  72 A8 07 3B 00 52 72 B2  |VDES+2..r..;.Rr.|
000015C0: 07 3B 2D 2D 2D 20 54 45  49 4C 20 34 3A 20 53 54  |.;--- TEIL 4: ST|
000015D0: 52 49 4E 47 56 45 52 47  4C 45 49 43 48 20 4C 49  |RINGVERGLEICH LI|
000015E0: 4E 4B 45 52 20 54 45 49  4C 20 2D 2D 2D 2D 2D 2D  |NKER TEIL ------|
000015F0: 2D 2D 00 58 72 BC 07 3B  00 7D 72 C6 07 3B 2D 20  |--.Xr..;.}r..;- |
00001600: 53 54 52 49 4E 47 20 4C  49 4E 4B 53 20 56 4F 4E  |STRING LINKS VON|
00001610: 20 56 24 3A 20 58 24 3D  41 24 28 58 29 00 83 72  | V$: X$=A$(X)..r|
00001620: D0 07 3B 00 B2 72 DA 07  56 45 52 47 4C 58 20 84  |..;..r..VERGLX .|
00001630: 23 24 30 30 3B 44 45 53  43 52 49 50 54 4F 52 20  |#$00;DESCRIPTOR |
00001640: 56 4F 4E 20 58 24 20 55  45 42 45 52 54 52 41 47  |VON X$ UEBERTRAG|
00001650: 45 4E 00 C9 72 E4 07 20  81 28 58 41 44 52 29 2C  |EN..r.. .(XADR),|
00001660: 59 3B 49 4E 20 58 44 45  53 00 D4 72 EE 07 20 82  |Y;IN XDES..r.. .|
00001670: 58 44 45 53 00 DB 72 F8  07 20 9E 00 EA 72 02 08  |XDES..r.. ...r..|
00001680: 20 81 28 58 41 44 52 29  2C 59 00 F7 72 0C 08 20  | .(XADR),Y..r.. |
00001690: 82 58 44 45 53 2B 31 00  FE 72 16 08 20 9E 00 0D  |.XDES+1..r.. ...|
000016A0: 73 20 08 20 81 28 58 41  44 52 29 2C 59 00 1A 73  |s . .(XADR),Y..s|
000016B0: 2A 08 20 82 58 44 45 53  2B 32 00 3A 73 34 08 3B  |*. .XDES+2.:s4.;|
000016C0: 2D 20 53 54 52 49 4E 47  4C 41 45 4E 47 45 4E 56  |- STRINGLAENGENV|
000016D0: 45 52 47 4C 45 49 43 48  20 2D 00 5D 73 3E 08 20  |ERGLEICH -.]s>. |
000016E0: 83 23 24 30 30 3B 57 45  4E 4E 20 58 24 20 4B 55  |.#$00;WENN X$ KU|
000016F0: 45 52 5A 45 52 20 41 4C  53 20 56 24 3A 00 85 73  |ERZER ALS V$:..s|
00001700: 48 08 20 81 58 44 45 53  3B 20 20 20 20 20 58 20  |H. .XDES;     X |
00001710: 3D 20 30 20 2C 20 20 56  45 52 4C 20 3D 20 4C 45  |= 0 ,  VERL = LE|
00001720: 4E 28 58 24 29 00 A4 73  52 08 20 85 56 44 45 53  |N(X$)..sR. .VDES|
00001730: 3B 57 45 4E 4E 20 56 24  20 4B 55 45 52 5A 45 52  |;WENN V$ KUERZER|
00001740: 20 58 24 3A 00 BD 73 5C  08 20 B5 53 50 52 32 3B  | X$:..s\. .SPR2;|
00001750: 20 20 20 20 20 58 20 20  20 20 3D 20 31 00 D8 73  |     X    = 1..s|
00001760: 66 08 20 A2 3B 20 20 20  20 20 56 45 52 4C 20 3D  |f. .;     VERL =|
00001770: 20 4C 45 4E 28 56 24 29  00 E3 73 70 08 20 81 56  | LEN(V$)..sp. .V|
00001780: 44 45 53 00 F2 73 7A 08  53 50 52 32 20 82 56 45  |DES..sz.SPR2 .VE|
00001790: 52 4C 00 F8 73 84 08 3B  00 20 74 8E 08 3B 2D 20  |RL..s..;. t..;- |
000017A0: 53 54 52 49 4E 47 56 45  52 47 4C 45 49 43 48 20  |STRINGVERGLEICH |
000017B0: 3A 20 58 24 20 3C 20 4F  44 45 52 20 3E 20 56 24  |: X$ < ODER > V$|
000017C0: 00 26 74 98 08 3B 00 47  74 A2 08 20 84 23 24 30  |.&t..;.Gt.. .#$0|
000017D0: 30 3B 4F 46 46 53 45 54  20 49 4E 49 54 49 41 4C  |0;OFFSET INITIAL|
000017E0: 49 53 49 45 52 45 4E 00  6D 74 AC 08 56 45 52 47  |ISIEREN.mt..VERG|
000017F0: 4C 58 31 20 81 28 58 44  45 53 2B 31 29 2C 59 3B  |LX1 .(XDES+1),Y;|
00001800: 5A 45 49 43 48 45 4E 20  48 4F 4C 45 4E 00 8E 74  |ZEICHEN HOLEN..t|
00001810: B6 08 20 85 28 56 44 45  53 2B 31 29 2C 59 3B 55  |.. .(VDES+1),Y;U|
00001820: 4E 44 20 56 45 52 47 4C  45 49 43 48 45 4E 00 B5  |ND VERGLEICHEN..|
00001830: 74 C0 08 20 B7 56 45 52  47 4C 58 32 3B 5A 45 49  |t.. .VERGLX2;ZEI|
00001840: 43 48 45 4E 20 55 4E 47  4C 45 49 43 48 3A 20 53  |CHEN UNGLEICH: S|
00001850: 50 52 55 4E 47 00 BC 74  CA 08 20 9E 00 E4 74 D4  |PRUNG..t.. ...t.|
00001860: 08 20 93 56 45 52 4C 3B  53 43 48 4F 4E 20 53 54  |. .VERL;SCHON ST|
00001870: 52 49 4E 47 4C 41 45 4E  47 45 20 45 52 52 45 49  |RINGLAENGE ERREI|
00001880: 43 48 54 3F 00 09 75 DE  08 20 B5 56 45 52 47 4C  |CHT?..u.. .VERGL|
00001890: 58 31 3B 4E 45 49 4E 2C  4E 41 45 43 48 53 54 45  |X1;NEIN,NAECHSTE|
000018A0: 53 20 5A 45 49 43 48 45  4E 00 14 75 E8 08 20 8B  |S ZEICHEN..u.. .|
000018B0: 23 24 30 31 00 28 75 F2  08 56 45 52 47 4C 58 32  |#$01.(u..VERGLX2|
000018C0: 20 B6 56 45 52 47 4C 59  00 2E 75 FC 08 3B 00 5A  | .VERGLY..u..;.Z|
000018D0: 75 06 09 3B 2D 20 4E 41  45 43 48 53 54 45 53 20  |u..;- NAECHSTES |
000018E0: 45 4C 45 4D 45 4E 54 20  56 45 52 47 4C 45 49 43  |ELEMENT VERGLEIC|
000018F0: 48 45 4E 3A 20 58 3D 58  2B 31 00 60 75 10 09 3B  |HEN: X=X+1.`u..;|
00001900: 00 7E 75 1A 09 20 A6 3B  45 52 48 4F 45 48 45 4E  |.~u.. .;ERHOEHEN|
00001910: 20 56 4F 4E 20 58 41 44  52 20 55 4D 20 33 00 9C  | VON XADR UM 3..|
00001920: 75 24 09 20 81 58 41 44  52 3B 46 55 45 52 20 44  |u$. .XADR;FUER D|
00001930: 45 4E 20 4E 41 45 43 48  53 54 45 4E 00 B8 75 2E  |EN NAECHSTEN..u.|
00001940: 09 20 86 23 24 30 33 3B  53 54 52 49 4E 47 44 45  |. .#$03;STRINGDE|
00001950: 53 43 52 49 50 54 4F 52  00 C3 75 38 09 20 82 58  |SCRIPTOR..u8. .X|
00001960: 41 44 52 00 EF 75 42 09  20 B5 56 45 52 47 4C 58  |ADR..uB. .VERGLX|
00001970: 3B 57 45 49 54 45 52 20  5A 55 4D 20 4E 41 45 43  |;WEITER ZUM NAEC|
00001980: 48 53 54 45 4E 20 56 45  52 47 4C 45 49 43 48 00  |HSTEN VERGLEICH.|
00001990: FC 75 4C 09 20 8A 58 41  44 52 2B 31 00 09 76 56  |.uL. .XADR+1..vV|
000019A0: 09 20 B6 56 45 52 47 4C  58 00 0F 76 60 09 3B 00  |. .VERGLX..v`.;.|
000019B0: 2A 76 6A 09 3B 2D 20 53  50 52 55 4E 47 20 2D 2D  |*vj.;- SPRUNG --|
000019C0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 00 41 76 74 09 42  |----------.Avt.B|
000019D0: 52 55 45 43 4B 45 35 20  B7 42 52 55 45 43 4B 45  |RUECKE5 .BRUECKE|
000019E0: 34 00 57 76 7E 09 42 52  55 45 43 4B 45 31 20 B5  |4.Wv~.BRUECKE1 .|
000019F0: 56 53 54 52 49 4E 47 00  5D 76 88 09 3B 00 96 76  |VSTRING.]v..;..v|
00001A00: 92 09 3B 2D 2D 2D 20 54  45 49 4C 20 35 3A 20 53  |..;--- TEIL 5: S|
00001A10: 54 52 49 4E 47 56 45 52  47 4C 45 49 43 48 20 52  |TRINGVERGLEICH R|
00001A20: 45 43 48 54 45 52 20 54  45 49 4C 20 2D 2D 2D 2D  |ECHTER TEIL ----|
00001A30: 2D 2D 2D 2D 2D 2D 00 9C  76 9C 09 3B 00 C3 76 A6  |------..v..;..v.|
00001A40: 09 3B 2D 20 53 54 52 49  4E 47 20 52 45 43 48 54  |.;- STRING RECHT|
00001A50: 53 20 56 4F 4E 20 56 24  20 3A 20 59 24 3D 41 24  |S VON V$ : Y$=A$|
00001A60: 28 59 29 00 C9 76 B0 09  3B 00 F8 76 BA 09 56 45  |(Y)..v..;..v..VE|
00001A70: 52 47 4C 59 20 84 23 24  30 30 3B 44 45 53 43 52  |RGLY .#$00;DESCR|
00001A80: 49 50 54 4F 52 20 56 4F  4E 20 59 24 20 55 45 42  |IPTOR VON Y$ UEB|
00001A90: 45 52 54 52 41 47 45 4E  00 0F 77 C4 09 20 81 28  |ERTRAGEN..w.. .(|
00001AA0: 59 41 44 52 29 2C 59 3B  49 4E 20 59 44 45 53 00  |YADR),Y;IN YDES.|
00001AB0: 1A 77 CE 09 20 82 59 44  45 53 00 21 77 D8 09 20  |.w.. .YDES.!w.. |
00001AC0: 9E 00 30 77 E2 09 20 81  28 59 41 44 52 29 2C 59  |..0w.. .(YADR),Y|
00001AD0: 00 3D 77 EC 09 20 82 59  44 45 53 2B 31 00 44 77  |.=w.. .YDES+1.Dw|
00001AE0: F6 09 20 9E 00 53 77 00  0A 20 81 28 59 41 44 52  |.. ..Sw.. .(YADR|
00001AF0: 29 2C 59 00 60 77 0A 0A  20 82 59 44 45 53 2B 32  |),Y.`w.. .YDES+2|
00001B00: 00 80 77 14 0A 3B 2D 20  53 54 52 49 4E 47 4C 41  |..w..;- STRINGLA|
00001B10: 45 4E 47 45 4E 56 45 52  47 4C 45 49 43 48 20 2D  |ENGENVERGLEICH -|
00001B20: 00 A3 77 1E 0A 20 83 23  24 30 30 3B 57 45 4E 4E  |..w.. .#$00;WENN|
00001B30: 20 56 24 20 4B 55 45 52  5A 45 52 20 41 4C 53 20  | V$ KUERZER ALS |
00001B40: 59 24 3A 00 CA 77 28 0A  20 81 56 44 45 53 3B 20  |Y$:..w(. .VDES; |
00001B50: 20 20 20 20 58 20 3D 20  30 20 2C 20 56 45 52 4C  |    X = 0 , VERL|
00001B60: 20 3D 20 4C 45 4E 28 56  24 29 00 ED 77 32 0A 20  | = LEN(V$)..w2. |
00001B70: 85 59 44 45 53 3B 57 45  4E 4E 20 59 24 20 4B 55  |.YDES;WENN Y$ KU|
00001B80: 45 52 5A 45 52 20 41 4C  53 20 56 24 3A 00 06 78  |ERZER ALS V$:..x|
00001B90: 3C 0A 20 B5 53 50 52 33  3B 20 20 20 20 20 58 20  |<. .SPR3;     X |
00001BA0: 20 20 20 3D 20 31 00 21  78 46 0A 20 A2 3B 20 20  |   = 1.!xF. .;  |
00001BB0: 20 20 20 56 45 52 4C 20  3D 20 4C 45 4E 28 59 24  |   VERL = LEN(Y$|
00001BC0: 29 00 2C 78 50 0A 20 81  59 44 45 53 00 3B 78 5A  |).,xP. .YDES.;xZ|
00001BD0: 0A 53 50 52 33 20 82 56  45 52 4C 00 41 78 64 0A  |.SPR3 .VERL.Axd.|
00001BE0: 3B 00 69 78 6E 0A 3B 2D  20 53 54 52 49 4E 47 56  |;.ixn.;- STRINGV|
00001BF0: 45 52 47 4C 45 49 43 48  20 3A 20 59 24 20 3C 20  |ERGLEICH : Y$ < |
00001C00: 4F 44 45 52 20 3E 20 56  24 00 6F 78 78 0A 3B 00  |ODER > V$.oxx.;.|
00001C10: 90 78 82 0A 20 84 23 24  30 30 3B 4F 46 46 53 45  |.x.. .#$00;OFFSE|
00001C20: 54 20 49 4E 49 54 49 41  4C 49 53 49 45 52 45 4E  |T INITIALISIEREN|
00001C30: 00 B6 78 8C 0A 56 45 52  47 4C 59 31 20 81 28 56  |..x..VERGLY1 .(V|
00001C40: 44 45 53 2B 31 29 2C 59  3B 5A 45 49 43 48 45 4E  |DES+1),Y;ZEICHEN|
00001C50: 20 48 4F 4C 45 4E 00 D7  78 96 0A 20 85 28 59 44  | HOLEN..x.. .(YD|
00001C60: 45 53 2B 31 29 2C 59 3B  55 4E 44 20 56 45 52 47  |ES+1),Y;UND VERG|
00001C70: 4C 45 49 43 48 45 4E 00  FD 78 A0 0A 20 B7 56 45  |LEICHEN..x.. .VE|
00001C80: 52 47 4C 59 32 3B 5A 45  49 43 48 45 4E 20 55 4E  |RGLY2;ZEICHEN UN|
00001C90: 47 4C 45 49 43 48 3A 53  50 52 55 4E 47 00 04 79  |GLEICH:SPRUNG..y|
00001CA0: AA 0A 20 9E 00 2C 79 B4  0A 20 93 56 45 52 4C 3B  |.. ..,y.. .VERL;|
00001CB0: 53 43 48 4F 4E 20 53 54  52 49 4E 47 4C 41 45 4E  |SCHON STRINGLAEN|
00001CC0: 47 45 20 45 52 52 45 49  43 48 54 3F 00 51 79 BE  |GE ERREICHT?.Qy.|
00001CD0: 0A 20 B5 56 45 52 47 4C  59 31 3B 4E 45 49 4E 2C  |. .VERGLY1;NEIN,|
00001CE0: 4E 41 45 43 48 53 54 45  53 20 5A 45 49 43 48 45  |NAECHSTES ZEICHE|
00001CF0: 4E 00 5C 79 C8 0A 20 8B  23 24 30 31 00 70 79 D2  |N.\y.. .#$01.py.|
00001D00: 0A 56 45 52 47 4C 59 32  20 B6 54 41 55 53 43 48  |.VERGLY2 .TAUSCH|
00001D10: 00 76 79 DC 0A 3B 00 A2  79 E6 0A 3B 2D 20 4E 41  |.vy..;..y..;- NA|
00001D20: 45 43 48 53 54 45 53 20  45 4C 45 4D 45 4E 54 20  |ECHSTES ELEMENT |
00001D30: 56 45 52 47 4C 45 49 43  48 45 4E 3A 20 59 3D 59  |VERGLEICHEN: Y=Y|
00001D40: 2D 31 00 A8 79 F0 0A 3B  00 BF 79 FA 0A 20 A7 3B  |-1..y..;..y.. .;|
00001D50: 59 41 44 52 20 55 4D 20  33 20 42 59 54 45 53 00  |YADR UM 3 BYTES.|
00001D60: DF 79 04 0B 20 81 59 41  44 52 3B 45 52 4E 49 45  |.y.. .YADR;ERNIE|
00001D70: 44 52 49 47 45 4E 20 46  55 45 52 20 44 45 4E 00  |DRIGEN FUER DEN.|
00001D80: F4 79 0E 0B 20 92 23 24  30 33 3B 4E 41 45 43 48  |.y.. .#$03;NAECH|
00001D90: 53 54 45 4E 00 10 7A 18  0B 20 82 59 41 44 52 3B  |STEN..z.. .YADR;|
00001DA0: 53 54 52 49 4E 47 44 45  53 43 52 49 50 54 4F 52  |STRINGDESCRIPTOR|
00001DB0: 00 3C 7A 22 0B 20 B6 56  45 52 47 4C 59 3B 57 45  |.<z". .VERGLY;WE|
00001DC0: 49 54 45 52 20 5A 55 4D  20 4E 41 45 43 48 53 54  |ITER ZUM NAECHST|
00001DD0: 45 4E 20 56 45 52 47 4C  45 49 43 48 00 49 7A 2C  |EN VERGLEICH.Iz,|
00001DE0: 0B 20 94 59 41 44 52 2B  31 00 56 7A 36 0B 20 B5  |. .YADR+1.Vz6. .|
00001DF0: 56 45 52 47 4C 59 00 5C  7A 40 0B 3B 00 76 7A 4A  |VERGLY.\z@.;.vzJ|
00001E00: 0B 3B 2D 20 53 50 52 55  4E 47 20 2D 2D 2D 2D 2D  |.;- SPRUNG -----|
00001E10: 2D 2D 2D 2D 2D 2D 00 8B  7A 54 0B 42 52 55 45 43  |------..zT.BRUEC|
00001E20: 4B 45 32 20 B6 56 45 52  47 4C 58 00 A2 7A 5E 0B  |KE2 .VERGLX..z^.|
00001E30: 42 52 55 45 43 4B 45 33  20 B5 42 52 55 45 43 4B  |BRUECKE3 .BRUECK|
00001E40: 45 31 00 B9 7A 68 0B 42  52 55 45 43 4B 45 36 20  |E1..zh.BRUECKE6 |
00001E50: B7 42 52 55 45 43 4B 45  35 00 BF 7A 72 0B 3B 00  |.BRUECKE5..zr.;.|
00001E60: F0 7A 7C 0B 3B 2D 2D 2D  20 54 45 49 4C 20 36 3A  |.z|.;--- TEIL 6:|
00001E70: 20 53 54 52 49 4E 47 53  20 56 45 52 54 41 55 53  | STRINGS VERTAUS|
00001E80: 43 48 45 4E 20 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |CHEN -----------|
00001E90: 00 F6 7A 86 0B 3B 00 10  7B 90 0B 3B 2D 50 52 55  |..z..;..{..;-PRU|
00001EA0: 45 46 45 4E 20 4F 42 20  58 20 3E 3D 20 59 20 2D  |EFEN OB X >= Y -|
00001EB0: 00 16 7B 9A 0B 3B 00 39  7B A4 0B 54 41 55 53 43  |..{..;.9{..TAUSC|
00001EC0: 48 20 81 59 41 44 52 2B  31 3B 4D 53 42 20 56 45  |H .YADR+1;MSB VE|
00001ED0: 52 47 4C 45 49 43 48 45  4E 00 46 7B AE 0B 20 85  |RGLEICHEN.F{.. .|
00001EE0: 58 41 44 52 2B 31 00 6A  7B B8 0B 20 B5 42 52 55  |XADR+1.j{.. .BRU|
00001EF0: 45 43 4B 45 38 3B 57 45  4E 4E 20 58 3E 59 20 44  |ECKE8;WENN X>Y D|
00001F00: 41 4E 4E 20 53 50 52 55  4E 47 00 8F 7B C2 0B 20  |ANN SPRUNG..{.. |
00001F10: B7 53 57 41 50 3B 57 45  4E 4E 20 58 3C 59 20 44  |.SWAP;WENN X<Y D|
00001F20: 41 4E 4E 20 56 45 52 54  41 55 53 43 48 45 4E 00  |ANN VERTAUSCHEN.|
00001F30: AA 7B CC 0B 20 81 58 41  44 52 3B 4C 53 42 20 56  |.{.. .XADR;LSB V|
00001F40: 45 52 47 4C 45 49 43 48  45 4E 00 B5 7B D6 0B 20  |ERGLEICHEN..{.. |
00001F50: 85 59 41 44 52 00 DC 7B  E0 0B 20 B6 42 52 55 45  |.YADR..{.. .BRUE|
00001F60: 43 4B 45 39 3B 57 45 4E  4E 20 58 20 3E 3D 20 59  |CKE9;WENN X >= Y|
00001F70: 20 44 41 4E 4E 20 53 50  52 55 4E 47 00 E2 7B EA  | DANN SPRUNG..{.|
00001F80: 0B 3B 00 18 7C F4 0B 3B  2D 20 56 45 52 54 41 55  |.;..|..;- VERTAU|
00001F90: 53 43 48 45 4E 20 44 45  52 20 53 54 52 49 4E 47  |SCHEN DER STRING|
00001FA0: 2D 20 55 4E 44 20 43 4F  44 45 44 45 53 43 52 49  |- UND CODEDESCRI|
00001FB0: 50 54 4F 52 45 4E 20 2D  00 35 7C FE 0B 3B 2D 20  |PTOREN -.5|..;- |
00001FC0: 53 54 52 49 4E 47 44 45  53 43 52 49 50 54 4F 52  |STRINGDESCRIPTOR|
00001FD0: 45 4E 3A 20 2D 00 44 7C  08 0C 53 57 41 50 20 83  |EN: -.D|..SWAP .|
00001FE0: 23 24 30 32 00 4F 7C 12  0C 20 84 23 24 30 32 00  |#$02.O|.. .#$02.|
00001FF0: 6E 7C 1C 0C 53 57 41 50  31 20 81 58 44 45 53 2C  |n|..SWAP1 .XDES,|
00002000: 58 3B 58 2D 44 45 53 43  52 49 50 54 4F 52 00 88  |X;X-DESCRIPTOR..|
00002010: 7C 26 0C 20 82 28 59 41  44 52 29 2C 59 3B 4E 41  ||&. .(YADR),Y;NA|
00002020: 43 48 20 C1 24 28 D9 29  00 A2 7C 30 0C 20 81 59  |CH .$(.)..|0. .Y|
00002030: 44 45 53 2C 58 3B 59 2D  44 45 53 43 52 49 50 54  |DES,X;Y-DESCRIPT|
00002040: 4F 52 00 BC 7C 3A 0C 20  82 28 58 41 44 52 29 2C  |OR..|:. .(XADR),|
00002050: 59 3B 4E 41 43 48 20 C1  24 28 D8 29 00 C3 7C 44  |Y;NACH .$(.)..|D|
00002060: 0C 20 AF 00 CA 7C 4E 0C  20 A3 00 D6 7C 58 0C 20  |. ...|N. ...|X. |
00002070: B1 53 57 41 50 31 00 DC  7C 62 0C 3B 00 F7 7C 6C  |.SWAP1..|b.;..|l|
00002080: 0C 3B 2D 20 43 4F 44 45  44 45 53 43 52 49 50 54  |.;- CODEDESCRIPT|
00002090: 4F 52 45 4E 3A 20 2D 00  FD 7C 76 0C 3B 00 2C 7D  |OREN: -..|v.;.,}|
000020A0: 80 0C 20 A6 3B 42 45 52  45 43 48 4E 45 4E 20 44  |.. .;BERECHNEN D|
000020B0: 45 52 20 4F 52 54 45 20  44 45 52 20 43 4F 44 45  |ER ORTE DER CODE|
000020C0: 44 45 53 43 52 49 50 54  4F 52 45 4E 00 46 7D 8A  |DESCRIPTOREN.F}.|
000020D0: 0C 20 81 58 44 45 53 2B  31 3B 4C 53 42 20 58 2D  |. .XDES+1;LSB X-|
000020E0: 53 54 52 49 4E 47 00 63  7D 94 0C 20 86 58 44 45  |STRING.c}.. .XDE|
000020F0: 53 3B 50 4C 55 53 20 53  54 52 49 4E 47 4C 41 45  |S;PLUS STRINGLAE|
00002100: 4E 47 45 00 95 7D 9E 0C  20 82 5A 57 53 50 31 3B  |NGE..}.. .ZWSP1;|
00002110: 45 52 47 49 42 54 20 4C  53 42 20 44 45 53 20 4F  |ERGIBT LSB DES O|
00002120: 52 54 45 53 20 43 4F 44  45 44 45 53 43 52 49 50  |RTES CODEDESCRIP|
00002130: 54 4F 52 20 58 00 AF 7D  A8 0C 20 81 58 44 45 53  |TOR X..}.. .XDES|
00002140: 2B 32 3B 4D 53 42 20 58  2D 53 54 52 49 4E 47 00  |+2;MSB X-STRING.|
00002150: D3 7D B2 0C 20 86 23 24  30 30 3B 45 56 45 4E 54  |.}.. .#$00;EVENT|
00002160: 55 45 4C 4C 20 43 41 52  52 59 20 41 44 44 49 45  |UELL CARRY ADDIE|
00002170: 52 45 4E 00 FA 7D BC 0C  20 82 5A 57 53 50 31 2B  |REN..}.. .ZWSP1+|
00002180: 31 3B 4D 53 42 20 4F 52  54 20 43 4F 44 45 44 45  |1;MSB ORT CODEDE|
00002190: 53 43 52 49 50 54 4F 52  20 58 00 00 7E C6 0C 3B  |SCRIPTOR X..~..;|
000021A0: 00 22 7E D0 0C 20 A6 3B  44 41 53 53 45 4C 42 45  |."~.. .;DASSELBE|
000021B0: 20 46 55 45 52 20 44 45  4E 20 59 2D 53 54 52 49  | FUER DEN Y-STRI|
000021C0: 4E 47 00 33 7E DA 0C 20  81 59 44 45 53 2B 31 3B  |NG.3~.. .YDES+1;|
000021D0: 4C 53 42 00 4D 7E E4 0C  20 86 59 44 45 53 3B 2B  |LSB.M~.. .YDES;+|
000021E0: 20 53 54 52 49 4E 47 4C  41 45 4E 47 45 00 79 7E  | STRINGLAENGE.y~|
000021F0: EE 0C 20 82 5A 57 53 50  32 3B 4C 53 42 20 5A 45  |.. .ZWSP2;LSB ZE|
00002200: 49 47 45 52 20 41 55 46  20 43 4F 44 45 44 45 53  |IGER AUF CODEDES|
00002210: 43 52 49 50 54 4F 52 20  59 00 8A 7E F8 0C 20 81  |CRIPTOR Y..~.. .|
00002220: 59 44 45 53 2B 32 3B 4D  53 42 00 95 7E 02 0D 20  |YDES+2;MSB..~.. |
00002230: 86 23 24 30 30 00 B3 7E  0C 0D 20 82 5A 57 53 50  |.#$00..~.. .ZWSP|
00002240: 32 2B 31 3B 4D 53 42 20  44 45 53 20 5A 45 49 47  |2+1;MSB DES ZEIG|
00002250: 45 52 53 00 B9 7E 16 0D  3B 00 DB 7E 20 0D 20 84  |ERS..~..;..~ . .|
00002260: 23 24 30 31 3B 5A 41 45  48 4C 45 52 20 49 4E 49  |#$01;ZAEHLER INI|
00002270: 54 49 41 4C 49 53 49 45  52 45 4E 00 07 7F 2A 0D  |TIALISIEREN...*.|
00002280: 53 57 41 50 32 20 81 28  5A 57 53 50 31 29 2C 59  |SWAP2 .(ZWSP1),Y|
00002290: 3B 43 4F 44 45 44 45 53  43 52 49 50 54 4F 52 20  |;CODEDESCRIPTOR |
000022A0: 58 20 4C 41 44 45 4E 00  25 7F 34 0D 20 82 5A 57  |X LADEN.%.4. .ZW|
000022B0: 53 50 3B 55 4E 44 20 42  45 49 53 45 49 54 45 20  |SP;UND BEISEITE |
000022C0: 4C 45 47 45 4E 00 4C 7F  3E 0D 20 81 28 5A 57 53  |LEGEN.L.>. .(ZWS|
000022D0: 50 32 29 2C 59 3B 43 4F  44 45 44 45 53 43 52 49  |P2),Y;CODEDESCRI|
000022E0: 50 54 4F 52 20 59 20 4C  41 44 45 4E 00 70 7F 48  |PTOR Y LADEN.p.H|
000022F0: 0D 20 82 28 5A 57 53 50  31 29 2C 59 3B 55 4E 44  |. .(ZWSP1),Y;UND|
00002300: 20 4E 41 43 48 20 58 20  53 43 48 49 45 42 45 4E  | NACH X SCHIEBEN|
00002310: 00 90 7F 52 0D 20 81 5A  57 53 50 3B 58 20 57 49  |...R. .ZWSP;X WI|
00002320: 45 44 45 52 20 48 45 52  56 4F 52 48 4F 4C 45 4E  |EDER HERVORHOLEN|
00002330: 00 B4 7F 5C 0D 20 82 28  5A 57 53 50 32 29 2C 59  |...\. .(ZWSP2),Y|
00002340: 3B 55 4E 44 20 4E 41 43  48 20 59 20 53 43 48 49  |;UND NACH Y SCHI|
00002350: 45 42 45 4E 00 CB 7F 66  0D 20 A3 3B 48 45 52 55  |EBEN...f. .;HERU|
00002360: 4E 54 45 52 5A 41 45 48  4C 45 4E 00 F2 7F 70 0D  |NTERZAEHLEN...p.|
00002370: 20 B8 53 57 41 50 32 3B  42 49 53 20 55 4E 54 45  | .SWAP2;BIS UNTE|
00002380: 52 4C 41 55 46 20 44 45  53 20 5A 41 45 48 4C 45  |RLAUF DES ZAEHLE|
00002390: 52 53 00 F8 7F 7A 0D 3B  00 20 80 84 0D 3B 2D 20  |RS...z.;. ...;- |
000023A0: 4E 41 45 43 48 53 54 45  20 44 45 53 43 52 49 50  |NAECHSTE DESCRIP|
000023B0: 54 4F 52 41 44 52 45 53  53 45 20 58 3D 58 2B 31  |TORADRESSE X=X+1|
000023C0: 00 26 80 8E 0D 3B 00 43  80 98 0D 20 A6 3B 5A 55  |.&...;.C... .;ZU|
000023D0: 52 20 41 4B 54 55 45 4C  4C 45 4E 20 41 44 52 45  |R AKTUELLEN ADRE|
000023E0: 53 53 45 00 5B 80 A2 0D  20 81 58 41 44 52 3B 44  |SSE.[... .XADR;D|
000023F0: 45 53 20 58 2D 53 54 52  49 4E 47 00 7B 80 AC 0D  |ES X-STRING.{...|
00002400: 20 86 23 24 30 33 3B 33  20 42 59 54 45 20 41 44  | .#$03;3 BYTE AD|
00002410: 44 49 45 52 45 4E 20 46  55 45 52 00 9F 80 B6 0D  |DIEREN FUER.....|
00002420: 20 82 58 41 44 52 3B 4E  45 55 45 20 44 45 53 43  | .XADR;NEUE DESC|
00002430: 52 49 50 54 4F 52 41 44  52 45 53 53 45 20 58 00  |RIPTORADRESSE X.|
00002440: AA 80 C0 0D 20 B5 53 50  52 34 00 B7 80 CA 0D 20  |.... .SPR4..... |
00002450: 8A 58 41 44 52 2B 31 00  BD 80 D4 0D 3B 00 E4 80  |.XADR+1.....;...|
00002460: DE 0D 3B 2D 4E 41 45 43  48 53 54 45 20 44 45 53  |..;-NAECHSTE DES|
00002470: 43 52 49 50 54 4F 52 41  44 52 45 53 53 45 20 59  |CRIPTORADRESSE Y|
00002480: 3D 59 2D 31 00 EA 80 E8  0D 3B 00 0F 81 F2 0D 53  |=Y-1.....;.....S|
00002490: 50 52 34 20 A7 3B 56 4F  4E 20 44 45 52 20 41 4B  |PR4 .;VON DER AK|
000024A0: 54 55 45 4C 4C 45 4E 20  41 44 52 45 53 53 45 00  |TUELLEN ADRESSE.|
000024B0: 27 81 FC 0D 20 81 59 41  44 52 3B 44 45 53 20 59  |'... .YADR;DES Y|
000024C0: 2D 53 54 52 49 4E 47 00  4B 81 06 0E 20 92 23 24  |-STRING.K... .#$|
000024D0: 30 33 3B 33 20 42 59 54  45 20 53 55 42 54 52 41  |03;3 BYTE SUBTRA|
000024E0: 48 49 45 52 45 4E 20 46  55 45 52 00 6F 81 10 0E  |HIEREN FUER.o...|
000024F0: 20 82 59 41 44 52 3B 4E  45 55 45 20 44 45 53 43  | .YADR;NEUE DESC|
00002500: 52 49 50 54 4F 52 41 44  52 45 53 53 45 20 59 00  |RIPTORADRESSE Y.|
00002510: 7A 81 1A 0E 20 B6 53 50  52 35 00 87 81 24 0E 20  |z... .SPR5...$. |
00002520: 94 59 41 44 52 2B 31 00  8D 81 2E 0E 3B 00 A2 81  |.YADR+1.....;...|
00002530: 38 0E 3B 2D 46 41 4C 4C  53 20 58 20 3C 3D 20 59  |8.;-FALLS X <= Y|
00002540: 20 2D 00 A8 81 42 0E 3B  00 DD 81 4C 0E 53 50 52  | -...B.;...L.SPR|
00002550: 35 20 81 59 41 44 52 2B  31 3B 4D 53 42 20 59 2D  |5 .YADR+1;MSB Y-|
00002560: 44 45 53 43 52 49 50 54  4F 52 41 44 52 45 53 53  |DESCRIPTORADRESS|
00002570: 45 20 56 45 52 47 4C 45  49 43 48 45 4E 00 06 82  |E VERGLEICHEN...|
00002580: 56 0E 20 85 58 41 44 52  2B 31 3B 4D 49 54 20 4D  |V. .XADR+1;MIT M|
00002590: 53 42 20 58 2D 44 45 53  43 52 49 50 54 4F 52 41  |SB X-DESCRIPTORA|
000025A0: 44 52 45 53 53 45 00 2B  82 60 0E 20 B5 5A 53 54  |DRESSE.+.`. .ZST|
000025B0: 55 46 45 4E 3B 57 45 4E  4E 20 58 20 3E 20 59 20  |UFEN;WENN X > Y |
000025C0: 44 41 4E 4E 20 53 50 52  55 4E 47 00 51 82 6A 0E  |DANN SPRUNG.Q.j.|
000025D0: 20 B7 42 52 55 45 43 4B  45 32 3B 57 45 4E 4E 20  | .BRUECKE2;WENN |
000025E0: 58 20 3C 20 59 20 44 41  4E 4E 20 53 50 52 55 4E  |X < Y DANN SPRUN|
000025F0: 47 00 80 82 74 0E 20 81  59 41 44 52 3B 4C 53 42  |G...t. .YADR;LSB|
00002600: 20 59 2D 44 45 53 43 52  49 50 54 4F 52 41 44 52  | Y-DESCRIPTORADR|
00002610: 45 53 53 45 20 56 45 52  47 4C 45 49 43 48 45 4E  |ESSE VERGLEICHEN|
00002620: 00 A7 82 7E 0E 20 85 58  41 44 52 3B 4D 49 54 20  |...~. .XADR;MIT |
00002630: 4C 53 42 20 58 2D 44 45  53 43 52 49 50 54 4F 52  |LSB X-DESCRIPTOR|
00002640: 41 44 52 45 53 53 45 00  CD 82 88 0E 20 B6 42 52  |ADRESSE..... .BR|
00002650: 55 45 43 4B 45 32 3B 57  45 4E 4E 20 58 20 3C 20  |UECKE2;WENN X < |
00002660: 59 20 44 41 4E 4E 20 53  50 52 55 4E 47 00 ED 82  |Y DANN SPRUNG...|
00002670: 92 0E 20 B5 5A 53 54 55  46 45 4E 3B 48 49 45 52  |.. .ZSTUFEN;HIER|
00002680: 20 49 4D 4D 45 52 20 53  50 52 55 4E 47 00 F3 82  | IMMER SPRUNG...|
00002690: 9C 0E 3B 00 0E 83 A6 0E  3B 2D 20 53 50 52 55 4E  |..;.....;- SPRUN|
000026A0: 47 20 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 00 26  |G ------------.&|
000026B0: 83 B0 0E 42 52 55 45 43  4B 45 31 30 20 B5 42 52  |...BRUECKE10 .BR|
000026C0: 55 45 43 4B 45 33 00 3D  83 BA 0E 42 52 55 45 43  |UECKE3.=...BRUEC|
000026D0: 4B 45 37 20 B7 42 52 55  45 43 4B 45 36 00 53 83  |KE7 .BRUECKE6.S.|
000026E0: C4 0E 42 52 55 45 43 4B  45 38 20 B5 5A 53 54 55  |..BRUECKE8 .ZSTU|
000026F0: 46 45 4E 00 69 83 CE 0E  42 52 55 45 43 4B 45 39  |FEN.i...BRUECKE9|
00002700: 20 B6 5A 53 54 55 46 45  4E 00 6F 83 D8 0E 3B 00  | .ZSTUFEN.o...;.|
00002710: AD 83 E2 0E 3B 2D 2D 2D  20 54 45 49 4C 20 37 3A  |....;--- TEIL 7:|
00002720: 20 4E 41 45 43 48 53 54  45 20 53 43 48 41 43 48  | NAECHSTE SCHACH|
00002730: 54 45 4C 55 4E 47 53 54  49 45 46 45 20 45 52 4D  |TELUNGSTIEFE ERM|
00002740: 49 54 54 45 4C 4E 20 2D  2D 2D 2D 2D 2D 00 B3 83  |ITTELN ------...|
00002750: EC 0E 3B 00 C7 83 F6 0E  3B 2D 20 5A 3D 5A 2B 31  |..;.....;- Z=Z+1|
00002760: 2C 52 47 3D 59 20 2D 00  EB 83 00 0F 5A 50 4C 55  |,RG=Y -.....ZPLU|
00002770: 53 20 81 52 47 3B 52 45  43 48 54 45 20 47 52 45  |S .RG;RECHTE GRE|
00002780: 4E 5A 45 20 41 55 46 20  44 45 4E 00 03 84 0A 0F  |NZE AUF DEN.....|
00002790: 20 A0 3B 53 54 41 50 45  4C 20 53 43 48 49 45 42  | .;STAPEL SCHIEB|
000027A0: 45 4E 3A 00 1D 84 14 0F  20 81 52 47 2B 31 3B 42  |EN:..... .RG+1;B|
000027B0: 45 44 45 55 54 45 54 20  5A 3D 5A 2B 31 00 24 84  |EDEUTET Z=Z+1.$.|
000027C0: 1E 0F 20 A0 00 42 84 28  0F 20 81 59 41 44 52 3B  |.. ..B.(. .YADR;|
000027D0: 4E 45 55 45 20 52 45 43  48 54 45 20 47 52 45 4E  |NEUE RECHTE GREN|
000027E0: 5A 45 00 67 84 32 0F 20  82 52 47 3B 49 53 54 20  |ZE.g.2. .RG;IST |
000027F0: 44 45 53 43 52 49 50 54  4F 52 41 44 52 45 53 53  |DESCRIPTORADRESS|
00002800: 45 20 56 4F 4E 20 59 00  74 84 3C 0F 20 81 59 41  |E VON Y.t.<. .YA|
00002810: 44 52 2B 31 00 7F 84 46  0F 20 82 52 47 2B 31 00  |DR+1...F. .RG+1.|
00002820: A0 84 50 0F 20 A6 3B 48  49 45 52 20 45 52 46 4F  |..P. .;HIER ERFO|
00002830: 4C 47 54 20 49 4D 4D 45  52 20 53 50 52 55 4E 47  |LGT IMMER SPRUNG|
00002840: 00 D6 84 5A 0F 20 B5 42  52 55 45 43 4B 45 31 30  |...Z. .BRUECKE10|
00002850: 3B 4E 41 43 48 20 56 53  54 52 49 4E 47 20 28 4E  |;NACH VSTRING (N|
00002860: 45 55 45 52 20 56 45 52  47 4C 45 49 43 48 53 53  |EUER VERGLEICHSS|
00002870: 54 52 49 4E 47 29 00 DC  84 64 0F 3B 00 EF 84 6E  |TRING)...d.;...n|
00002880: 0F 3B 2D 20 4C 47 20 3D  20 4C 47 2B 31 20 2D 00  |.;- LG = LG+1 -.|
00002890: 17 85 78 0F 5A 47 4C 45  49 43 48 20 A6 3B 5A 55  |..x.ZGLEICH .;ZU|
000028A0: 52 20 4C 49 4E 4B 45 4E  20 47 52 45 4E 5A 45 20  |R LINKEN GRENZE |
000028B0: 33 20 42 59 54 45 53 00  32 85 82 0F 20 81 4C 47  |3 BYTES.2... .LG|
000028C0: 3B 41 44 44 49 45 52 45  4E 20 46 55 45 52 20 44  |;ADDIEREN FUER D|
000028D0: 45 4E 00 52 85 8C 0F 20  86 23 24 30 33 3B 4E 41  |EN.R... .#$03;NA|
000028E0: 45 43 48 53 54 45 4E 20  44 45 53 43 52 49 50 54  |ECHSTEN DESCRIPT|
000028F0: 4F 52 00 5B 85 96 0F 20  82 4C 47 00 66 85 A0 0F  |OR.[... .LG.f...|
00002900: 20 B5 53 50 52 36 00 6D  85 AA 0F 20 9E 00 7C 85  | .SPR6.m... ..|.|
00002910: B4 0F 53 50 52 36 20 89  4C 47 2B 31 00 A9 85 BE  |..SPR6 .LG+1....|
00002920: 0F 20 93 52 47 2B 31 3B  4D 53 42 20 44 45 52 20  |. .RG+1;MSB DER |
00002930: 47 52 45 4E 5A 41 44 52  45 53 53 45 4E 20 56 45  |GRENZADRESSEN VE|
00002940: 52 47 4C 45 49 43 48 45  4E 00 DA 85 C8 0F 20 B5  |RGLEICHEN..... .|
00002950: 42 52 55 45 43 4B 45 31  30 3B 57 45 4E 4E 20 52  |BRUECKE10;WENN R|
00002960: 47 20 3E 20 4C 47 20 53  50 52 55 4E 47 20 4E 41  |G > LG SPRUNG NA|
00002970: 43 48 20 56 53 54 52 49  4E 47 00 07 86 D2 0F 20  |CH VSTRING..... |
00002980: B7 5A 4D 49 4E 55 53 3B  57 45 4E 4E 20 52 47 20  |.ZMINUS;WENN RG |
00002990: 3C 20 4C 47 20 53 50 52  55 4E 47 20 4E 41 43 48  |< LG SPRUNG NACH|
000029A0: 20 5A 4D 49 4E 55 53 00  2E 86 DC 0F 20 85 52 47  | ZMINUS..... .RG|
000029B0: 3B 4C 53 42 20 47 52 45  4E 5A 41 44 52 45 53 53  |;LSB GRENZADRESS|
000029C0: 45 4E 20 56 45 52 47 4C  45 49 43 48 45 4E 00 5F  |EN VERGLEICHEN._|
000029D0: 86 E6 0F 20 B5 42 52 55  45 43 4B 45 31 30 3B 57  |... .BRUECKE10;W|
000029E0: 45 4E 4E 20 52 47 20 3E  20 4C 47 20 53 50 52 55  |ENN RG > LG SPRU|
000029F0: 4E 47 20 4E 41 43 48 20  56 53 54 52 49 4E 47 00  |NG NACH VSTRING.|
00002A00: 85 86 F0 0F 20 B6 5A 4D  49 4E 55 53 3B 53 4F 4E  |.... .ZMINUS;SON|
00002A10: 53 54 20 53 50 52 55 4E  47 20 4E 41 43 48 20 5A  |ST SPRUNG NACH Z|
00002A20: 4D 49 4E 55 53 00 8B 86  FA 0F 3B 00 B6 86 04 10  |MINUS.....;.....|
00002A30: 5A 53 54 55 46 45 4E 20  81 4C 47 3B 56 45 52 47  |ZSTUFEN .LG;VERG|
00002A40: 4C 45 49 43 48 20 4C 49  4E 4B 45 20 47 52 45 4E  |LEICH LINKE GREN|
00002A50: 5A 45 20 4D 49 54 00 D5  86 0E 10 20 84 4C 47 2B  |ZE MIT..... .LG+|
00002A60: 31 3B 59 2D 44 45 53 43  52 49 50 54 4F 52 41 44  |1;Y-DESCRIPTORAD|
00002A70: 52 45 53 53 45 00 F0 86  18 10 20 93 59 41 44 52  |RESSE..... .YADR|
00002A80: 2B 31 3B 4D 53 42 2D 56  45 52 47 4C 45 49 43 48  |+1;MSB-VERGLEICH|
00002A90: 00 17 87 22 10 20 B5 53  54 41 43 4B 3B 57 45 4E  |...". .STACK;WEN|
00002AA0: 4E 20 59 41 44 52 20 3E  20 4C 47 20 44 41 4E 4E  |N YADR > LG DANN|
00002AB0: 20 53 50 52 55 4E 47 00  40 87 2C 10 20 B7 5A 47  | SPRUNG.@.,. .ZG|
00002AC0: 4C 45 49 43 48 3B 57 45  4E 4E 20 59 41 44 52 20  |LEICH;WENN YADR |
00002AD0: 3C 20 4C 47 20 44 41 4E  4E 20 53 50 52 55 4E 47  |< LG DANN SPRUNG|
00002AE0: 00 5F 87 36 10 20 85 59  41 44 52 3B 53 4F 4E 53  |._.6. .YADR;SONS|
00002AF0: 54 20 4C 53 42 2D 56 45  52 47 4C 45 49 43 48 00  |T LSB-VERGLEICH.|
00002B00: 86 87 40 10 20 B5 53 54  41 43 4B 3B 57 45 4E 4E  |..@. .STACK;WENN|
00002B10: 20 59 41 44 52 20 3E 20  4C 47 20 44 41 4E 4E 20  | YADR > LG DANN |
00002B20: 53 50 52 55 4E 47 00 AE  87 4A 10 20 B6 5A 47 4C  |SPRUNG...J. .ZGL|
00002B30: 45 49 43 48 3B 53 4F 4E  53 54 20 53 50 52 55 4E  |EICH;SONST SPRUN|
00002B40: 47 20 4E 41 43 48 20 5A  47 4C 45 49 43 48 00 B4  |G NACH ZGLEICH..|
00002B50: 87 54 10 3B 00 CC 87 5E  10 3B 2D 20 53 54 41 50  |.T.;...^.;- STAP|
00002B60: 45 4C 20 50 52 55 45 46  45 4E 20 2D 00 FB 87 68  |EL PRUEFEN -...h|
00002B70: 10 53 54 41 43 4B 20 9C  3B 41 4B 54 55 45 4C 4C  |.STACK .;AKTUELL|
00002B80: 45 4E 20 53 54 41 50 45  4C 5A 45 49 47 45 52 20  |EN STAPELZEIGER |
00002B90: 56 45 52 47 4C 45 49 43  48 45 4E 00 18 88 72 10  |VERGLEICHEN...r.|
00002BA0: 20 8B 53 54 4D 49 3B 4D  49 54 20 53 54 41 50 45  | .STMI;MIT STAPE|
00002BB0: 4C 4D 49 4E 49 4D 55 4D  00 45 88 7C 10 20 B6 5A  |LMINIMUM.E.|. .Z|
00002BC0: 50 4C 55 53 3B 57 45 4E  4E 20 53 54 4D 49 20 3C  |PLUS;WENN STMI <|
00002BD0: 3D 20 53 54 41 50 45 4C  5A 45 49 47 45 52 20 53  |= STAPELZEIGER S|
00002BE0: 50 52 55 4E 47 00 64 88  86 10 20 88 53 54 4D 49  |PRUNG.d... .STMI|
00002BF0: 3B 4E 45 55 45 53 20 53  54 41 50 45 4C 4D 49 4E  |;NEUES STAPELMIN|
00002C00: 49 4D 55 4D 00 8F 88 90  10 20 8B 53 54 55 47 3B  |IMUM..... .STUG;|
00002C10: 56 45 52 47 4C 45 49 43  48 20 4D 49 54 20 53 54  |VERGLEICH MIT ST|
00002C20: 41 50 45 4C 55 4E 54 45  52 47 52 45 4E 5A 45 00  |APELUNTERGRENZE.|
00002C30: C1 88 9A 10 20 B6 5A 50  4C 55 53 3B 57 45 4E 4E  |.... .ZPLUS;WENN|
00002C40: 20 53 54 55 47 20 3C 3D  20 53 54 41 50 45 4C 5A  | STUG <= STAPELZ|
00002C50: 45 49 47 45 52 20 44 41  4E 4E 20 53 50 52 55 4E  |EIGER DANN SPRUN|
00002C60: 47 00 DE 88 A4 10 20 83  53 54 49 4E 3B 53 4F 4E  |G..... .STIN;SON|
00002C70: 53 54 20 52 55 45 43 4B  53 50 52 55 4E 47 00 E5  |ST RUECKSPRUNG..|
00002C80: 88 AE 10 20 9D 00 06 89  B8 10 20 B7 42 52 55 45  |... ...... .BRUE|
00002C90: 43 4B 45 37 3B 5A 55 4D  20 41 4E 46 41 4E 47 20  |CKE7;ZUM ANFANG |
00002CA0: 28 53 4F 52 54 29 00 0C  89 C2 10 3B 00 1D 89 CC  |(SORT).....;....|
00002CB0: 10 3B 2D 20 5A 20 3D 20  5A 2D 31 20 2D 00 3F 89  |.;- Z = Z-1 -.?.|
00002CC0: D6 10 5A 4D 49 4E 55 53  20 A1 3B 4C 45 54 5A 54  |..ZMINUS .;LETZT|
00002CD0: 45 20 52 45 43 48 54 45  20 47 52 45 4E 5A 45 00  |E RECHTE GRENZE.|
00002CE0: 5C 89 E0 10 20 82 52 47  2B 31 3B 56 4F 4D 20 53  |\... .RG+1;VOM S|
00002CF0: 54 41 50 45 4C 20 48 4F  4C 45 4E 3A 00 6C 89 EA  |TAPEL HOLEN:.l..|
00002D00: 10 20 A1 3B 42 45 44 45  55 54 45 54 00 7B 89 F4  |. .;BEDEUTET.{..|
00002D10: 10 20 82 52 47 3B 5A 3D  5A 2D 31 00 92 89 FE 10  |. .RG;Z=Z-1.....|
00002D20: 20 83 52 47 2B 31 3B 50  52 55 45 46 45 4E 2C 20  | .RG+1;PRUEFEN, |
00002D30: 4F 42 00 AF 89 08 11 20  8B 23 24 30 30 3B 4D 53  |OB..... .#$00;MS|
00002D40: 42 20 52 45 43 48 54 45  20 47 52 45 4E 5A 45 00  |B RECHTE GRENZE.|
00002D50: D7 89 12 11 20 B7 5A 47  4C 45 49 43 48 3B 55 4E  |.... .ZGLEICH;UN|
00002D60: 47 4C 45 49 43 48 20 4E  55 4C 4C 2C 44 41 4E 4E  |GLEICH NULL,DANN|
00002D70: 20 53 50 52 55 4E 47 00  DD 89 1C 11 3B 00 12 8A  | SPRUNG.....;...|
00002D80: 26 11 3B 2D 2D 2D 20 54  45 49 4C 20 38 3A 20 52  |&.;--- TEIL 8: R|
00002D90: 55 45 43 4B 4B 45 48 52  20 49 4E 53 20 42 41 53  |UECKKEHR INS BAS|
00002DA0: 49 43 20 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |IC -------------|
00002DB0: 2D 2D 00 18 8A 30 11 3B  00 2E 8A 3A 11 3B 2D 20  |--...0.;...:.;- |
00002DC0: 53 54 41 50 45 4C 5A 45  49 47 45 52 20 2D 00 3C  |STAPELZEIGER -.<|
00002DD0: 8A 44 11 41 55 53 20 83  53 54 49 4E 00 43 8A 4E  |.D.AUS .STIN.C.N|
00002DE0: 11 20 9D 00 49 8A 58 11  3B 00 68 8A 62 11 3B 2D  |. ..I.X.;.h.b.;-|
00002DF0: 20 5A 45 52 4F 50 41 47  45 20 5A 55 52 55 45 43  | ZEROPAGE ZURUEC|
00002E00: 4B 48 4F 4C 45 4E 20 2D  00 8A 8A 6C 11 20 83 23  |KHOLEN -...l. .#|
00002E10: 24 30 30 3B 5A 41 45 48  4C 45 52 20 49 4E 49 54  |$00;ZAEHLER INIT|
00002E20: 49 41 4C 49 53 49 45 52  45 4E 00 AE 8A 76 11 5A  |IALISIEREN...v.Z|
00002E30: 50 52 55 45 43 4B 20 A1  3B 57 45 52 54 20 56 4F  |PRUECK .;WERT VO|
00002E40: 4E 20 53 54 41 50 45 4C  20 48 4F 4C 45 4E 00 DE  |N STAPEL HOLEN..|
00002E50: 8A 80 11 20 82 24 30 41  2C 58 3B 55 4E 44 20 49  |... .$0A,X;UND I|
00002E60: 4E 20 44 49 45 20 5A 45  52 4F 50 41 47 45 53 54  |N DIE ZEROPAGEST|
00002E70: 45 4C 4C 45 20 53 43 48  52 45 49 42 45 4E 00 F4  |ELLE SCHREIBEN..|
00002E80: 8A 8A 11 20 A2 3B 4E 41  45 43 48 53 54 45 52 20  |... .;NAECHSTER |
00002E90: 57 45 52 54 00 FF 8A 94  11 20 8B 23 24 31 41 00  |WERT..... .#$1A.|
00002EA0: 0D 8B 9E 11 20 B5 5A 50  52 55 45 43 4B 00 13 8B  |.... .ZPRUECK...|
00002EB0: A8 11 3B 00 59 8B B2 11  3B 2D 2D 2D 20 53 50 45  |..;.Y...;--- SPE|
00002EC0: 49 43 48 45 52 4B 4F 4E  46 49 47 55 52 41 54 49  |ICHERKONFIGURATI|
00002ED0: 4F 4E 20 55 4D 53 43 48  41 4C 54 45 4E 20 41 55  |ON UMSCHALTEN AU|
00002EE0: 46 20 4E 4F 52 4D 41 4C  4B 4F 4E 46 49 47 55 52  |F NORMALKONFIGUR|
00002EF0: 41 54 49 4F 4E 20 2D 2D  2D 00 5F 8B BC 11 3B 00  |ATION ---._...;.|
00002F00: 94 8B C6 11 45 4E 44 45  20 81 23 24 30 30 3B 4B  |....ENDE .#$00;K|
00002F10: 4F 4E 46 49 47 55 52 41  54 49 4F 4E 53 42 59 54  |ONFIGURATIONSBYT|
00002F20: 45 20 46 55 45 52 20 4E  4F 52 4D 41 4C 5A 55 53  |E FUER NORMALZUS|
00002F30: 54 41 4E 44 00 AE 8B D0  11 20 82 43 52 3B 49 4E  |TAND..... .CR;IN|
00002F40: 53 20 43 52 20 53 43 48  52 45 49 42 45 4E 00 B4  |S CR SCHREIBEN..|
00002F50: 8B DA 11 3B 00 F8 8B E4  11 3B 2D 2D 2D 20 56 45  |...;.....;--- VE|
00002F60: 52 4C 41 53 53 45 4E 20  55 4E 44 20 5A 55 52 55  |RLASSEN UND ZURU|
00002F70: 45 43 4B 4C 41 44 45 4E  20 44 45 53 20 50 52 4F  |ECKLADEN DES PRO|
00002F80: 47 52 41 4D 4D 45 53 20  2D 2D 2D 2D 2D 2D 2D 2D  |GRAMMES --------|
00002F90: 2D 2D 2D 2D 2D 2D 2D 2D  00 FE 8B EE 11 3B 00 32  |--------.....;.2|
00002FA0: 8C F8 11 20 81 23 3C 28  4C 45 41 56 45 29 3B 49  |... .#<(LEAVE);I|
00002FB0: 4E 44 49 52 45 4B 54 45  4E 20 53 50 52 55 4E 47  |NDIREKTEN SPRUNG|
00002FC0: 56 45 4B 54 4F 52 20 4C  41 44 45 4E 20 28 4C 53  |VEKTOR LADEN (LS|
00002FD0: 42 29 00 3E 8C 02 12 20  82 5A 57 53 50 31 00 52  |B).>... .ZWSP1.R|
00002FE0: 8C 0C 12 20 81 23 3E 28  4C 45 41 56 45 29 3B 4D  |... .#>(LEAVE);M|
00002FF0: 53 42 00 60 8C 16 12 20  82 5A 57 53 50 31 2B 31  |SB.`... .ZWSP1+1|
00003000: 00 93 8C 20 12 20 96 28  5A 57 53 50 31 29 3B 49  |... . .(ZWSP1);I|
00003010: 4E 44 49 52 45 4B 54 45  52 20 53 50 52 55 4E 47  |NDIREKTER SPRUNG|
00003020: 20 49 4E 53 20 53 54 45  55 45 52 50 52 4F 47 52  | INS STEUERPROGR|
00003030: 41 4D 4D 00 99 8C 2A 12  3B 00 DD 8C 34 12 3B 2D  |AMM...*.;...4.;-|
00003040: 2D 2D 20 45 4E 44 45 20  44 45 53 20 5A 55 20 56  |-- ENDE DES ZU V|
00003050: 45 52 53 43 48 49 45 42  45 4E 44 45 4E 20 50 52  |ERSCHIEBENDEN PR|
00003060: 4F 47 52 41 4D 4D 54 45  49 4C 45 53 20 2D 2D 2D  |OGRAMMTEILES ---|
00003070: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 00 E3 8C  |-------------...|
00003080: 3E 12 3B 00 00 00                                 |>.;...          |
A\.\..;*********************************
*********************.Y\..;*            
                                        
*..]..;*           C 128  QUICKSORT - RO
UTINE               *.Q](.;*            
                                        
*..]2.;*          HEIMO PONNATH  HAMBURG
  1986              *.I]<.;* NACH EINER 
C64-ROUTINE VON K.SOERENSEN  64ER 7(86) 
*..^F.;*                                
                    *.A^P.;*************
****************************************
*.G^Z.;.T^D. ..$1300.C^N. ..0,$9300.I^X.
;..^..;PROGR. STARTET BEI $1300, WIRD AB
ER BEI ASSEMBLIERUNG AB $9300 ABGELEGT..
^..; UM NICHT DEN QUELLTEXT ODER DEN TOP
ASS ZU ZERSTOEREN../_..; DER CODE MUSS P
ER MONITOR NACH $1300 GESCHOBEN WERDEN..
5_ .;.L_..;----- HILFSZELLEN -----------
--------------------.R_..;.._.. ..XADR=$
0A;ADRESSE VON A$(X) IN $0A/0B.J_H. ..YA
DR=$0C;ADRESSE VON A$(Y) IN $0C/0D.._R. 
..VADR=$0E;ADRESSE VON A$(V) IN $0E/0F.$
`.. ..XDES=$10;DESCRIPTOR A$(X) IN $10,1
1,12.R`.. ..YDES=$13;DESCRIPTOR A$(Y) IN
 $13,14,15..`.. ..VDES=$16;DESCRIPTOR A$
(V) IN $16,17,18..`.. ..LG=$19;LINKE GRE
NZE IN $19,1A.K`.. ..RG=$1B;RECHTE GRENZ
E IN $1B,1C..`.. ..VERL=$1D;LAENGENVERGL
EICH..A.. ..ZWSP=$1E;ZWISCHENSPEICHER (1
 BYTE).AA". ..ZWSP1=$1F;ZWISCHENSPEICHER
 (2 BYTE).LA,. ..ZWSP2=$21;ZWISCHENSPEIC
HER (2 BYTE).RA6.;..A@. ..ARYTAB=$31;FEL
DANFANG IN BANK 1..AJ.;..AO. ..ST1=$FB;U
MLADEVEKTOR..AT. ..STIN=$FC;STAPEL EINGA
NGSWERT..B^. ..STMI=$FD;STAPELMINIMUM,UM
LADEVEKTOR.,BH. ..STUG=$FE;STAPELUNTERGR
ENZE.2BR.;.KB|. ..ZERO=$200;HIER FAENGT 
DAS VERSCHOBENE PROGRAMM AN..B.. ..RETOU
R=$03DB;ENDADRESSE IM VERSCHOBENEN PROGR
AMM..B..;.PB.. ..CR=$FF00;KONFIGURATIONS
REGISTER..C.. ..LCRB=$FF02;LADEKONTROLLR
EGISTER B (ENTHAELT $7F)..C..;..C..;..C.
.;. CB.;.YCL.;****** STEUERPROGRAMM QUIC
KSORT *******************._CV.;..C..STEU
ER0 .;UNTERBRECHUNGEN VERHINDERN..C.. .U
MLAD;PROGRAMM UMLADEN IN COMMON AREA..C.
. .#<(ZERO);INDIREKTEN SPRUNGVEKTOR..D..
 .ST1;AUF NEUEN PROGRAMMANFANG RICHTEN..
D.. .#>(ZERO).!D.. .ST1+1.UD.. .(ST1);SP
RUNG INS UMGELADENE QUICKSORTPROGRAMM..D
..LEAVE .UMLAD;COMMON AREA RESTAURIEREN,
 PROGRAMM ZURUECKHOLEN..D!. .;UNTERBRECH
UNGEN FREIGEBEN.XD&. .;ZURUECK INS BASIC
PROGRAMM..D0.;.$E:.;--- UNTERPROGRAMM ZU
M UMLADEN VON COMMONBEREICH UND PROGRAMM
 ---.*ED.;.ZEN.UMLAD .#<(ZERO);VEKTOR QU
ELLBEREICH BELEGEN.HEX. .ST1;LSB.WEB. .#
>(ZERO)..EL. .ST1+1;MSB..EV. .#<(ANFANG)
;VEKTOR ZIELBEREICH BELEGEN.BE.. .STMI;L
SB.SE.. .#>(ANFANG)..E.. .STMI+1;MSB..E.
.;..F.. .#$01;ANZAHL PAGES -1 (512 BYTES
 UMLADEN).@F..UMLAD1 .#$00;OFFSET INITIA
LISIEREN.PF..UMLAD2 .(ST1),Y;BYTE AUS QU
ELLBEREICH LESEN..FF.  ;BEISEITE LEGEN..
FP. .(STMI),Y;BYTE AUS ZIELBEREICH LESEN
..FZ. .(ST1),Y;UND IN QUELLBEREICH SCHRE
IBEN..F.. .;BYTE WIEDER HERVORHOLEN.'G..
 .(STMI),Y;UND IN ZIELBEREICH SCHREIBEN.
=G.. .;NAECHSTES BYTE.HG.. .UMLAD2;BIS 2
56 BYTES VERTAUSCHT SIND..G.. .ST1+1;MSB
 QUELLBEREICH ERHOEHEN..G.. .STMI+1;UND 
MSB ZIELBEREICH EBENFALLS..G . .;PAGEZAE
HLER HERUNTERZAEHLEN..H*. .UMLAD2;WEITER
 BIS UNTERLAUF EINTRITT.)H4. .;ZURUECK I
NS STEUERPROGRAMM./H>.;.5HH.;.NHR.;-----
-- ZU VERSCHIEBENDES PROGRAMM ----------
------.TH\.;..HF.;--- SPEICHERKONFIGURAT
ION UMSCHALTEN AUF BANK 1 (ALLES RAM) --
-..HP.;..IZ.ANFANG .LCRB;DADURCH WIRD DE
R INHALT DES PCRB INS CR GESETZT..I..;..
I..;.@I..;----- PROGRAMM QUICKSORT -----
----------------.FI..;.ZI..;--- TEIL 1: 
RETTEN DER BASIC-DATEN -----------..I..;
..I..;- STAPELZEIGER -..IJ.START .;STAPE
LZEIGER INS X-REGISTER.YIT. .STIN;UND AB
SPEICHERN..I.. .STMI..J.. .;FREIEN PLATZ
 IM STACK SICHERN..J.. ...J.. .#$52.?J..
 .SPR;GENUG PLATZ:WEITER, SONST.CJ.. .RE
TOUR;ABBRUCH DES PROGRAMMES..J..SPR .#$0
2;STAPELUNTERGRENZE..J$. .STUG;FESTLEGEN
..J..;- ZEROPAGEINHALTE SICHERN -..J8. .
#$19;ZAEHLER INITIALISIEREN..JB.ZPWEG .$
0A,X;UMLADESCHLEIFE..KL.  ;WERTE AUF STA
PEL LEGEN. KV. ..GK`. .ZPWEG;BIS ALLE IN
HALTE GESICHERT.IKJ. .;STAPELZEIGER ALS 
EINGANGS-..KT. .STIN;WERT FESTHALTEN..K~
.;..K..;--- TEIL 2: FESTLEGEN ANFANGSBED
INGUNGEN -----.DK..;..K..;- SCHACHTELUNG
STIEFE Z=0 -..K..SORT .#$00..K..  ..L.. 
 ..LD.;- LINKE GRENZE LG=1 -.4LN. .;ELEM
ENT A$(1) IM.TLX. .ARYTAB;ERSTEN DEFINIE
RTEN.QL.. .#$0A;ARRAY FESTSTELLEN..L.. .
LG;UND ADRESSE IN..L.. .ARYTAB+1;LG UND 
LG+1..L.. .#$00;EINTRAGEN..L.. .LG+1;A$(
0) WIRD UEBERSPRUNGEN..L..;- RECHTE GREN
ZE RG=A -..M.. .;LETZTES ELEMENT A$(A).:
M(. .#$02;DURCH ADDIEREN DER FELD-.AM2. 
.(ARYTAB),Y;LAENGE ZUM ARRAYSTART.UM<. .
ARYTAB;SUCHEN.|MF. ...MP. ...MZ. .(ARYTA
B),Y..MD. .ARYTAB+1..MN. ..PMX. .;LAENGE
 DES LETZTEN DESCRIPTORS..M.. .;ABZIEHEN
 UM DIE START-..N.. .#$03;ADRESSE VON A$
(A) ZU.*N.. .RG;ERMITTELN UND NACH.EN . 
 ;RG/RG+1 UND AUF DEN.`N.. .;STAPEL ZU S
CHIEBEN..KN.. .#$00.VN.. .RG+1.}NH.  ..N
R. .VSTRING;HIER IMMER VERZWEIGUNG.EN..;
- VERSCHACHTELUNGSTIEFE Z=1 -.KN..;..N..
BRUECKE4 .SORT..N..;..O..;--- TEIL 3: VE
RGLEICHSSTRING BERECHNEN -------..O..;.2
O..;- X=LG, Y=RG -.8O".;.`O,.VSTRING .#$
03;INHALTE VON LG UND RG..O6.LADXY .LG,X
;IN XADR UND YADR..O@. .XADR,X;UMLADEN..
OJ. ...OT. .LADXY..O^.;..OH.;- V=X+Y -.D
OR.;..O|. .;ADDIEREN STARTADRESSEN DES..
P.. .XADR;ERSTEN UND DES..P.. .YADR;LETZ
TEN DESCRIPTORS.&P.. ..3P.. .XADR+1.@P..
 .YADR+1.FP..;.ZPB.;- V=INT(V/2) -.`PL.;
..PV. .;MSB DER SUMME RECHTS SHIFTEN =..
P.. .VADR+1;DIVISION DURCH 2.IP.. .;LSB 
DER SUMME RECHTS ROTIEREN.PP.. ...P.. .S
PR1;SUMME GERADE,DANN SPRUNG..Q.. .#$01;
SONST BEGRADIGEN..Q.. .SPR1.GQ.. .VADR+1
;WENN UNTERLAUF MSB KORRIGIEREN.VQ&.SPR1
 .VADR.\Q0.;.Q:.;- VERGLEICHSSTRING V$=
A$(V) -..QD.;..QN. .#$00;DESCRIPTOR VON 
V$ UEBERTRAGEN.EQX. .(VADR),Y;IN VDES.PQ
B. .VDES.WQL. ...QV. .(VADR),Y..Q.. .VDE
S+1..Q.. ...R.. .(VADR),Y..R.. .VDES+2..
R..;.RR..;--- TEIL 4: STRINGVERGLEICH LI
NKER TEIL --------.XR..;.}RF.;- STRING L
INKS VON V$: X$=A$(X)..RP.;..RZ.VERGLX .
#$00;DESCRIPTOR VON X$ UEBERTRAGEN.IR.. 
.(XADR),Y;IN XDES.TR.. .XDES..R.. ...R..
 .(XADR),Y..R.. .XDES+1..R.. ...S . .(XA
DR),Y..S*. .XDES+2.:S4.;- STRINGLAENGENV
ERGLEICH -.]S>. .#$00;WENN X$ KUERZER AL
S V$:..SH. .XDES;     X = 0 ,  VERL = LE
N(X$)..SR. .VDES;WENN V$ KUERZER X$:..S\
. .SPR2;     X    = 1.XSF. .;     VERL =
 LEN(V$)..SP. .VDES..SZ.SPR2 .VERL..S..;
. T..;- STRINGVERGLEICH : X$ < ODER > V$
.&T..;.GT.. .#$00;OFFSET INITIALISIEREN.
MT..VERGLX1 .(XDES+1),Y;ZEICHEN HOLEN..T
.. .(VDES+1),Y;UND VERGLEICHEN..T.. .VER
GLX2;ZEICHEN UNGLEICH: SPRUNG..TJ. ...TT
. .VERL;SCHON STRINGLAENGE ERREICHT?..U.
. .VERGLX1;NEIN,NAECHSTES ZEICHEN..U.. .
#$01.(U..VERGLX2 .VERGLY..U..;.ZU..;- NA
ECHSTES ELEMENT VERGLEICHEN: X=X+1.`U..;
.~U.. .;ERHOEHEN VON XADR UM 3..U$. .XAD
R;FUER DEN NAECHSTEN..U.. .#$03;STRINGDE
SCRIPTOR.CU8. .XADR..UB. .VERGLX;WEITER 
ZUM NAECHSTEN VERGLEICH..UL. .XADR+1..VV
. .VERGLX..V`.;.*VJ.;- SPRUNG ----------
--.AVT.BRUECKE5 .BRUECKE4.WV~.BRUECKE1 .
VSTRING.]V..;..V..;--- TEIL 5: STRINGVER
GLEICH RECHTER TEIL ----------..V..;.CV.
.;- STRING RECHTS VON V$ : Y$=A$(Y).IV..
;..V..VERGLY .#$00;DESCRIPTOR VON Y$ UEB
ERTRAGEN..WD. .(YADR),Y;IN YDES..WN. .YD
ES.!WX. ..0W.. .(YADR),Y.=W.. .YDES+1.DW
.. ..SW.. .(YADR),Y.`W.. .YDES+2..W..;- 
STRINGLAENGENVERGLEICH -..W.. .#$00;WENN
 V$ KUERZER ALS Y$:.JW(. .VDES;     X = 
0 , VERL = LEN(V$)..W2. .YDES;WENN Y$ KU
ERZER ALS V$:..X<. .SPR3;     X    = 1.!
XF. .;     VERL = LEN(Y$).,XP. .YDES.;XZ
.SPR3 .VERL.AXD.;.IXN.;- STRINGVERGLEICH
 : Y$ < ODER > V$.OXX.;..X.. .#$00;OFFSE
T INITIALISIEREN..X..VERGLY1 .(VDES+1),Y
;ZEICHEN HOLEN.WX.. .(YDES+1),Y;UND VERG
LEICHEN..X . .VERGLY2;ZEICHEN UNGLEICH:S
PRUNG..Y.. ..,Y.. .VERL;SCHON STRINGLAEN
GE ERREICHT?.QY.. .VERGLY1;NEIN,NAECHSTE
S ZEICHEN.\YH. .#$01.PYR.VERGLY2 .TAUSCH
.VY..;..Y..;- NAECHSTES ELEMENT VERGLEIC
HEN: Y=Y-1..Y..;..Y.. .;YADR UM 3 BYTES.
.Y.. .YADR;ERNIEDRIGEN FUER DEN..Y.. .#$
03;NAECHSTEN..Z.. .YADR;STRINGDESCRIPTOR
.<Z". .VERGLY;WEITER ZUM NAECHSTEN VERGL
EICH.IZ,. .YADR+1.VZ6. .VERGLY.\Z@.;.VZJ
.;- SPRUNG -----------..ZT.BRUECKE2 .VER
GLX..Z^.BRUECKE3 .BRUECKE1..ZH.BRUECKE6 
.BRUECKE5..ZR.;..Z|.;--- TEIL 6: STRINGS
 VERTAUSCHEN -----------..Z..;..{..;-PRU
EFEN OB X >= Y -..{..;.9{..TAUSCH .YADR+
1;MSB VERGLEICHEN.F{.. .XADR+1.J{.. .BRU
ECKE8;WENN X>Y DANN SPRUNG..{B. .SWAP;WE
NN X<Y DANN VERTAUSCHEN..{L. .XADR;LSB V
ERGLEICHEN..{V. .YADR..{.. .BRUECKE9;WEN
N X >= Y DANN SPRUNG..{..;..|..;- VERTAU
SCHEN DER STRING- UND CODEDESCRIPTOREN -
.5|..;- STRINGDESCRIPTOREN: -.D|..SWAP .
#$02.O|.. .#$02.N|..SWAP1 .XDES,X;X-DESC
RIPTOR..|&. .(YADR),Y;NACH A$(Y)..|0. .Y
DES,X;Y-DESCRIPTOR..|:. .(XADR),Y;NACH A
$(X).C|D. ..J|N. ..V|X. .SWAP1..|B.;..|L
.;- CODEDESCRIPTOREN: -..|V.;.,}.. .;BER
ECHNEN DER ORTE DER CODEDESCRIPTOREN.F}.
. .XDES+1;LSB X-STRING.C}.. .XDES;PLUS S
TRINGLAENGE..}.. .ZWSP1;ERGIBT LSB DES O
RTES CODEDESCRIPTOR X..}.. .XDES+2;MSB X
-STRING.S}.. .#$00;EVENTUELL CARRY ADDIE
REN..}.. .ZWSP1+1;MSB ORT CODEDESCRIPTOR
 X..~F.;."~P. .;DASSELBE FUER DEN Y-STRI
NG.3~Z. .YDES+1;LSB.M~.. .YDES;+ STRINGL
AENGE.Y~.. .ZWSP2;LSB ZEIGER AUF CODEDES
CRIPTOR Y..~.. .YDES+2;MSB..~.. .#$00..~
.. .ZWSP2+1;MSB DES ZEIGERS..~..;..~ . .
#$01;ZAEHLER INITIALISIEREN..*.SWAP2 .(
ZWSP1),Y;CODEDESCRIPTOR X LADEN.%4. .ZW
SP;UND BEISEITE LEGEN.L>. .(ZWSP2),Y;CO
DEDESCRIPTOR Y LADEN.PH. .(ZWSP1),Y;UND
 NACH X SCHIEBEN..R. .ZWSP;X WIEDER HER
VORHOLEN..\. .(ZWSP2),Y;UND NACH Y SCHI
EBEN.KF. .;HERUNTERZAEHLEN..P. .SWAP2;
BIS UNTERLAUF DES ZAEHLERS..Z.;. ...;- 
NAECHSTE DESCRIPTORADRESSE X=X+1.&...;.C
... .;ZUR AKTUELLEN ADRESSE.[... .XADR;D
ES X-STRING.{... .#$03;3 BYTE ADDIEREN F
UER..... .XADR;NEUE DESCRIPTORADRESSE X.
.... .SPR4...J. .XADR+1...T.;.....;-NAEC
HSTE DESCRIPTORADRESSE Y=Y-1.....;.....S
PR4 .;VON DER AKTUELLEN ADRESSE.'... .YA
DR;DES Y-STRING.K... .#$03;3 BYTE SUBTRA
HIEREN FUER.O... .YADR;NEUE DESCRIPTORAD
RESSE Y.Z... .SPR5...$. .YADR+1.....;...
8.;-FALLS X <= Y -...B.;...L.SPR5 .YADR+
1;MSB Y-DESCRIPTORADRESSE VERGLEICHEN...
V. .XADR+1;MIT MSB X-DESCRIPTORADRESSE.+
.`. .ZSTUFEN;WENN X > Y DANN SPRUNG.Q.J.
 .BRUECKE2;WENN X < Y DANN SPRUNG...T. .
YADR;LSB Y-DESCRIPTORADRESSE VERGLEICHEN
...~. .XADR;MIT LSB X-DESCRIPTORADRESSE.
M... .BRUECKE2;WENN X < Y DANN SPRUNG...
.. .ZSTUFEN;HIER IMMER SPRUNG.....;.....
;- SPRUNG ------------.&...BRUECKE10 .BR
UECKE3.=...BRUECKE7 .BRUECKE6.S.D.BRUECK
E8 .ZSTUFEN.I.N.BRUECKE9 .ZSTUFEN.O.X.;.
....;--- TEIL 7: NAECHSTE SCHACHTELUNGST
IEFE ERMITTELN ------.....;.G...;- Z=Z+1
,RG=Y -.....ZPLUS .RG;RECHTE GRENZE AUF 
DEN.....  ;STAPEL SCHIEBEN:..... .RG+1;B
EDEUTET Z=Z+1.$...  .B.(. .YADR;NEUE REC
HTE GRENZE.G.2. .RG;IST DESCRIPTORADRESS
E VON Y.T.<. .YADR+1..F. .RG+1. .P. .;H
IER ERFOLGT IMMER SPRUNG.V.Z. .BRUECKE10
;NACH VSTRING (NEUER VERGLEICHSSTRING)..
.D.;...N.;- LG = LG+1 -...X.ZGLEICH .;ZU
R LINKEN GRENZE 3 BYTES.2... .LG;ADDIERE
N FUER DEN.R... .#$03;NAECHSTEN DESCRIPT
OR.[... .LG.F. . .SPR6.M... ..|...SPR6 .
LG+1..... .RG+1;MSB DER GRENZADRESSEN VE
RGLEICHEN.Z.H. .BRUECKE10;WENN RG > LG S
PRUNG NACH VSTRING...R. .ZMINUS;WENN RG 
< LG SPRUNG NACH ZMINUS..... .RG;LSB GRE
NZADRESSEN VERGLEICHEN._... .BRUECKE10;W
ENN RG > LG SPRUNG NACH VSTRING..... .ZM
INUS;SONST SPRUNG NACH ZMINUS.....;.....
ZSTUFEN .LG;VERGLEICH LINKE GRENZE MIT.U
... .LG+1;Y-DESCRIPTORADRESSE..... .YADR
+1;MSB-VERGLEICH...". .STACK;WENN YADR >
 LG DANN SPRUNG.@.,. .ZGLEICH;WENN YADR 
< LG DANN SPRUNG._.6. .YADR;SONST LSB-VE
RGLEICH...@. .STACK;WENN YADR > LG DANN 
SPRUNG...J. .ZGLEICH;SONST SPRUNG NACH Z
GLEICH...T.;.L.^.;- STAPEL PRUEFEN -...H
.STACK .;AKTUELLEN STAPELZEIGER VERGLEIC
HEN...R. .STMI;MIT STAPELMINIMUM.E.|. .Z
PLUS;WENN STMI <= STAPELZEIGER SPRUNG.D.
.. .STMI;NEUES STAPELMINIMUM..... .STUG;
VERGLEICH MIT STAPELUNTERGRENZE.A... .ZP
LUS;WENN STUG <= STAPELZEIGER DANN SPRUN
G..... .STIN;SONST RUECKSPRUNG..... ....
.. .BRUECKE7;ZUM ANFANG (SORT)...B.;...L
.;- Z = Z-1 -.?.V.ZMINUS .;LETZTE RECHTE
 GRENZE.\... .RG+1;VOM STAPEL HOLEN:.L..
. .;BEDEUTET.{... .RG;Z=Z-1..... .RG+1;P
RUEFEN, OB..... .#$00;MSB RECHTE GRENZE.
W... .ZGLEICH;UNGLEICH NULL,DANN SPRUNG.
....;...&.;--- TEIL 8: RUECKKEHR INS BAS
IC ---------------...0.;...:.;- STAPELZE
IGER -.<.D.AUS .STIN.C.N. ..I.X.;.H.B.;-
 ZEROPAGE ZURUECKHOLEN -...L. .#$00;ZAEH
LER INITIALISIEREN...V.ZPRUECK .;WERT VO
N STAPEL HOLEN..... .$0A,X;UND IN DIE ZE
ROPAGESTELLE SCHREIBEN..... .;NAECHSTER 
WERT..... .#$1A..... .ZPRUECK.....;.Y...
;--- SPEICHERKONFIGURATION UMSCHALTEN AU
F NORMALKONFIGURATION ---._...;...F.ENDE
 .#$00;KONFIGURATIONSBYTE FUER NORMALZUS
TAND...P. .CR;INS CR SCHREIBEN...Z.;....
.;--- VERLASSEN UND ZURUECKLADEN DES PRO
GRAMMES ----------------.....;.2... .#<(
LEAVE);INDIREKTEN SPRUNGVEKTOR LADEN (LS
B).>... .ZWSP1.R... .#>(LEAVE);MSB.`... 
.ZWSP1+1... . .(ZWSP1);INDIREKTER SPRUNG
 INS STEUERPROGRAMM...*.;...4.;--- ENDE 
DES ZU VERSCHIEBENDEN PROGRAMMTEILES ---
-------------...>.;...
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL