T.STRING MAGIC.1
FILE INFORMATION
FILENAME(S): T.STRING MAGIC.1
FILE TYPE(S): PRG
FILE SIZE: 3.2K
FIRST SEEN: 2025-11-30 18:12:15
APPEARS ON: 1 disk(s)
FILE HASH
b6d15e757b41c0aa9e00659ab1fd76873f43472bb61fd16d4cea8104d9696139
FOUND ON DISKS (1 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| LOADSTAR 38 S 1 | T.STRING MAGIC.1 | PRG | Sailor, Ganheden | 29 | 16 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
00000000: 00 80 5E 55 3A 48 41 43 4B 45 52 0D 0D 0D 20 20 |..^U:HACKER... |
00000010: 20 20 20 20 20 20 20 20 D3 D4 D2 C9 CE C7 20 CD | ...... .|
00000020: C1 C7 C9 C3 C9 C1 CE 20 31 32 38 0D 20 20 20 20 |....... 128. |
00000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 42 59 | BY|
00000040: 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 C2 52 |. .R|
00000050: 55 43 45 20 CA 41 45 47 45 52 0D 0D C3 CF CD CD |UCE .AEGER......|
00000060: CF C4 CF D2 C5 20 CD C1 C7 C1 DA C9 CE C5 0D C1 |..... ..........|
00000070: 55 47 55 53 54 20 31 39 38 37 0D 0D 2A 2A 2A 2A |UGUST 1987..****|
00000080: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************|
00000090: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************|
000000A0: 2A 0D CE CF D4 C5 3A 20 C2 45 43 41 55 53 45 20 |*.....: .ECAUSE |
000000B0: 54 48 49 53 20 50 52 4F 47 52 41 4D 20 49 53 20 |THIS PROGRAM IS |
000000C0: 57 52 49 54 54 45 4E 0D 46 4F 52 20 54 48 45 20 |WRITTEN.FOR THE |
000000D0: C3 2D 31 32 38 2C 20 49 54 20 43 41 4E 4E 4F 54 |.-128, IT CANNOT|
000000E0: 20 42 45 20 52 55 4E 20 4C 49 4B 45 0D 4F 54 48 | BE RUN LIKE.OTH|
000000F0: 45 52 20 50 52 4F 47 52 41 4D 53 20 4F 4E 20 CC |ER PROGRAMS ON .|
00000100: CF C1 C4 D3 D4 C1 D2 2E 20 20 D4 4F 20 52 55 4E |........ .O RUN|
00000110: 0D 54 48 45 20 50 52 4F 47 52 41 4D 2C 20 50 52 |.THE PROGRAM, PR|
00000120: 45 53 53 20 54 48 45 20 31 32 38 27 53 20 D2 C5 |ESS THE 128'S ..|
00000130: D3 C5 D4 0D 42 55 54 54 4F 4E 20 54 4F 20 50 55 |....BUTTON TO PU|
00000140: 54 20 54 48 45 20 43 4F 4D 50 55 54 45 52 20 49 |T THE COMPUTER I|
00000150: 4E 54 4F 20 31 32 38 0D 4D 4F 44 45 2E 20 20 C1 |NTO 128.MODE. .|
00000160: 20 4D 45 4E 55 20 4F 46 20 41 4C 4C 20 31 32 38 | MENU OF ALL 128|
00000170: 20 50 52 4F 47 52 41 4D 53 20 4F 4E 0D D3 49 44 | PROGRAMS ON..ID|
00000180: 45 20 31 20 4F 46 20 54 48 45 20 44 49 53 4B 20 |E 1 OF THE DISK |
00000190: 57 49 4C 4C 20 42 45 20 44 49 53 50 4C 41 59 45 |WILL BE DISPLAYE|
000001A0: 44 2E 0D C3 48 4F 4F 53 45 20 54 48 45 20 50 52 |D...HOOSE THE PR|
000001B0: 4F 47 52 41 4D 20 59 4F 55 20 57 49 53 48 20 54 |OGRAM YOU WISH T|
000001C0: 4F 20 52 55 4E 0D 46 52 4F 4D 20 54 48 49 53 20 |O RUN.FROM THIS |
000001D0: 4D 45 4E 55 2E 0D 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |MENU..**********|
000001E0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************|
000001F0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 0D 0D 20 20 CF |***********.. .|
00000200: 46 54 45 4E 20 49 54 20 49 53 20 4E 45 43 45 53 |FTEN IT IS NECES|
00000210: 53 41 52 59 20 54 4F 20 41 4C 54 45 52 20 54 48 |SARY TO ALTER TH|
00000220: 45 0D 43 4F 4E 54 45 4E 54 53 20 4F 46 20 41 20 |E.CONTENTS OF A |
00000230: 46 49 4C 45 27 53 20 43 48 41 52 41 43 54 45 52 |FILE'S CHARACTER|
00000240: 0D 53 54 52 49 4E 47 53 20 49 4E 20 53 4F 4D 45 |.STRINGS IN SOME|
00000250: 20 57 41 59 2E 20 20 D9 4F 55 20 4D 49 47 48 54 | WAY. .OU MIGHT|
00000260: 20 4E 45 45 44 0D 54 4F 20 43 4F 4E 56 45 52 54 | NEED.TO CONVERT|
00000270: 20 D0 C5 D4 C1 D3 C3 C9 C9 20 54 4F 20 C1 D3 C3 | ........ TO ...|
00000280: C9 C9 20 42 45 46 4F 52 45 0D 53 45 4E 44 49 4E |.. BEFORE.SENDIN|
00000290: 47 20 41 20 46 49 4C 45 20 54 4F 20 41 20 4D 4F |G A FILE TO A MO|
000002A0: 44 45 4D 2C 20 46 4F 52 0D 45 58 41 4D 50 4C 45 |DEM, FOR.EXAMPLE|
000002B0: 2E 20 20 D9 4F 55 20 4D 49 47 48 54 20 57 41 4E |. .OU MIGHT WAN|
000002C0: 54 20 54 4F 20 43 48 41 4E 47 45 0D 54 48 45 20 |T TO CHANGE.THE |
000002D0: 43 4F 4C 4F 4E 53 20 4F 52 20 43 4F 4D 4D 41 53 |COLONS OR COMMAS|
000002E0: 20 49 4E 20 41 20 53 54 52 49 4E 47 20 54 4F 0D | IN A STRING TO.|
000002F0: 4F 54 48 45 52 20 43 48 41 52 41 43 54 45 52 53 |OTHER CHARACTERS|
00000300: 20 54 4F 20 41 56 4F 49 44 20 50 52 4F 42 4C 45 | TO AVOID PROBLE|
00000310: 4D 53 0D 57 49 54 48 20 C9 CE D0 D5 D4 20 53 54 |MS.WITH ..... ST|
00000320: 41 54 45 4D 45 4E 54 53 2E 20 20 D3 D4 D2 C9 CE |ATEMENTS. .....|
00000330: C7 0D CD C1 C7 C9 C3 C9 C1 CE 20 44 45 4D 4F 4E |.......... DEMON|
00000340: 53 54 52 41 54 45 53 20 45 49 47 48 54 20 52 4F |STRATES EIGHT RO|
00000350: 55 54 49 4E 45 53 0D 57 48 49 43 48 20 41 4C 54 |UTINES.WHICH ALT|
00000360: 45 52 20 43 48 41 52 41 43 54 45 52 20 53 54 52 |ER CHARACTER STR|
00000370: 49 4E 47 53 20 49 4E 0D 55 53 45 46 55 4C 20 57 |INGS IN.USEFUL W|
00000380: 41 59 53 2E 0D 0D C1 42 4F 55 54 20 54 48 45 20 |AYS....BOUT THE |
00000390: D0 52 4F 47 52 41 4D 0D 2D 2D 2D 2D 2D 2D 2D 2D |.ROGRAM.--------|
000003A0: 2D 2D 2D 2D 2D 2D 2D 2D 2D 0D 20 20 D4 48 45 20 |---------. .HE |
000003B0: D3 D4 D2 C9 CE C7 20 CD C1 C7 C9 C3 C9 C1 CE 20 |...... ........ |
000003C0: 52 4F 55 54 49 4E 45 53 20 41 52 45 0D 44 45 53 |ROUTINES ARE.DES|
000003D0: 49 47 4E 45 44 20 54 4F 20 42 45 20 55 53 45 44 |IGNED TO BE USED|
000003E0: 20 49 4E 20 59 4F 55 52 20 4F 57 4E 0D 50 52 4F | IN YOUR OWN.PRO|
000003F0: 47 52 41 4D 53 2E 20 20 C1 20 53 45 54 55 50 20 |GRAMS. . SETUP |
00000400: 53 55 42 52 4F 55 54 49 4E 45 20 28 4C 49 4E 45 |SUBROUTINE (LINE|
00000410: 53 0D 38 38 30 2D 39 34 30 20 49 4E 20 54 48 45 |S.880-940 IN THE|
00000420: 20 44 45 4D 4F 29 20 55 53 45 53 20 D0 CF C9 CE | DEMO) USES ....|
00000430: D4 C5 D2 20 54 4F 0D 46 49 4E 44 20 54 48 45 20 |... TO.FIND THE |
00000440: 4C 4F 43 41 54 49 4F 4E 20 4F 46 20 54 48 45 20 |LOCATION OF THE |
00000450: 53 54 52 49 4E 47 2E 20 20 D4 48 45 0D 53 45 54 |STRING. .HE.SET|
00000460: 55 50 20 52 4F 55 54 49 4E 45 20 50 4F 4B 45 53 |UP ROUTINE POKES|
00000470: 20 54 48 45 20 4C 45 4E 47 54 48 20 4F 46 20 54 | THE LENGTH OF T|
00000480: 48 45 0D 53 54 52 49 4E 47 20 28 C1 24 20 49 4E |HE.STRING (.$ IN|
00000490: 20 54 48 45 20 44 45 4D 4F 29 20 49 4E 54 4F 20 | THE DEMO) INTO |
000004A0: 24 C6 C4 20 28 32 35 33 0D 44 45 43 49 4D 41 4C |$.. (253.DECIMAL|
000004B0: 29 2C 20 41 4E 44 20 54 48 45 20 4C 4F 57 2D 42 |), AND THE LOW-B|
000004C0: 59 54 45 20 48 49 47 48 2D 42 59 54 45 0D 41 44 |YTE HIGH-BYTE.AD|
000004D0: 44 52 45 53 53 20 49 4E 54 4F 20 24 C6 C3 20 24 |DRESS INTO $.. $|
000004E0: C6 C4 20 28 32 35 31 2D 32 35 32 29 2E 0D D0 52 |.. (251-252)...R|
000004F0: 4F 47 52 41 4D 53 20 55 53 49 4E 47 20 D3 D4 D2 |OGRAMS USING ...|
00000500: C9 CE C7 20 CD C1 C7 C9 C3 C9 C1 CE 20 4D 55 53 |... ........ MUS|
00000510: 54 0D 41 4C 57 41 59 53 20 43 41 4C 4C 20 54 48 |T.ALWAYS CALL TH|
00000520: 45 20 53 45 54 55 50 20 52 4F 55 54 49 4E 45 2E |E SETUP ROUTINE.|
00000530: 20 20 C1 4C 4C 0D 4F 54 48 45 52 20 49 4E 46 4F | .LL.OTHER INFO|
00000540: 52 4D 41 54 49 4F 4E 20 D3 D4 D2 C9 CE C7 20 CD |RMATION ...... .|
00000550: C1 C7 C9 C3 C9 C1 CE 0D 4E 45 45 44 53 20 49 53 |........NEEDS IS|
00000560: 20 50 41 53 53 45 44 20 54 4F 20 49 54 20 57 48 | PASSED TO IT WH|
00000570: 45 4E 20 54 48 45 0D 4D 41 43 48 49 4E 45 20 4C |EN THE.MACHINE L|
00000580: 41 4E 47 55 41 47 45 20 52 4F 55 54 49 4E 45 20 |ANGUAGE ROUTINE |
00000590: 41 54 20 24 C6 C3 30 30 0D 28 36 34 35 31 32 29 |AT $..00.(64512)|
000005A0: 20 49 53 20 43 41 4C 4C 45 44 2E 0D 0D D4 48 45 | IS CALLED....HE|
000005B0: 20 D2 4F 55 54 49 4E 45 53 0D 2D 2D 2D 2D 2D 2D | .OUTINES.------|
000005C0: 2D 2D 2D 2D 2D 2D 0D CA 4F 42 20 30 20 2D 2D 20 |------..OB 0 -- |
000005D0: 43 4F 4E 56 45 52 54 53 20 C1 D3 C3 C9 C9 20 54 |CONVERTS ..... T|
000005E0: 4F 20 D0 C5 D4 C1 D3 C3 C9 C9 2E 0D D4 4F 20 55 |O ...........O U|
000005F0: 53 45 20 54 48 49 53 20 52 4F 55 54 49 4E 45 2C |SE THIS ROUTINE,|
00000600: 20 C7 CF D3 D5 C2 20 54 48 45 20 53 45 54 55 50 | ..... THE SETUP|
00000610: 0D 52 4F 55 54 49 4E 45 2C 20 54 48 45 4E 20 49 |.ROUTINE, THEN I|
00000620: 4E 43 4C 55 44 45 20 54 48 45 20 4C 49 4E 45 0D |NCLUDE THE LINE.|
00000630: 0D 20 20 20 20 20 20 20 C2 C1 CE CB 20 31 20 3A |. .... 1 :|
00000640: 20 D3 D9 D3 20 28 36 34 35 31 32 29 2C 30 0D 0D | ... (64512),0..|
00000650: 49 4E 20 54 48 45 20 50 52 4F 47 52 41 4D 2E 20 |IN THE PROGRAM. |
00000660: 20 28 D4 48 45 20 22 2C 30 22 20 54 45 4C 4C 53 | (.HE ",0" TELLS|
00000670: 20 54 48 45 0D 50 52 4F 47 52 41 4D 20 54 4F 20 | THE.PROGRAM TO |
00000680: 50 45 52 46 4F 52 4D 20 CA 4F 42 20 30 2E 29 0D |PERFORM .OB 0.).|
00000690: 0D CA 4F 42 20 31 20 2D 2D 20 43 4F 4E 56 45 52 |..OB 1 -- CONVER|
000006A0: 54 53 20 D0 C5 D4 C1 D3 C3 C9 C9 20 54 4F 20 C1 |TS ........ TO .|
000006B0: D3 C3 C9 C9 2E 0D C3 41 4C 4C 20 54 48 45 20 53 |.......ALL THE S|
000006C0: 45 54 55 50 20 52 4F 55 54 49 4E 45 2C 20 54 48 |ETUP ROUTINE, TH|
000006D0: 45 4E 20 49 4E 43 4C 55 44 45 0D 54 48 45 20 46 |EN INCLUDE.THE F|
000006E0: 4F 4C 4C 4F 57 49 4E 47 20 49 4E 20 59 4F 55 52 |OLLOWING IN YOUR|
000006F0: 20 50 52 4F 47 52 41 4D 3A 0D 0D 20 20 20 20 20 | PROGRAM:.. |
00000700: 20 20 C2 C1 CE CB 20 31 20 3A 20 D3 D9 D3 20 28 | .... 1 : ... (|
00000710: 36 34 35 31 32 29 2C 31 0D 0D CA 4F 42 53 20 32 |64512),1...OBS 2|
00000720: 20 41 4E 44 20 33 20 2D 2D 20 C8 41 56 49 4E 47 | AND 3 -- .AVING|
00000730: 20 4D 49 58 45 44 20 55 50 50 45 52 0D 41 4E 44 | MIXED UPPER.AND|
00000740: 20 4C 4F 57 45 52 20 43 41 53 45 20 49 4E 20 53 | LOWER CASE IN S|
00000750: 54 52 49 4E 47 53 20 43 41 4E 20 52 55 49 4E 0D |TRINGS CAN RUIN.|
00000760: 53 4F 52 54 49 4E 47 20 4F 52 20 43 41 55 53 45 |SORTING OR CAUSE|
00000770: 20 50 52 4F 42 4C 45 4D 53 20 46 4F 52 0D 50 52 | PROBLEMS FOR.PR|
00000780: 4F 47 52 41 4D 53 20 57 48 49 43 48 20 53 45 41 |OGRAMS WHICH SEA|
00000790: 52 43 48 20 46 4F 52 20 4B 45 59 57 4F 52 44 53 |RCH FOR KEYWORDS|
000007A0: 2E 0D CA 4F 42 20 32 20 4D 41 4B 45 53 20 41 4C |...OB 2 MAKES AL|
000007B0: 4C 20 43 48 41 52 41 43 54 45 52 53 20 4C 4F 57 |L CHARACTERS LOW|
000007C0: 45 52 0D 43 41 53 45 3B 20 CA 4F 42 20 33 20 4D |ER.CASE; .OB 3 M|
000007D0: 41 4B 45 53 20 41 4C 4C 20 43 48 41 52 41 43 54 |AKES ALL CHARACT|
000007E0: 45 52 53 0D 55 50 50 45 52 20 43 41 53 45 2E 20 |ERS.UPPER CASE. |
000007F0: C1 4E 20 45 58 41 4D 50 4C 45 20 49 53 3A 0D 0D |.N EXAMPLE IS:..|
00000800: 20 20 20 20 C2 C1 CE CB 20 31 20 3A 20 D3 D9 D3 | .... 1 : ...|
00000810: 20 28 36 34 35 31 32 29 2C 32 20 4F 52 20 33 0D | (64512),2 OR 3.|
00000820: 0D CA 4F 42 20 34 20 2D 2D 20 C9 4E 20 50 52 4F |..OB 4 -- .N PRO|
00000830: 47 52 41 4D 53 20 53 55 43 48 20 41 53 0D 44 41 |GRAMS SUCH AS.DA|
00000840: 54 41 42 41 53 45 53 2C 20 49 54 27 53 20 4F 46 |TABASES, IT'S OF|
00000850: 54 45 4E 20 4E 49 43 45 20 54 4F 20 4B 4E 4F 57 |TEN NICE TO KNOW|
00000860: 0D 48 4F 57 20 4D 41 4E 59 20 54 49 4D 45 53 20 |.HOW MANY TIMES |
00000870: 41 20 43 48 41 52 41 43 54 45 52 20 4F 43 43 55 |A CHARACTER OCCU|
00000880: 52 53 20 49 4E 0D 41 20 53 54 52 49 4E 47 2E 20 |RS IN.A STRING. |
00000890: 20 D4 4F 20 43 4F 55 4E 54 20 41 20 43 48 41 52 | .O COUNT A CHAR|
000008A0: 41 43 54 45 52 2C 20 55 53 45 0D 54 48 49 53 20 |ACTER, USE.THIS |
000008B0: 50 52 4F 43 45 53 53 3A 0D 0D 2D 2D 20 43 41 4C |PROCESS:..-- CAL|
000008C0: 4C 20 54 48 45 20 53 45 54 55 50 20 52 4F 55 54 |L THE SETUP ROUT|
000008D0: 49 4E 45 0D 0D 2D 2D 20 53 45 54 20 C3 24 20 45 |INE..-- SET .$ E|
000008E0: 51 55 41 4C 20 54 4F 20 54 48 45 20 53 45 4C 45 |QUAL TO THE SELE|
000008F0: 43 54 45 44 0D 20 20 20 43 48 41 52 41 43 54 45 |CTED. CHARACTE|
00000900: 52 0D 0D 2D 2D 20 55 53 45 3A 20 C2 C1 CE CB 31 |R..-- USE: ....1|
00000910: 3A D3 D9 D3 28 36 34 35 31 32 29 2C 34 2C C1 D3 |:...(64512),4,..|
00000920: C3 28 C3 24 29 0D 0D 2D 2D 20 55 53 45 20 D2 D2 |.(.$)..-- USE ..|
00000930: C5 C7 20 CE 20 49 4E 20 59 4F 55 52 20 50 52 4F |.. . IN YOUR PRO|
00000940: 47 52 41 4D 2E 20 20 28 D3 45 45 0D 20 20 20 4C |GRAM. (.EE. L|
00000950: 49 4E 45 53 20 35 31 30 2D 35 38 30 20 49 4E 20 |INES 510-580 IN |
00000960: 54 48 45 20 44 45 4D 4F 2E 29 0D 0D CA 4F 42 20 |THE DEMO.)...OB |
00000970: 35 20 2D 2D 20 53 57 41 50 53 20 54 57 4F 20 43 |5 -- SWAPS TWO C|
00000980: 48 41 52 41 43 54 45 52 53 2E 0D C3 48 41 4E 47 |HARACTERS...HANG|
00000990: 49 4E 47 20 41 4C 4C 20 4C 45 46 54 20 42 52 41 |ING ALL LEFT BRA|
000009A0: 43 4B 45 54 53 2C 20 22 5B 22 2C 20 57 49 54 48 |CKETS, "[", WITH|
000009B0: 0D 41 20 4C 45 46 54 20 50 41 52 45 4E 54 48 45 |.A LEFT PARENTHE|
000009C0: 53 49 53 20 43 48 41 52 41 43 54 45 52 2C 20 22 |SIS CHARACTER, "|
000009D0: 28 22 2C 20 49 53 0D 41 4E 20 45 58 41 4D 50 4C |(", IS.AN EXAMPL|
000009E0: 45 3A 0D 0D 2D 2D 20 43 41 4C 4C 20 54 48 45 20 |E:..-- CALL THE |
000009F0: 53 45 54 55 50 20 52 4F 55 54 49 4E 45 0D 0D 2D |SETUP ROUTINE..-|
00000A00: 2D 20 53 45 54 20 C2 24 3D C3 C8 D2 24 28 39 31 |- SET .$=...$(91|
00000A10: 29 20 28 54 48 45 20 4C 45 46 54 2D 42 52 41 43 |) (THE LEFT-BRAC|
00000A20: 4B 45 54 29 0D 0D 2D 2D 20 53 45 54 20 D0 24 3D |KET)..-- SET .$=|
00000A30: 22 28 22 20 28 54 48 45 20 4C 45 46 54 20 50 41 |"(" (THE LEFT PA|
00000A40: 52 45 4E 54 48 45 53 49 53 29 0D 0D 2D 2D 20 55 |RENTHESIS)..-- U|
00000A50: 53 45 3A 20 C2 C1 CE CB 31 3A D3 D9 D3 28 36 34 |SE: ....1:...(64|
00000A60: 35 31 32 29 2C 35 2C C1 D3 C3 28 C2 24 29 2C 0D |512),5,...(.$),.|
00000A70: 20 20 20 20 20 20 20 20 C1 D3 C3 28 D0 24 29 0D | ...(.$).|
00000A80: 0D CA 4F 42 20 36 20 2D 2D 20 45 4E 43 4F 44 45 |..OB 6 -- ENCODE|
00000A90: 53 20 41 20 53 54 52 49 4E 47 20 55 53 49 4E 47 |S A STRING USING|
00000AA0: 20 41 0D 54 52 41 4E 53 50 4F 53 49 54 49 4F 4E | A.TRANSPOSITION|
00000AB0: 20 43 49 50 48 45 52 2E 20 20 28 C1 0D 54 52 41 | CIPHER. (..TRA|
00000AC0: 4E 53 50 4F 53 49 54 49 4F 4E 20 43 49 50 48 45 |NSPOSITION CIPHE|
00000AD0: 52 20 4A 55 4D 42 4C 45 53 20 54 48 45 0D 43 48 |R JUMBLES THE.CH|
00000AE0: 41 52 41 43 54 45 52 53 20 4F 46 20 41 20 53 54 |ARACTERS OF A ST|
00000AF0: 52 49 4E 47 20 41 43 43 4F 52 44 49 4E 47 20 54 |RING ACCORDING T|
00000B00: 4F 20 41 0D 22 4B 45 59 20 4E 55 4D 42 45 52 2E |O A."KEY NUMBER.|
00000B10: 22 20 20 D4 48 45 20 4B 45 59 20 4E 55 4D 42 45 |" .HE KEY NUMBE|
00000B20: 52 20 4D 55 53 54 20 42 45 0D 4B 4E 4F 57 4E 20 |R MUST BE.KNOWN |
00000B30: 49 4E 20 4F 52 44 45 52 20 54 4F 20 44 45 43 49 |IN ORDER TO DECI|
00000B40: 50 48 45 52 20 41 4E 0D 45 4E 43 49 50 48 45 52 |PHER AN.ENCIPHER|
00000B50: 45 44 20 53 54 52 49 4E 47 2E 29 20 20 D4 4F 20 |ED STRING.) .O |
00000B60: 45 4E 43 49 50 48 45 52 20 41 0D 53 54 52 49 4E |ENCIPHER A.STRIN|
00000B70: 47 2C 0D 0D 2D 2D 20 43 41 4C 4C 20 53 45 54 55 |G,..-- CALL SETU|
00000B80: 50 20 52 4F 55 54 49 4E 45 0D 0D 2D 2D 20 55 53 |P ROUTINE..-- US|
00000B90: 45 3A 20 C2 C1 CE CB 31 3A D3 D9 D3 28 36 34 35 |E: ....1:...(645|
00000BA0: 31 32 29 2C 36 2C CB 0D 20 20 20 57 48 45 52 45 |12),6,.. WHERE|
00000BB0: 20 22 CB 22 20 49 53 20 41 20 4B 45 59 20 4E 55 | "." IS A KEY NU|
00000BC0: 4D 42 45 52 0D 20 20 20 46 52 4F 4D 20 31 20 54 |MBER. FROM 1 T|
00000BD0: 4F 20 32 35 35 2E 0D 0D CA 4F 42 20 37 20 2D 2D |O 255....OB 7 --|
00000BE0: 20 44 45 43 49 50 48 45 52 53 20 41 4E 20 45 4E | DECIPHERS AN EN|
00000BF0: 43 49 50 48 45 52 45 44 0D 53 54 52 49 4E 47 2E |CIPHERED.STRING.|
00000C00: 20 20 D5 53 45 20 54 48 45 20 53 41 4D 45 20 D3 | .SE THE SAME .|
00000C10: D9 D3 20 43 41 4C 4C 20 54 48 41 54 0D 57 41 53 |.. CALL THAT.WAS|
00000C20: 20 55 53 45 44 20 49 4E 20 CA 4F 42 20 36 2C 20 | USED IN .OB 6, |
00000C30: 42 55 54 20 53 55 42 53 54 49 54 55 54 45 20 22 |BUT SUBSTITUTE "|
00000C40: 37 22 0D 46 4F 52 20 22 36 22 20 49 4E 20 54 48 |7".FOR "6" IN TH|
00000C50: 45 20 D3 D9 D3 20 43 41 4C 4C 2E 0D 0D 0D C4 C9 |E ... CALL......|
00000C60: D3 CB 20 C6 C9 CC C5 D3 20 D4 C8 C9 D3 20 D0 D2 |.. ..... .... ..|
00000C70: CF C7 D2 C1 CD 20 D5 D3 C5 D3 3A 0D 0D D3 D4 D2 |..... ....:.....|
00000C80: C9 CE C7 20 CD C1 C7 C9 C3 2E 31 32 38 20 20 20 |... ......128 |
00000C90: D4 2E D3 D4 D2 C9 CE C7 20 CD C1 C7 C9 C3 2E 31 |........ ......1|
00000CA0: 0D 0D 20 20 20 20 20 20 20 20 2A 2A 2A 2A 20 C5 |.. **** .|
00000CB0: 4E 44 20 CF 46 20 D4 45 58 54 20 2A 2A 2A 2A 0D |ND .F .EXT ****.|
..^U:HACKER... STRING MAGICIAN
128. BY. BR
UCE JAEGER..COMMODORE MAGAZINE.AUGUST 19
87..************************************
*.NOTE: BECAUSE THIS PROGRAM IS WRITTEN.
FOR THE C-128, IT CANNOT BE RUN LIKE.OTH
ER PROGRAMS ON LOADSTAR. TO RUN.THE PRO
GRAM, PRESS THE 128'S RESET.BUTTON TO PU
T THE COMPUTER INTO 128.MODE. A MENU OF
ALL 128 PROGRAMS ON.SIDE 1 OF THE DISK
WILL BE DISPLAYED..CHOOSE THE PROGRAM YO
U WISH TO RUN.FROM THIS MENU..**********
***************************.. OFTEN IT
IS NECESSARY TO ALTER THE.CONTENTS OF A
FILE'S CHARACTER.STRINGS IN SOME WAY. Y
OU MIGHT NEED.TO CONVERT PETASCII TO ASC
II BEFORE.SENDING A FILE TO A MODEM, FOR
.EXAMPLE. YOU MIGHT WANT TO CHANGE.THE
COLONS OR COMMAS IN A STRING TO.OTHER CH
ARACTERS TO AVOID PROBLEMS.WITH INPUT ST
ATEMENTS. STRING.MAGICIAN DEMONSTRATES
EIGHT ROUTINES.WHICH ALTER CHARACTER STR
INGS IN.USEFUL WAYS...ABOUT THE PROGRAM.
-----------------. THE STRING MAGICIAN
ROUTINES ARE.DESIGNED TO BE USED IN YOUR
OWN.PROGRAMS. A SETUP SUBROUTINE (LINE
S.880-940 IN THE DEMO) USES POINTER TO.F
IND THE LOCATION OF THE STRING. THE.SET
UP ROUTINE POKES THE LENGTH OF THE.STRIN
G (A$ IN THE DEMO) INTO $FD (253.DECIMAL
), AND THE LOW-BYTE HIGH-BYTE.ADDRESS IN
TO $FC $FD (251-252)..PROGRAMS USING STR
ING MAGICIAN MUST.ALWAYS CALL THE SETUP
ROUTINE. ALL.OTHER INFORMATION STRING M
AGICIAN.NEEDS IS PASSED TO IT WHEN THE.M
ACHINE LANGUAGE ROUTINE AT $FC00.(64512)
IS CALLED...THE ROUTINES.------------.J
OB 0 -- CONVERTS ASCII TO PETASCII..TO U
SE THIS ROUTINE, GOSUB THE SETUP.ROUTINE
, THEN INCLUDE THE LINE.. BANK 1 :
SYS (64512),0..IN THE PROGRAM. (THE ",
0" TELLS THE.PROGRAM TO PERFORM JOB 0.).
.JOB 1 -- CONVERTS PETASCII TO ASCII..CA
LL THE SETUP ROUTINE, THEN INCLUDE.THE F
OLLOWING IN YOUR PROGRAM:.. BANK 1
: SYS (64512),1..JOBS 2 AND 3 -- HAVING
MIXED UPPER.AND LOWER CASE IN STRINGS C
AN RUIN.SORTING OR CAUSE PROBLEMS FOR.PR
OGRAMS WHICH SEARCH FOR KEYWORDS..JOB 2
MAKES ALL CHARACTERS LOWER.CASE; JOB 3 M
AKES ALL CHARACTERS.UPPER CASE. AN EXAMP
LE IS:.. BANK 1 : SYS (64512),2 OR 3.
.JOB 4 -- IN PROGRAMS SUCH AS.DATABASES,
IT'S OFTEN NICE TO KNOW.HOW MANY TIMES
A CHARACTER OCCURS IN.A STRING. TO COUN
T A CHARACTER, USE.THIS PROCESS:..-- CAL
L THE SETUP ROUTINE..-- SET C$ EQUAL TO
THE SELECTED. CHARACTER..-- USE: BANK1
:SYS(64512),4,ASC(C$)..-- USE RREG N IN
YOUR PROGRAM. (SEE. LINES 510-580 IN
THE DEMO.)..JOB 5 -- SWAPS TWO CHARACTER
S..CHANGING ALL LEFT BRACKETS, "[", WITH
.A LEFT PARENTHESIS CHARACTER, "(", IS.A
N EXAMPLE:..-- CALL THE SETUP ROUTINE..-
- SET B$=CHR$(91) (THE LEFT-BRACKET)..--
SET P$="(" (THE LEFT PARENTHESIS)..-- U
SE: BANK1:SYS(64512),5,ASC(B$),.
ASC(P$)..JOB 6 -- ENCODES A STRING USING
A.TRANSPOSITION CIPHER. (A.TRANSPOSITI
ON CIPHER JUMBLES THE.CHARACTERS OF A ST
RING ACCORDING TO A."KEY NUMBER." THE K
EY NUMBER MUST BE.KNOWN IN ORDER TO DECI
PHER AN.ENCIPHERED STRING.) TO ENCIPHER
A.STRING,..-- CALL SETUP ROUTINE..-- US
E: BANK1:SYS(64512),6,K. WHERE "K" IS
A KEY NUMBER. FROM 1 TO 255...JOB 7 --
DECIPHERS AN ENCIPHERED.STRING. USE TH
E SAME SYS CALL THAT.WAS USED IN JOB 6,
BUT SUBSTITUTE "7".FOR "6" IN THE SYS CA
LL....DISK FILES THIS PROGRAM USES:..STR
ING MAGIC.128 T.STRING MAGIC.1..
**** END OF TEXT ****.
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL