SEARCH.SRC
FILE INFORMATION
FILENAME(S): SEARCH.SRC
FILE TYPE(S): PRG
FILE SIZE: 5.5K
FIRST SEEN: 2025-11-30 01:12:43
APPEARS ON: 1 disk(s)
FILE HASH
e746855de6b9d8af8095e109b04df8ddaa98f6fa2695067a50f0136418f6a1d7
FOUND ON DISKS (1 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| 10708 SEITE 1 | SEARCH.SRC | PRG | C64er | 14 | 7 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
00000000: D8 1F F7 1F 64 00 3B 2A 2A 2A 2A 2A 2A 2A 2A 2A |....d.;*********|
00000010: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************|
00000020: 00 16 20 6E 00 3B 2A 20 20 20 20 20 53 55 43 48 |.. n.;* SUCH|
00000030: 52 4F 55 54 49 4E 45 20 20 20 20 20 20 20 2A 00 |ROUTINE *.|
00000040: 35 20 78 00 3B 2A 20 28 43 29 20 53 41 49 44 20 |5 x.;* (C) SAID |
00000050: 42 41 4C 4F 55 49 2C 20 31 39 38 37 20 2A 00 54 |BALOUI, 1987 *.T|
00000060: 20 82 00 3B 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A | ..;************|
00000070: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 00 5A 20 |*************.Z |
00000080: 8C 00 3B 00 60 20 96 00 3B 00 66 20 A0 00 3B 00 |..;.` ..;.f ..;.|
00000090: 8C 20 AA 00 3B 46 55 4E 4B 54 49 4F 4E 3A 20 53 |. ..;FUNKTION: S|
000000A0: 55 43 48 54 20 49 4E 20 45 49 4E 45 4D 20 53 54 |UCHT IN EINEM ST|
000000B0: 52 49 4E 47 2D 00 AE 20 B4 00 3B 41 52 52 41 59 |RING-.. ..;ARRAY|
000000C0: 20 44 49 45 20 41 4E 47 45 47 2E 5A 45 49 43 48 | DIE ANGEG.ZEICH|
000000D0: 45 4E 4B 45 54 54 45 00 B4 20 BE 00 3B 00 D6 20 |ENKETTE.. ..;.. |
000000E0: C8 00 3B 41 55 46 52 55 46 3A 20 53 59 53 20 58 |..;AUFRUF: SYS X|
000000F0: 2C 53 55 43 48 4B 52 49 54 45 52 49 55 4D 2C 00 |,SUCHKRITERIUM,.|
00000100: F7 20 D2 00 3B 20 20 20 20 20 20 20 20 53 55 43 |. ..; SUC|
00000110: 48 45 20 41 42 2C 53 55 43 48 45 20 42 49 53 2C |HE AB,SUCHE BIS,|
00000120: 00 1B 21 DC 00 3B 20 20 20 20 20 20 20 20 55 45 |..!..; UE|
00000130: 42 45 52 47 41 42 45 56 41 52 2E 28 49 4E 54 45 |BERGABEVAR.(INTE|
00000140: 47 45 52 29 00 21 21 E6 00 3B 00 45 21 F0 00 3B |GER).!!..;.E!..;|
00000150: 53 55 43 48 4B 52 49 54 2E 3A 20 2D 41 42 4B 55 |SUCHKRIT.: -ABKU|
00000160: 45 52 5A 45 4E 20 28 22 4D 41 49 2A 22 29 00 6B |ERZEN ("MAI*").k|
00000170: 21 FA 00 3B 20 20 20 20 20 20 20 20 20 20 20 2D |!..; -|
00000180: 4D 41 53 4B 49 45 52 45 4E 20 28 22 4D 3F 41 3F |MASKIEREN ("M?A?|
00000190: 45 52 22 29 00 91 21 04 01 3B 20 20 20 20 20 20 |ER")..!..; |
000001A0: 20 20 20 20 20 2D 4B 4F 4D 42 49 4E 49 45 52 45 | -KOMBINIERE|
000001B0: 4E 20 28 22 4D 3F 49 2A 22 29 00 B7 21 0E 01 3B |N ("M?I*")..!..;|
000001C0: 53 55 43 48 45 20 41 42 2F 42 49 53 3A 20 55 4E |SUCHE AB/BIS: UN|
000001D0: 54 45 52 45 2F 4F 42 45 52 45 20 47 52 45 4E 2D |TERE/OBERE GREN-|
000001E0: 00 DD 21 18 01 3B 20 20 20 20 20 20 20 20 20 20 |..!..; |
000001F0: 20 20 20 20 5A 45 20 44 45 53 20 5A 55 20 44 55 | ZE DES ZU DU|
00000200: 52 43 48 53 55 2D 00 01 22 22 01 3B 20 20 20 20 |RCHSU-.."".; |
00000210: 20 20 20 20 20 20 20 20 20 20 53 55 43 48 45 4E | SUCHEN|
00000220: 44 45 4E 20 41 52 52 41 59 53 00 24 22 2C 01 3B |DEN ARRAYS.$",.;|
00000230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 41 | (A|
00000240: 24 28 31 30 29 2C 41 24 28 33 32 29 29 00 4A 22 |$(10),A$(32)).J"|
00000250: 36 01 3B 55 45 42 45 52 47 2E 56 41 52 2E 3A 20 |6.;UEBERG.VAR.: |
00000260: 49 4E 54 45 47 45 52 56 41 52 2E 2C 20 49 4E 20 |INTEGERVAR., IN |
00000270: 44 45 52 00 77 22 40 01 3B 20 20 20 20 20 20 20 |DER.w"@.; |
00000280: 20 20 20 20 20 20 44 45 52 20 49 4E 44 45 58 20 | DER INDEX |
00000290: 45 49 4E 45 53 20 47 45 46 55 4E 44 45 4E 45 4E |EINES GEFUNDENEN|
000002A0: 00 A1 22 4A 01 3B 20 20 20 20 20 20 20 20 20 20 |.."J.; |
000002B0: 20 20 20 53 54 52 49 4E 47 53 20 55 45 42 45 52 | STRINGS UEBER|
000002C0: 47 45 42 45 4E 20 57 49 52 44 00 C7 22 54 01 3B |GEBEN WIRD.."T.;|
000002D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 30 3D | (0=|
000002E0: 53 55 43 48 45 20 45 52 46 4F 4C 47 4C 4F 53 29 |SUCHE ERFOLGLOS)|
000002F0: 00 CD 22 5E 01 3B 00 F2 22 68 01 3B 42 53 50 2E |.."^.;.."h.;BSP.|
00000300: 3A 20 53 59 53 20 58 2C 53 24 2C 41 24 28 30 29 |: SYS X,S$,A$(0)|
00000310: 2C 41 24 28 31 30 30 29 2C 50 25 00 16 23 72 01 |,A$(100),P%..#r.|
00000320: 3B 20 20 20 20 20 20 44 55 52 43 48 53 55 43 48 |; DURCHSUCH|
00000330: 54 20 41 24 28 30 29 2D 41 24 28 31 30 30 29 00 |T A$(0)-A$(100).|
00000340: 3C 23 7C 01 3B 20 20 20 20 20 20 4E 41 43 48 20 |<#|.; NACH |
00000350: 53 24 20 55 2E 55 45 42 45 52 47 49 42 54 20 52 |S$ U.UEBERGIBT R|
00000360: 45 53 55 4C 54 00 4D 23 86 01 3B 20 20 20 20 20 |ESULT.M#..; |
00000370: 20 49 4E 20 50 25 00 53 23 90 01 3B 00 59 23 9A | IN P%.S#..;.Y#.|
00000380: 01 3B 00 5F 23 A4 01 3B 00 72 23 AE 01 3B 2A 2A |.;._#..;.r#..;**|
00000390: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 00 85 23 B8 01 |***********..#..|
000003A0: 3B 2A 2A 2A 20 4C 41 42 45 4C 20 2A 2A 2A 00 98 |;*** LABEL ***..|
000003B0: 23 C2 01 3B 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |#..;************|
000003C0: 2A 00 C0 23 CC 01 3B 20 20 20 20 20 20 20 20 20 |*..#..; |
000003D0: 20 20 20 20 20 20 20 20 20 20 20 3B 50 52 4F 47 | ;PROG|
000003E0: 52 41 4D 4D 53 54 41 52 54 00 CE 23 D6 01 2E 42 |RAMMSTART..#...B|
000003F0: 41 20 24 43 30 43 30 00 D4 23 E0 01 3B 00 FA 23 |A $C0C0..#..;..#|
00000400: EA 01 2E 45 51 20 43 48 4B 4B 4F 4D 20 20 3D 24 |...EQ CHKKOM =$|
00000410: 41 45 46 44 20 20 20 3B 4C 49 45 53 54 20 4B 4F |AEFD ;LIEST KO|
00000420: 4D 4D 41 00 26 24 F4 01 2E 45 51 20 47 45 54 42 |MMA.&$...EQ GETB|
00000430: 59 54 20 20 3D 24 42 37 39 45 20 20 20 3B 4C 49 |YT =$B79E ;LI|
00000440: 45 53 54 20 31 2D 42 59 54 45 2D 57 45 52 54 00 |EST 1-BYTE-WERT.|
00000450: 5A 24 FE 01 2E 45 51 20 47 45 54 50 4F 53 20 20 |Z$...EQ GETPOS |
00000460: 3D 24 42 30 38 42 20 20 20 3B 48 4F 4C 54 20 50 |=$B08B ;HOLT P|
00000470: 4F 49 4E 54 45 52 20 41 55 46 20 56 41 52 49 41 |OINTER AUF VARIA|
00000480: 42 4C 45 00 91 24 08 02 2E 45 51 20 46 52 4D 4E |BLE..$...EQ FRMN|
00000490: 55 4D 20 20 3D 24 41 44 38 41 20 20 20 3B 4C 49 |UM =$AD8A ;LI|
000004A0: 45 53 54 20 4E 55 2E 41 55 53 44 52 55 43 4B 20 |EST NU.AUSDRUCK |
000004B0: 49 4E 20 46 41 41 43 20 45 49 4E 00 C4 24 12 02 |IN FAAC EIN..$..|
000004C0: 2E 45 51 20 41 44 52 46 4F 52 20 20 3D 24 42 37 |.EQ ADRFOR =$B7|
000004D0: 46 37 20 20 20 3B 57 41 4E 44 45 4C 54 20 46 41 |F7 ;WANDELT FA|
000004E0: 43 20 4E 41 43 48 20 49 4E 54 45 47 45 52 00 06 |C NACH INTEGER..|
000004F0: 25 1C 02 2E 45 51 20 43 48 52 47 45 54 20 20 3D |%...EQ CHRGET =|
00000500: 24 37 33 20 20 20 20 20 3B 49 4E 4B 52 45 4D 2E |$73 ;INKREM.|
00000510: 54 45 58 54 50 54 52 20 55 2E 48 4F 4C 54 20 41 |TEXTPTR U.HOLT A|
00000520: 4B 54 55 45 4C 4C 45 53 20 5A 45 49 43 48 45 4E |KTUELLES ZEICHEN|
00000530: 00 37 25 26 02 2E 45 51 20 43 48 52 47 4F 54 20 |.7%&..EQ CHRGOT |
00000540: 20 3D 24 37 39 20 20 20 20 20 3B 48 4F 4C 54 20 | =$79 ;HOLT |
00000550: 41 4B 54 55 45 4C 4C 45 53 20 5A 45 49 43 48 45 |AKTUELLES ZEICHE|
00000560: 4E 00 68 25 30 02 2E 45 51 20 54 45 58 54 50 54 |N.h%0..EQ TEXTPT|
00000570: 52 20 3D 24 37 41 20 20 20 20 20 3B 50 4F 49 4E |R =$7A ;POIN|
00000580: 54 45 52 20 41 55 46 20 42 41 53 49 43 2D 54 45 |TER AUF BASIC-TE|
00000590: 58 54 00 6E 25 3A 02 3B 00 91 25 44 02 3B 2A 50 |XT.n%:.;..%D.;*P|
000005A0: 4F 49 4E 54 45 52 20 41 55 46 20 53 54 52 49 4E |OINTER AUF STRIN|
000005B0: 47 44 45 53 43 52 49 50 54 2E 2A 00 CC 25 4E 02 |GDESCRIPT.*..%N.|
000005C0: 2E 45 51 20 53 55 43 48 20 20 20 3D 24 41 37 20 |.EQ SUCH =$A7 |
000005D0: 20 20 20 20 20 3B 50 54 52 2E 41 41 55 46 20 44 | ;PTR.AAUF D|
000005E0: 45 53 43 52 2E 56 2E 53 55 43 48 4B 52 49 54 2E |ESCR.V.SUCHKRIT.|
000005F0: 2D 53 54 52 49 4E 47 00 07 26 58 02 2E 45 51 20 |-STRING..&X..EQ |
00000600: 45 4E 44 45 20 20 20 3D 24 41 39 20 20 20 20 20 |ENDE =$A9 |
00000610: 20 3B 50 54 52 2E 41 55 46 20 44 45 53 43 52 2E | ;PTR.AUF DESCR.|
00000620: 56 2E 41 52 52 41 59 53 54 52 49 4E 47 28 4D 49 |V.ARRAYSTRING(MI|
00000630: 4E 29 00 42 26 62 02 2E 45 51 20 53 54 41 52 54 |N).B&b..EQ START|
00000640: 20 20 3D 24 41 42 20 20 20 20 20 20 3B 50 54 52 | =$AB ;PTR|
00000650: 2E 41 55 46 20 44 45 53 43 52 2E 56 2E 41 52 52 |.AUF DESCR.V.ARR|
00000660: 41 59 53 54 52 49 4E 47 28 4D 41 58 29 00 74 26 |AYSTRING(MAX).t&|
00000670: 6C 02 2E 45 51 20 49 4E 54 56 41 52 20 3D 24 34 |l..EQ INTVAR =$4|
00000680: 37 20 20 20 20 20 20 3B 50 54 52 2E 41 55 46 20 |7 ;PTR.AUF |
00000690: 49 4E 54 45 47 45 52 56 41 52 49 41 42 4C 45 00 |INTEGERVARIABLE.|
000006A0: 7A 26 76 02 3B 00 93 26 80 02 3B 2A 53 54 52 49 |z&v.;..&..;*STRI|
000006B0: 4E 47 44 45 53 52 49 50 54 4F 52 45 4E 2A 00 CA |NGDESRIPTOREN*..|
000006C0: 26 8A 02 2E 45 51 20 53 55 43 48 44 45 53 20 3D |&...EQ SUCHDES =|
000006D0: 24 42 34 20 20 20 20 20 3B 44 45 53 43 52 2E 20 |$B4 ;DESCR. |
000006E0: 44 45 53 20 53 55 43 48 4B 52 49 54 2E 2D 53 54 |DES SUCHKRIT.-ST|
000006F0: 52 49 4E 47 53 00 0B 27 94 02 2E 45 51 20 41 4B |RINGS..'...EQ AK|
00000700: 54 44 45 53 20 20 3D 24 46 42 20 20 20 20 20 3B |TDES =$FB ;|
00000710: 44 44 45 53 43 52 2E 20 44 45 53 20 41 4B 54 55 |DDESCR. DES AKTU|
00000720: 45 4C 4C 45 4E 20 56 45 52 47 4C 45 49 43 48 53 |ELLEN VERGLEICHS|
00000730: 53 54 52 49 4E 47 53 00 11 27 9E 02 3B 00 28 27 |STRINGS..'..;.('|
00000740: A8 02 3B 2A 53 4F 4E 53 54 49 47 45 20 4C 41 42 |..;*SONSTIGE LAB|
00000750: 20 45 4C 2A 00 62 27 B2 02 2E 45 51 20 4C 45 4E | EL*.b'...EQ LEN|
00000760: 46 4C 41 47 20 20 3D 24 30 33 33 34 20 20 3B 24 |FLAG =$0334 ;$|
00000770: 30 30 3D 56 4F 4C 4C 56 45 52 47 4C 45 49 43 48 |00=VOLLVERGLEICH|
00000780: 3B 24 46 46 3D 41 42 4B 55 45 52 5A 45 4E 00 8D |;$FF=ABKUERZEN..|
00000790: 27 BC 02 2E 45 51 20 50 52 55 45 46 4C 45 4E 20 |'...EQ PRUEFLEN |
000007A0: 3D 24 30 33 33 35 20 20 3B 56 45 52 47 4C 45 49 |=$0335 ;VERGLEI|
000007B0: 43 48 53 4C 41 45 4E 47 45 00 CB 27 C6 02 2E 45 |CHSLAENGE..'...E|
000007C0: 51 20 45 4C 45 4D 4E 52 20 20 20 3D 24 30 33 33 |Q ELEMNR =$033|
000007D0: 36 20 20 3B 4E 52 2E 44 45 53 20 41 4B 54 55 45 |6 ;NR.DES AKTUE|
000007E0: 45 4C 4C 45 4E 20 56 45 52 47 4C 45 49 43 48 53 |ELLEN VERGLEICHS|
000007F0: 53 54 52 49 4E 47 53 00 E3 27 D0 02 2E 45 51 20 |STRINGS..'...EQ |
00000800: 48 45 4C 50 20 20 20 20 20 3D 24 30 33 33 38 00 |HELP =$0338.|
00000810: E9 27 DA 02 3B 00 EF 27 E4 02 3B 00 F5 27 EE 02 |.'..;..'..;..'..|
00000820: 3B 00 12 28 F8 02 3B 2A 2A 2A 2A 2A 2A 2A 2A 2A |;..(..;*********|
00000830: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 00 2F |**************./|
00000840: 28 02 03 3B 2A 2A 2A 20 49 4E 49 54 49 41 4C 49 |(..;*** INITIALI|
00000850: 53 49 45 52 55 4E 47 20 2A 2A 2A 00 4C 28 0C 03 |SIERUNG ***.L(..|
00000860: 3B 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |;***************|
00000870: 2A 2A 2A 2A 2A 2A 2A 2A 00 52 28 16 03 3B 00 76 |********.R(..;.v|
00000880: 28 20 03 3B 2A 50 4F 49 4E 54 45 52 20 41 55 46 |( .;*POINTER AUF|
00000890: 20 53 55 43 48 4B 52 49 54 2E 2D 44 45 53 43 52 | SUCHKRIT.-DESCR|
000008A0: 2E 2A 00 98 28 2A 03 20 4A 53 52 43 48 4B 4B 4F |.*..(*. JSRCHKKO|
000008B0: 4D 3B 53 55 43 48 28 2B 31 29 20 3D 20 50 4F 49 |M;SUCH(+1) = POI|
000008C0: 4E 54 45 52 00 B8 28 34 03 20 4A 53 52 47 45 54 |NTER..(4. JSRGET|
000008D0: 50 4F 53 3B 41 55 46 20 44 45 53 43 52 49 50 54 |POS;AUF DESCRIPT|
000008E0: 4F 52 45 4E 00 DA 28 3E 03 20 53 54 41 53 55 43 |OREN..(>. STASUC|
000008F0: 48 3B 44 45 53 20 53 55 43 48 4B 52 49 54 2E 53 |H;DES SUCHKRIT.S|
00000900: 54 52 49 4E 47 53 00 E9 28 48 03 20 53 54 59 53 |TRINGS..(H. STYS|
00000910: 55 43 48 2B 31 00 EF 28 52 03 3B 00 F5 28 5C 03 |UCH+1..(R.;..(\.|
00000920: 3B 00 13 29 66 03 3B 2A 53 55 43 48 44 45 53 43 |;..)f.;*SUCHDESC|
00000930: 52 49 50 54 4F 52 45 4E 20 48 4F 4C 45 4E 2A 00 |RIPTOREN HOLEN*.|
00000940: 3B 29 70 03 20 4C 44 59 23 24 30 32 3B 53 55 43 |;)p. LDY#$02;SUC|
00000950: 48 44 45 53 28 2B 32 29 20 3D 20 44 45 53 43 52 |HDES(+2) = DESCR|
00000960: 49 50 54 4F 52 45 4E 00 68 29 7A 03 47 45 54 53 |IPTOREN.h)z.GETS|
00000970: 55 43 48 20 4C 44 41 28 53 55 43 48 29 2C 59 3B |UCH LDA(SUCH),Y;|
00000980: 44 45 53 20 53 55 43 48 4B 52 49 54 2E 53 54 52 |DES SUCHKRIT.STR|
00000990: 49 4E 47 53 00 7A 29 84 03 20 53 54 41 53 55 43 |INGS.z).. STASUC|
000009A0: 48 44 45 53 2C 59 00 83 29 8E 03 20 44 45 59 00 |HDES,Y..).. DEY.|
000009B0: 93 29 98 03 20 42 50 4C 47 45 54 53 55 43 48 00 |.).. BPLGETSUCH.|
000009C0: 99 29 A2 03 3B 00 9F 29 AC 03 3B 00 BA 29 B6 03 |.)..;..)..;..)..|
000009D0: 3B 2A 45 4C 45 4D 45 4E 54 4E 55 4D 4D 45 52 20 |;*ELEMENTNUMMER |
000009E0: 48 4F 4C 45 4E 2A 00 CA 29 C0 03 20 4C 44 41 54 |HOLEN*..).. LDAT|
000009F0: 45 58 54 50 54 52 00 D3 29 CA 03 20 50 48 41 00 |EXTPTR..).. PHA.|
00000A00: E5 29 D4 03 20 4C 44 41 54 45 58 54 50 54 52 2B |.).. LDATEXTPTR+|
00000A10: 31 00 EE 29 DE 03 20 50 48 41 00 F4 29 E8 03 3B |1..).. PHA..)..;|
00000A20: 00 1E 2A F2 03 56 4F 52 57 41 45 52 54 53 20 4A |..*..VORWAERTS J|
00000A30: 53 52 43 48 52 47 45 54 3B 45 4C 45 4D 4E 52 28 |SRCHRGET;ELEMNR(|
00000A40: 2B 31 29 3D 4E 55 4D 4D 45 52 00 40 2A FC 03 20 |+1)=NUMMER.@*.. |
00000A50: 43 4D 50 23 22 28 22 3B 44 45 52 20 41 52 52 41 |CMP#"(";DER ARRA|
00000A60: 59 55 4E 54 45 52 47 52 45 4E 5A 45 00 52 2A 06 |YUNTERGRENZE.R*.|
00000A70: 04 20 42 4E 45 56 4F 52 57 41 45 52 54 53 00 58 |. BNEVORWAERTS.X|
00000A80: 2A 10 04 3B 00 67 2A 1A 04 20 4A 53 52 46 52 4D |*..;.g*.. JSRFRM|
00000A90: 4E 55 4D 00 76 2A 24 04 20 4A 53 52 41 44 52 46 |NUM.v*$. JSRADRF|
00000AA0: 4F 52 00 85 2A 2E 04 20 53 54 59 45 4C 45 4D 4E |OR..*.. STYELEMN|
00000AB0: 52 00 96 2A 38 04 20 53 54 41 45 4C 45 4D 4E 52 |R..*8. STAELEMNR|
00000AC0: 2B 31 00 9C 2A 42 04 3B 00 A5 2A 4C 04 20 50 4C |+1..*B.;..*L. PL|
00000AD0: 41 00 B7 2A 56 04 20 53 54 41 54 45 58 54 50 54 |A..*V. STATEXTPT|
00000AE0: 52 2B 31 00 C0 2A 60 04 20 50 4C 41 00 D0 2A 6A |R+1..*`. PLA..*j|
00000AF0: 04 20 53 54 41 54 45 58 54 50 54 52 00 D6 2A 74 |. STATEXTPTR..*t|
00000B00: 04 3B 00 DC 2A 7E 04 3B 00 02 2B 88 04 3B 2A 50 |.;..*~.;..+..;*P|
00000B10: 4F 49 4E 54 45 52 20 41 55 46 20 53 54 52 49 4E |OINTER AUF STRIN|
00000B20: 47 44 45 53 43 52 2E 20 48 4F 4C 45 4E 2A 00 11 |GDESCR. HOLEN*..|
00000B30: 2B 92 04 20 4A 53 52 43 48 4B 4B 4F 4D 00 36 2B |+.. JSRCHKKOM.6+|
00000B40: 9C 04 20 4A 53 52 47 45 54 50 4F 53 3B 53 54 41 |.. JSRGETPOS;STA|
00000B50: 52 54 28 2B 31 29 3D 50 4F 49 4E 54 45 52 20 41 |RT(+1)=POINTER A|
00000B60: 55 46 00 55 2B A6 04 20 53 54 41 53 54 41 52 54 |UF.U+.. STASTART|
00000B70: 3B 44 45 53 43 52 49 50 54 4F 52 45 4E 20 56 4F |;DESCRIPTOREN VO|
00000B80: 4E 00 76 2B B0 04 20 53 54 59 53 54 41 52 54 2B |N.v+.. STYSTART+|
00000B90: 31 3B 41 52 52 41 59 53 54 52 49 4E 47 28 4D 49 |1;ARRAYSTRING(MI|
00000BA0: 4E 29 00 7C 2B BA 04 3B 00 A0 2B C4 04 20 4A 53 |N).|+..;..+.. JS|
00000BB0: 52 43 48 4B 4B 4F 4D 3B 45 4E 44 45 28 2B 31 29 |RCHKKOM;ENDE(+1)|
00000BC0: 3D 50 4F 49 4E 54 45 52 20 41 55 46 00 C0 2B CE |=POINTER AUF..+.|
00000BD0: 04 20 4A 53 52 47 45 54 50 4F 53 3B 44 45 53 43 |. JSRGETPOS;DESC|
00000BE0: 52 49 50 54 4F 52 45 4E 20 56 4F 4E 00 DE 2B D8 |RIPTOREN VON..+.|
00000BF0: 04 20 53 54 41 45 4E 44 45 3B 41 52 52 41 59 53 |. STAENDE;ARRAYS|
00000C00: 54 52 49 4E 47 28 4D 41 58 29 00 ED 2B E2 04 20 |TRING(MAX)..+.. |
00000C10: 53 54 59 45 4E 44 45 2B 31 00 F3 2B EC 04 3B 00 |STYENDE+1..+..;.|
00000C20: F9 2B F6 04 3B 00 FF 2B 00 05 3B 00 1A 2C 0A 05 |.+..;..+..;..,..|
00000C30: 3B 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |;***************|
00000C40: 2A 2A 2A 2A 2A 2A 00 35 2C 14 05 3B 2A 2A 2A 20 |******.5,..;*** |
00000C50: 48 41 55 50 54 50 52 4F 47 52 41 4D 4D 20 2A 2A |HAUPTPROGRAMM **|
00000C60: 2A 00 50 2C 1E 05 3B 2A 2A 2A 2A 2A 2A 2A 2A 2A |*.P,..;*********|
00000C70: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 00 56 2C 28 |************.V,(|
00000C80: 05 3B 00 78 2C 32 05 3B 2A 56 45 52 47 4C 45 49 |.;.x,2.;*VERGLEI|
00000C90: 43 48 53 4C 41 45 4E 47 45 20 45 52 4D 49 54 54 |CHSLAENGE ERMITT|
00000CA0: 45 4C 4E 2A 00 A2 2C 3C 05 20 4C 44 41 23 24 30 |ELN*..,<. LDA#$0|
00000CB0: 30 3B 4C 45 4E 46 4C 41 47 3A 20 24 30 30 3D 4B |0;LENFLAG: $00=K|
00000CC0: 45 49 4E 20 41 42 4B 55 45 52 5A 45 4E 2C 00 C0 |EIN ABKUERZEN,..|
00000CD0: 2C 46 05 20 53 54 41 4C 45 4E 46 4C 41 47 3B 24 |,F. STALENFLAG;$|
00000CE0: 46 46 3D 41 42 4B 55 45 52 5A 45 4E 00 E8 2C 50 |FF=ABKUERZEN..,P|
00000CF0: 05 20 4C 44 59 53 55 43 48 44 45 53 3B 50 52 55 |. LDYSUCHDES;PRU|
00000D00: 45 46 4C 45 4E 3A 20 45 4E 54 48 41 45 4C 54 20 |EFLEN: ENTHAELT |
00000D10: 42 45 49 4D 00 07 2D 5A 05 20 53 54 59 50 52 55 |BEIM..-Z. STYPRU|
00000D20: 45 46 4C 45 4E 3B 41 42 4B 55 45 52 5A 45 4E 20 |EFLEN;ABKUERZEN |
00000D30: 44 49 45 00 1F 2D 64 05 20 44 45 59 3B 53 54 52 |DIE..-d. DEY;STR|
00000D40: 49 4E 47 4C 41 45 4E 47 45 2D 31 00 45 2D 6E 05 |INGLAENGE-1.E-n.|
00000D50: 20 4C 44 41 28 53 55 43 48 44 45 53 2B 31 29 2C | LDA(SUCHDES+1),|
00000D60: 59 3B 28 4F 48 4E 45 22 2A 22 29 2C 53 4F 4E 53 |Y;(OHNE"*"),SONS|
00000D70: 54 00 69 2D 78 05 20 43 4D 50 23 22 2A 22 3B 44 |T.i-x. CMP#"*";D|
00000D80: 49 45 20 45 43 48 54 45 20 53 54 52 49 4E 47 4C |IE ECHTE STRINGL|
00000D90: 41 45 4E 47 45 00 8B 2D 82 05 20 42 4E 45 47 45 |AENGE..-.. BNEGE|
00000DA0: 54 44 45 53 3B 56 45 52 47 4C 45 49 43 48 20 50 |TDES;VERGLEICH P|
00000DB0: 4F 53 49 54 49 56 2C 00 AD 2D 8C 05 20 44 45 43 |OSITIV,..-.. DEC|
00000DC0: 4C 45 4E 46 4C 41 47 3B 57 45 4E 4E 20 22 2A 22 |LENFLAG;WENN "*"|
00000DD0: 20 45 49 4E 5A 49 47 45 53 00 CA 2D 96 05 20 44 | EINZIGES..-.. D|
00000DE0: 45 43 50 52 55 45 46 4C 45 4E 3B 5A 45 49 43 48 |ECPRUEFLEN;ZEICH|
00000DF0: 45 4E 20 49 53 54 00 D0 2D A0 05 3B 00 D6 2D AA |EN IST..-..;..-.|
00000E00: 05 3B 00 FA 2D B4 05 3B 2A 41 4B 54 55 45 4C 4C |.;..-..;*AKTUELL|
00000E10: 45 4E 20 53 54 52 49 4E 47 44 45 53 43 52 2E 20 |EN STRINGDESCR. |
00000E20: 48 4F 4C 45 4E 2A 00 25 2E BE 05 47 45 54 44 45 |HOLEN*.%...GETDE|
00000E30: 53 20 4C 44 59 23 24 30 32 3B 41 4B 54 44 45 53 |S LDY#$02;AKTDES|
00000E40: 28 2B 32 29 3D 44 45 53 43 52 49 50 54 4F 52 45 |(+2)=DESCRIPTORE|
00000E50: 4E 00 53 2E C8 05 47 45 54 44 45 53 31 20 4C 44 |N.S...GETDES1 LD|
00000E60: 41 28 53 54 41 52 54 29 2C 59 3B 56 4F 4E 20 41 |A(START),Y;VON A|
00000E70: 52 52 41 59 53 54 52 49 4E 47 28 4D 49 4E 29 00 |RRAYSTRING(MIN).|
00000E80: 64 2E D2 05 20 53 54 41 41 4B 54 44 45 53 2C 59 |d... STAAKTDES,Y|
00000E90: 00 6D 2E DC 05 20 44 45 59 00 7D 2E E6 05 20 42 |.m... DEY.}... B|
00000EA0: 50 4C 47 45 54 44 45 53 31 00 83 2E F0 05 3B 00 |PLGETDES1.....;.|
00000EB0: 89 2E FA 05 3B 00 A7 2E 04 06 3B 2A 53 4F 4E 44 |....;.....;*SOND|
00000EC0: 45 52 46 41 45 4C 4C 45 20 42 45 48 41 4E 44 45 |ERFAELLE BEHANDE|
00000ED0: 4C 4E 2A 00 B8 2E 0E 06 20 4C 44 41 50 52 55 45 |LN*..... LDAPRUE|
00000EE0: 46 4C 45 4E 00 DD 2E 18 06 20 20 42 45 51 50 4F |FLEN..... BEQPO|
00000EF0: 53 49 54 49 56 3B 31 29 56 45 52 47 4C 45 49 43 |SITIV;1)VERGLEIC|
00000F00: 48 20 50 4F 53 49 54 49 56 2C 00 0E 2F 22 06 3B |H POSITIV,../".;|
00000F10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000F20: 20 20 20 20 20 20 20 20 20 57 45 4E 4E 20 50 52 | WENN PR|
00000F30: 55 45 46 4C 41 45 4E 47 45 3D 30 00 1D 2F 2C 06 |UEFLAENGE=0../,.|
00000F40: 20 43 4D 50 41 4B 54 44 45 53 00 3B 2F 36 06 20 | CMPAKTDES.;/6. |
00000F50: 50 48 50 3B 32 29 56 45 52 47 4C 45 49 43 48 20 |PHP;2)VERGLEICH |
00000F60: 4E 45 47 41 54 49 56 2C 00 5E 2F 40 06 20 4C 44 |NEGATIV,.^/@. LD|
00000F70: 41 4C 45 4E 46 4C 41 47 3B 57 45 4E 4E 20 22 2A |ALENFLAG;WENN "*|
00000F80: 22 20 45 4E 54 48 41 4C 54 45 4E 00 82 2F 4A 06 |" ENTHALTEN../J.|
00000F90: 20 42 45 51 4E 4F 53 54 45 52 4E 3B 55 4E 44 20 | BEQNOSTERN;UND |
00000FA0: 56 45 52 4C 45 49 43 48 53 53 54 52 49 4E 47 00 |VERLEICHSSTRING.|
00000FB0: 9D 2F 54 06 20 50 4C 50 3B 4E 49 43 48 54 20 4C |./T. PLP;NICHT L|
00000FC0: 41 45 4E 47 45 52 20 41 4C 53 00 D0 2F 5E 06 3B |AENGER ALS../^.;|
00000FD0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000FE0: 20 20 20 20 20 20 20 20 20 53 55 43 48 4B 52 49 | SUCHKRI|
00000FF0: 54 45 52 49 55 4D 53 53 54 52 49 4E 47 00 F3 2F |TERIUMSSTRING../|
00001000: 68 06 20 42 43 53 4E 45 58 54 53 54 52 3B 55 2E |h. BCSNEXTSTR;U.|
00001010: 41 4B 54 55 45 4C 4C 45 4D 20 53 54 52 49 4E 47 |AKTUELLEM STRING|
00001020: 00 03 30 72 06 20 42 43 43 50 52 55 45 46 45 4E |..0r. BCCPRUEFEN|
00001030: 00 36 30 7C 06 3B 20 20 20 20 20 20 20 20 20 20 |.60|.; |
00001040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 33 | 3|
00001050: 29 56 45 52 47 4C 45 49 43 48 20 4E 45 47 41 54 |)VERGLEICH NEGAT|
00001060: 49 56 2C 00 5E 30 86 06 4E 4F 53 54 45 52 4E 20 |IV,.^0..NOSTERN |
00001070: 50 4C 50 3B 57 45 4E 4E 20 4B 45 49 4E 20 22 2A |PLP;WENN KEIN "*|
00001080: 22 20 45 4E 54 48 41 4C 54 45 4E 00 80 30 90 06 |" ENTHALTEN..0..|
00001090: 20 42 4E 45 4E 45 58 54 53 54 52 3B 55 4E 44 20 | BNENEXTSTR;UND |
000010A0: 53 54 52 49 4E 47 4C 41 45 4E 47 45 4E 00 AE 30 |STRINGLAENGEN..0|
000010B0: 9A 06 3B 20 20 20 20 20 20 20 20 20 20 20 20 20 |..; |
000010C0: 20 20 20 20 20 20 20 20 20 20 20 20 55 4E 54 45 | UNTE|
000010D0: 52 53 43 48 49 45 44 4C 49 43 48 00 B4 30 A4 06 |RSCHIEDLICH..0..|
000010E0: 3B 00 CB 30 AE 06 3B 2A 53 54 52 49 4E 47 56 45 |;..0..;*STRINGVE|
000010F0: 52 47 4C 45 49 43 48 2A 00 ED 30 B8 06 50 52 55 |RGLEICH*..0..PRU|
00001100: 45 46 45 4E 20 4C 44 59 23 24 30 30 3B 5A 45 49 |EFEN LDY#$00;ZEI|
00001110: 43 48 45 4E 57 45 49 53 45 52 00 1E 31 C2 06 50 |CHENWEISER..1..P|
00001120: 52 55 45 46 4C 4F 4F 50 50 20 4C 44 41 28 53 55 |RUEFLOOPP LDA(SU|
00001130: 43 48 44 45 53 2B 31 29 2C 59 3B 56 45 52 47 4C |CHDES+1),Y;VERGL|
00001140: 45 49 43 48 20 42 49 53 20 5A 55 52 00 37 31 CC |EICH BIS ZUR.71.|
00001150: 06 20 43 4D 50 23 22 3F 22 3B 50 52 55 45 46 4C |. CMP#"?";PRUEFL|
00001160: 41 45 4E 47 45 00 5D 31 D6 06 20 20 42 45 51 4E |AENGE.]1.. BEQN|
00001170: 45 58 54 43 48 41 52 3B 28 22 3F 22 20 49 53 54 |EXTCHAR;("?" IST|
00001180: 20 49 4D 4D 45 52 20 4F 4B 41 59 29 00 7C 31 E0 | IMMER OKAY).|1.|
00001190: 06 20 43 4D 50 28 41 4B 54 44 45 53 2B 31 29 2C |. CMP(AKTDES+1),|
000011A0: 59 3B 56 45 52 47 4C 2E 49 53 54 00 9A 31 EA 06 |Y;VERGL.IST..1..|
000011B0: 20 42 4E 45 4E 45 58 54 53 54 52 3B 4E 45 47 41 | BNENEXTSTR;NEGA|
000011C0: 54 49 56 2C 20 57 45 4E 4E 00 BD 31 F4 06 4E 45 |TIV, WENN..1..NE|
000011D0: 58 54 43 48 41 52 20 49 4E 59 3B 45 49 4E 20 5A |XTCHAR INY;EIN Z|
000011E0: 45 49 43 48 45 4E 20 4E 49 43 48 54 00 DD 31 FE |EICHEN NICHT..1.|
000011F0: 06 20 43 50 59 50 52 55 45 46 4C 45 4E 3B 55 45 |. CPYPRUEFLEN;UE|
00001200: 42 45 52 45 49 4E 53 54 49 4D 4D 54 00 EF 31 08 |BEREINSTIMMT..1.|
00001210: 07 20 42 43 43 50 52 55 45 46 4C 4F 4F 50 00 08 |. BCCPRUEFLOOP..|
00001220: 32 12 07 50 4F 53 42 52 41 4E 43 48 20 42 45 51 |2..POSBRANCH BEQ|
00001230: 50 4F 53 49 54 49 56 00 0E 32 1C 07 3B 00 14 32 |POSITIV..2..;..2|
00001240: 26 07 3B 00 38 32 30 07 3B 2A 50 4F 49 4E 54 45 |&.;.820.;*POINTE|
00001250: 52 20 41 55 46 20 4E 45 58 54 53 54 52 49 4E 47 |R AUF NEXTSTRING|
00001260: 44 45 53 43 52 2E 2A 00 4D 32 3A 07 4E 45 58 54 |DESCR.*.M2:.NEXT|
00001270: 53 54 52 20 4C 44 41 53 54 41 52 54 00 62 32 44 |STR LDASTART.b2D|
00001280: 07 20 43 4C 43 3B 50 4F 49 4E 54 45 52 20 41 55 |. CLC;POINTER AU|
00001290: 46 00 80 32 4E 07 20 41 44 43 23 24 30 33 3B 4E |F..2N. ADC#$03;N|
000012A0: 41 45 43 48 53 54 45 4E 20 53 54 52 49 4E 47 00 |AECHSTEN STRING.|
000012B0: A1 32 58 07 20 53 54 41 53 54 41 52 54 3B 53 45 |.2X. STASTART;SE|
000012C0: 54 5A 45 4E 20 28 3D 41 4B 54 55 45 4C 4C 45 52 |TZEN (=AKTUELLER|
000012D0: 00 BB 32 62 07 20 42 43 43 49 4E 43 4E 52 3B 50 |..2b. BCCINCNR;P|
000012E0: 4F 49 4E 54 45 52 20 2B 33 29 00 CB 32 6C 07 20 |OINTER +3)..2l. |
000012F0: 49 4E 43 53 54 41 52 54 2B 31 00 D1 32 76 07 3B |INCSTART+1..2v.;|
00001300: 00 D7 32 80 07 3B 00 F7 32 8A 07 3B 2A 45 4C 45 |..2..;..2..;*ELE|
00001310: 4D 45 4E 54 4E 52 2E 49 4E 4B 52 45 4D 45 4E 54 |MENTNR.INKREMENT|
00001320: 49 45 52 45 4E 2A 00 0B 33 94 07 49 4E 43 4E 52 |IEREN*..3..INCNR|
00001330: 20 49 4E 43 45 4C 45 4D 4E 52 00 29 33 9E 07 20 | INCELEMNR.)3.. |
00001340: 42 4E 45 43 4F 4D 50 50 54 52 3B 45 4C 45 4D 45 |BNECOMPPTR;ELEME|
00001350: 4E 54 4E 52 2C 20 55 4D 00 48 33 A8 07 20 49 4E |NTNR, UM.H3.. IN|
00001360: 43 45 4C 45 4D 4E 52 2B 31 3B 45 49 4E 53 20 45 |CELEMNR+1;EINS E|
00001370: 52 48 4F 45 48 45 4E 00 4E 33 B2 07 3B 00 54 33 |RHOEHEN.N3..;.T3|
00001380: BC 07 3B 00 78 33 C6 07 3B 2A 50 4F 49 4E 54 45 |..;.x3..;*POINTE|
00001390: 52 20 4D 49 54 20 45 4E 44 45 20 56 45 52 47 4C |R MIT ENDE VERGL|
000013A0: 45 49 43 48 45 4E 2A 00 8F 33 D0 07 43 4F 4D 50 |EICHEN*..3..COMP|
000013B0: 50 54 52 20 4C 44 41 53 54 41 52 54 2B 31 00 B1 |PTR LDASTART+1..|
000013C0: 33 DA 07 20 43 4D 50 45 4E 44 45 2B 31 3B 53 55 |3.. CMPENDE+1;SU|
000013D0: 43 48 45 20 49 53 54 20 42 45 45 4E 44 45 54 2C |CHE IST BEENDET,|
000013E0: 00 D0 33 E4 07 20 42 43 43 47 45 54 44 45 53 3B |..3.. BCCGETDES;|
000013F0: 57 45 4E 4E 20 28 53 54 41 52 54 28 2B 31 29 00 |WENN (START(+1).|
00001400: EB 33 EE 07 20 4C 44 41 53 54 41 52 54 3B 47 52 |.3.. LDASTART;GR|
00001410: 4F 45 53 53 45 52 20 49 53 54 00 05 34 F8 07 20 |OESSER IST..4.. |
00001420: 43 4D 50 45 4E 44 45 3B 41 4C 53 20 45 4E 44 45 |CMPENDE;ALS ENDE|
00001430: 28 2B 31 29 00 14 34 02 08 20 42 43 43 47 45 54 |(+1)..4.. BCCGET|
00001440: 44 45 53 00 23 34 0C 08 20 42 45 51 47 45 54 44 |DES.#4.. BEQGETD|
00001450: 45 53 00 29 34 16 08 3B 00 2F 34 20 08 3B 00 49 |ES.)4..;./4 .;.I|
00001460: 34 2A 08 3B 2A 56 45 52 47 4C 45 49 43 48 20 4E |4*.;*VERGLEICH N|
00001470: 45 47 41 54 54 49 56 2A 00 5D 34 34 08 4E 45 47 |EGATTIV*.]44.NEG|
00001480: 41 54 49 56 20 4C 44 41 23 24 30 30 00 79 34 3E |ATIV LDA#$00.y4>|
00001490: 08 20 53 54 41 45 4C 45 4D 4E 52 3B 45 4C 45 4D |. STAELEMNR;ELEM|
000014A0: 45 4E 54 4E 52 2E 3D 30 00 8A 34 48 08 20 53 54 |ENTNR.=0..4H. ST|
000014B0: 41 45 4C 45 4D 4E 52 2B 31 00 90 34 52 08 3B 00 |AELEMNR+1..4R.;.|
000014C0: 96 34 5C 08 3B 00 AF 34 66 08 3B 2A 56 45 52 47 |.4\.;..4f.;*VERG|
000014D0: 4C 45 49 43 48 20 50 4F 53 49 54 49 56 2A 00 DD |LEICH POSITIV*..|
000014E0: 34 70 08 50 4F 53 49 54 49 56 20 4A 53 52 43 48 |4p.POSITIV JSRCH|
000014F0: 4B 4B 4F 4D 3B 50 4F 49 4E 54 45 52 20 41 55 46 |KKOM;POINTER AUF|
00001500: 20 49 4E 54 45 47 45 52 56 41 52 2E 00 02 35 7A | INTEGERVAR...5z|
00001510: 08 20 4A 53 52 47 45 54 50 4F 53 3B 4E 41 43 48 |. JSRGETPOS;NACH|
00001520: 20 49 4E 54 56 41 52 28 2B 31 29 20 48 4F 4C 45 | INTVAR(+1) HOLE|
00001530: 4E 00 08 35 84 08 3B 00 27 35 8E 08 20 4C 44 58 |N..5..;.'5.. LDX|
00001540: 45 4C 45 4D 4E 52 3B 45 4C 45 4D 45 4E 54 4E 52 |ELEMNR;ELEMENTNR|
00001550: 2E 4C 41 44 45 4E 00 38 35 98 08 20 4C 44 41 45 |.LADEN.85.. LDAE|
00001560: 4C 45 4D 4E 52 2B 31 00 3E 35 A2 08 3B 00 44 35 |LEMNR+1.>5..;.D5|
00001570: AC 08 3B 00 5F 35 B6 08 3B 2A 45 52 47 45 42 4E |..;._5..;*ERGEBN|
00001580: 49 49 53 20 55 45 42 45 52 47 45 42 45 4E 2A 00 |IIS UEBERGEBEN*.|
00001590: 70 35 C0 08 42 41 43 4B 20 4C 44 59 23 24 30 30 |p5..BACK LDY#$00|
000015A0: 00 8E 35 CA 08 20 53 54 41 28 49 4E 54 56 41 52 |..5.. STA(INTVAR|
000015B0: 29 2C 59 3B 45 4C 45 4D 45 4E 54 4E 52 2E 00 A7 |),Y;ELEMENTNR...|
000015C0: 35 D4 08 20 49 4E 59 3B 49 4E 20 44 49 45 20 49 |5.. INY;IN DIE I|
000015D0: 4E 54 45 47 45 52 2D 00 B9 35 DE 08 20 54 58 41 |NTEGER-..5.. TXA|
000015E0: 3B 56 41 52 49 41 42 4C 45 00 D5 35 E8 08 20 53 |;VARIABLE..5.. S|
000015F0: 54 41 28 49 4E 54 56 41 52 29 2C 59 3B 4B 4F 50 |TA(INTVAR),Y;KOP|
00001600: 49 45 52 45 4E 00 E7 35 F2 08 20 52 54 53 3B 3D |IEREN..5.. RTS;=|
00001610: 3E 20 42 41 53 49 43 00 00 00 |> BASIC... |
X...D.;*************************.. N.;*
SUCHROUTINE *.5 X.;* (C) SAID
BALOUI, 1987 *.T ..;********************
*****.Z ..;.` ..;.F .;.. ..;FUNKTION: S
UCHT IN EINEM STRING-.. ..;ARRAY DIE ANG
EG.ZEICHENKETTE.. ..;.V H.;AUFRUF: SYS X
,SUCHKRITERIUM,.. R.; SUCHE AB,SU
CHE BIS,..!..; UEBERGABEVAR.(INTE
GER).!!..;.E!..;SUCHKRIT.: -ABKUERZEN ("
MAI*").K!..; -MASKIEREN ("M?A?
ER")..!..; -KOMBINIEREN ("M?I*
")..!..;SUCHE AB/BIS: UNTERE/OBERE GREN-
..!..; ZE DES ZU DURCHSU-..
"".; SUCHENDEN ARRAYS.$",.;
(A$(10),A$(32)).J"6.;UEBER
G.VAR.: INTEGERVAR., IN DER.W"@.;
DER INDEX EINES GEFUNDENEN.."J.;
STRINGS UEBERGEBEN WIRD.G"T.;
(0=SUCHE ERFOLGLOS).M"^.;..
"H.;BSP.: SYS X,S$,A$(0),A$(100),P%..#R.
; DURCHSUCHT A$(0)-A$(100).<#|.;
NACH S$ U.UEBERGIBT RESULT.M#..;
IN P%.S#..;.Y#..;._#..;.R#..;**********
***..#..;*** LABEL ***..#B.;************
*..#L.; ;PROGRAMMSTAR
T.N#V..BA $C0C0.T#..;..#...EQ CHKKOM =$
AEFD ;LIEST KOMMA.&$...EQ GETBYT =$B7
9E ;LIEST 1-BYTE-WERT.Z$...EQ GETPOS
=$B08B ;HOLT POINTER AUF VARIABLE..$..
.EQ FRMNUM =$AD8A ;LIEST NU.AUSDRUCK
IN FAAC EIN.D$...EQ ADRFOR =$B7F7 ;WA
NDELT FAC NACH INTEGER..%...EQ CHRGET =
$73 ;INKREM.TEXTPTR U.HOLT AKTUELLES
ZEICHEN.7%&..EQ CHRGOT =$79 ;HOLT
AKTUELLES ZEICHEN.H%0..EQ TEXTPTR =$7A
;POINTER AUF BASIC-TEXT.N%:.;..%D.;*P
OINTER AUF STRINGDESCRIPT.*.L%N..EQ SUCH
=$A7 ;PTR.AAUF DESCR.V.SUCHKRIT.
-STRING..&X..EQ ENDE =$A9 ;PTR.AU
F DESCR.V.ARRAYSTRING(MIN).B&B..EQ START
=$AB ;PTR.AUF DESCR.V.ARRAYSTRING
(MAX).T&L..EQ INTVAR =$47 ;PTR.AUF
INTEGERVARIABLE.Z&V.;..&..;*STRINGDESRIP
TOREN*.J&...EQ SUCHDES =$B4 ;DESCR.
DES SUCHKRIT.-STRINGS..'...EQ AKTDES =$
FB ;DDESCR. DES AKTUELLEN VERGLEICHS
STRINGS..'..;.('..;*SONSTIGE LAB EL*.B'.
..EQ LENFLAG =$0334 ;$00=VOLLVERGLEICH
;$FF=ABKUERZEN..'...EQ PRUEFLEN =$0335
;VERGLEICHSLAENGE.K'F..EQ ELEMNR =$033
6 ;NR.DES AKTUEELLEN VERGLEICHSSTRINGS.
.'P..EQ HELP =$0338..'Z.;..'..;..'..
;..(..;***********************./(..;***
INITIALISIERUNG ***.L(..;***************
********.R(..;.V( .;*POINTER AUF SUCHKRI
T.-DESCR.*..(*. JSRCHKKOM;SUCH(+1) = POI
NTER..(4. JSRGETPOS;AUF DESCRIPTOREN.Z(>
. STASUCH;DES SUCHKRIT.STRINGS..(H. STYS
UCH+1..(R.;..(\.;..)F.;*SUCHDESCRIPTOREN
HOLEN*.;)P. LDY#$02;SUCHDES(+2) = DESCR
IPTOREN.H)Z.GETSUCH LDA(SUCH),Y;DES SUCH
KRIT.STRINGS.Z).. STASUCHDES,Y..).. DEY.
.).. BPLGETSUCH..)..;..)..;..)..;*ELEMEN
TNUMMER HOLEN*.J).. LDATEXTPTR.S)J. PHA.
.)T. LDATEXTPTR+1..).. PHA..)..;..*..VOR
WAERTS JSRCHRGET;ELEMNR(+1)=NUMMER.@*..
CMP#"(";DER ARRAYUNTERGRENZE.R*.. BNEVOR
WAERTS.X*..;.G*.. JSRFRMNUM.V*$. JSRADRF
OR..*.. STYELEMNR..*8. STAELEMNR+1..*B.;
..*L. PLA..*V. STATEXTPTR+1..*`. PLA.P*J
. STATEXTPTR.V*T.;..*~.;..+..;*POINTER A
UF STRINGDESCR. HOLEN*..+.. JSRCHKKOM.6+
.. JSRGETPOS;START(+1)=POINTER AUF.U+..
STASTART;DESCRIPTOREN VON.V+.. STYSTART+
1;ARRAYSTRING(MIN).|+..;. +D. JSRCHKKOM;
ENDE(+1)=POINTER AUF..+N. JSRGETPOS;DESC
RIPTOREN VON..+X. STAENDE;ARRAYSTRING(MA
X)..+.. STYENDE+1..+..;..+..;..+..;..,..
;*********************.5,..;*** HAUPTPRO
GRAMM ***.P,..;*********************.V,(
.;.X,2.;*VERGLEICHSLAENGE ERMITTELN*..,<
. LDA#$00;LENFLAG: $00=KEIN ABKUERZEN,..
,F. STALENFLAG;$FF=ABKUERZEN..,P. LDYSUC
HDES;PRUEFLEN: ENTHAELT BEIM..-Z. STYPRU
EFLEN;ABKUERZEN DIE..-D. DEY;STRINGLAENG
E-1.E-N. LDA(SUCHDES+1),Y;(OHNE"*"),SONS
T.I-X. CMP#"*";DIE ECHTE STRINGLAENGE..-
.. BNEGETDES;VERGLEICH POSITIV,..-.. DEC
LENFLAG;WENN "*" EINZIGES.J-.. DECPRUEFL
EN;ZEICHEN IST.P- .;.V-..;..-..;*AKTUELL
EN STRINGDESCR. HOLEN*.%...GETDES LDY#$0
2;AKTDES(+2)=DESCRIPTOREN.S.H.GETDES1 LD
A(START),Y;VON ARRAYSTRING(MIN).D.R. STA
AKTDES,Y.M... DEY.}... BPLGETDES1.....;.
....;.....;*SONDERFAELLE BEHANDELN*.....
LDAPRUEFLEN..... BEQPOSITIV;1)VERGLEIC
H POSITIV,../".;
WENN PRUEFLAENGE=0../,. CMPAKTDES.;/6.
PHP;2)VERGLEICH NEGATIV,.^/@. LDALENFLAG
;WENN "*" ENTHALTEN../J. BEQNOSTERN;UND
VERLEICHSSTRING../T. PLP;NICHT LAENGER A
LS.P/^.; SUCHKRI
TERIUMSSTRING../H. BCSNEXTSTR;U.AKTUELLE
M STRING..0R. BCCPRUEFEN.60|.;
3)VERGLEICH NEGATIV,.^0..
NOSTERN PLP;WENN KEIN "*" ENTHALTEN..0..
BNENEXTSTR;UND STRINGLAENGEN..0..;
UNTERSCHIEDLICH..0..
;.K0..;*STRINGVERGLEICH*..0..PRUEFEN LDY
#$00;ZEICHENWEISER..1B.PRUEFLOOPP LDA(SU
CHDES+1),Y;VERGLEICH BIS ZUR.71L. CMP#"?
";PRUEFLAENGE.]1V. BEQNEXTCHAR;("?" IST
IMMER OKAY).|1.. CMP(AKTDES+1),Y;VERGL.
IST..1.. BNENEXTSTR;NEGATIV, WENN..1..NE
XTCHAR INY;EIN ZEICHEN NICHT..1.. CPYPRU
EFLEN;UEBEREINSTIMMT..1.. BCCPRUEFLOOP..
2..POSBRANCH BEQPOSITIV..2..;..2&.;.820.
;*POINTER AUF NEXTSTRINGDESCR.*.M2:.NEXT
STR LDASTART.B2D. CLC;POINTER AUF..2N. A
DC#$03;NAECHSTEN STRING..2X. STASTART;SE
TZEN (=AKTUELLER..2B. BCCINCNR;POINTER +
3).K2L. INCSTART+1.Q2V.;.W2..;..2..;*ELE
MENTNR.INKREMENTIEREN*..3..INCNR INCELEM
NR.)3.. BNECOMPPTR;ELEMENTNR, UM.H3.. IN
CELEMNR+1;EINS ERHOEHEN.N3..;.T3..;.X3F.
;*POINTER MIT ENDE VERGLEICHEN*..3P.COMP
PTR LDASTART+1..3Z. CMPENDE+1;SUCHE IST
BEENDET,.P3.. BCCGETDES;WENN (START(+1).
.3.. LDASTART;GROESSER IST..4.. CMPENDE;
ALS ENDE(+1)..4.. BCCGETDES.#4.. BEQGETD
ES.)4..;./4 .;.I4*.;*VERGLEICH NEGATTIV*
.]44.NEGATIV LDA#$00.Y4>. STAELEMNR;ELEM
ENTNR.=0..4H. STAELEMNR+1..4R.;..4\.;..4
F.;*VERGLEICH POSITIV*..4P.POSITIV JSRCH
KKOM;POINTER AUF INTEGERVAR...5Z. JSRGET
POS;NACH INTVAR(+1) HOLEN..5..;.'5.. LDX
ELEMNR;ELEMENTNR.LADEN.85.. LDAELEMNR+1.
>5..;.D5..;._5..;*ERGEBNIIS UEBERGEBEN*.
P5..BACK LDY#$00..5J. STA(INTVAR),Y;ELEM
ENTNR...5T. INY;IN DIE INTEGER-..5.. TXA
;VARIABLE.U5.. STA(INTVAR),Y;KOPIEREN..5
.. RTS;=> BASIC...
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL