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 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL