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

T.ML RELOCATER

FILE INFORMATION

FILENAME(S): T.ML RELOCATER

FILE TYPE(S): PRG

FILE SIZE: 5.3K

FIRST SEEN: 2025-11-30 18:05:26

APPEARS ON: 2 disk(s)

FILE HASH

d9c36ff9fd37e39422bda5e217456ebc82f6836365f0a9718209c8a99e253d40

FOUND ON DISKS (2 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
LOADSTAR 61 S 2 T.ML RELOCATER PRG Xii 14 1 DOWNLOAD FILE
LOADSTAR 61 S 2 T.ML RELOCATER PRG Sailor, Ganheden 14 1 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 00 80 5E 55 3A 43 42 4D  0D 20 20 20 20 20 20 20  |..^U:CBM.       |
00000010: CD 20 CC 20 2D 20 D2 20  C5 20 CC 20 CF 20 C3 20  |. . - . . . . . |
00000020: C1 20 D4 20 C5 20 D2 0D  0D 20 20 20 20 20 20 20  |. . . ...       |
00000030: 20 20 20 42 59 20 CA 45  46 46 20 C2 41 42 55 53  |   BY .EFF .ABUS|
00000040: 43 48 41 4B 0D 0D 20 46  52 4F 4D 20 C3 4F 4D 4D  |CHAK.. FROM .OMM|
00000050: 4F 44 4F 52 45 20 CD 41  47 41 5A 49 4E 45 20 2D  |ODORE .AGAZINE -|
00000060: 20 CA 55 4E 45 20 31 39  38 39 0D 0D 20 20 20 20  | .UNE 1989..    |
00000070: D4 48 45 52 45 20 57 49  4C 4C 20 42 45 20 54 49  |.HERE WILL BE TI|
00000080: 4D 45 53 20 57 48 45 4E  20 59 4F 55 20 48 41 56  |MES WHEN YOU HAV|
00000090: 45 0D 41 20 43 4F 55 50  4C 45 20 4F 46 20 4D 41  |E.A COUPLE OF MA|
000000A0: 43 48 49 4E 45 20 4C 41  4E 47 55 41 47 45 20 52  |CHINE LANGUAGE R|
000000B0: 4F 55 54 49 4E 45 53 0D  54 48 41 54 20 59 4F 55  |OUTINES.THAT YOU|
000000C0: 20 57 41 4E 54 20 54 4F  20 55 53 45 20 49 4E 20  | WANT TO USE IN |
000000D0: 41 20 50 52 4F 47 52 41  4D 20 42 55 54 0D 42 4F  |A PROGRAM BUT.BO|
000000E0: 54 48 20 4F 46 20 54 48  45 4D 20 48 41 50 50 45  |TH OF THEM HAPPE|
000000F0: 4E 20 54 4F 20 52 45 53  49 44 45 20 49 4E 20 54  |N TO RESIDE IN T|
00000100: 48 45 0D 53 41 4D 45 20  50 4C 41 43 45 20 49 4E  |HE.SAME PLACE IN|
00000110: 20 4D 45 4D 4F 52 59 2E  20 20 D4 48 49 53 20 4F  | MEMORY.  .HIS O|
00000120: 46 54 45 4E 0D 4F 43 43  55 52 53 20 57 49 54 48  |FTEN.OCCURS WITH|
00000130: 20 52 4F 55 54 49 4E 45  53 20 54 48 41 54 20 52  | ROUTINES THAT R|
00000140: 45 53 49 44 45 20 49 4E  0D 54 48 45 20 43 41 53  |ESIDE IN.THE CAS|
00000150: 53 45 54 54 45 20 42 55  46 46 45 52 2E 20 20 D7  |SETTE BUFFER.  .|
00000160: 45 4C 4C 2C 20 41 43 43  4F 52 44 49 4E 47 0D 54  |ELL, ACCORDING.T|
00000170: 4F 20 CD 49 4B 45 20 D2  49 56 45 52 53 20 41 54  |O .IKE .IVERS AT|
00000180: 20 C3 4F 4D 4D 4F 44 4F  52 45 20 CD 41 47 41 5A  | .OMMODORE .AGAZ|
00000190: 49 4E 45 2C 0D 54 48 49  53 20 50 52 4F 47 52 41  |INE,.THIS PROGRA|
000001A0: 4D 20 57 4F 4E 27 54 20  48 45 4C 50 20 59 4F 55  |M WON'T HELP YOU|
000001B0: 20 2D 2D 20 49 54 0D 4F  4E 4C 59 20 52 45 4C 4F  | -- IT.ONLY RELO|
000001C0: 43 41 54 45 53 20 43 4F  44 45 20 46 4F 55 4E 44  |CATES CODE FOUND|
000001D0: 20 49 4E 20 48 49 47 48  45 52 0D 4D 45 4D 4F 52  | IN HIGHER.MEMOR|
000001E0: 59 2C 20 4C 49 4B 45 20  24 C3 30 30 30 2E 20 20  |Y, LIKE $.000.  |
000001F0: C2 55 54 20 44 4F 4E 27  54 0D 44 45 53 50 41 49  |.UT DON'T.DESPAI|
00000200: 52 2C 20 41 46 54 45 52  20 C9 20 44 45 53 43 52  |R, AFTER . DESCR|
00000210: 49 42 45 20 CD CC 20 D2  C5 CC CF C3 C1 D4 C5 D2  |IBE .. .........|
00000220: 0D C9 27 4C 4C 20 54 45  4C 4C 20 59 4F 55 20 48  |..'LL TELL YOU H|
00000230: 4F 57 20 C9 20 52 45 4C  4F 43 41 54 45 20 CD CC  |OW . RELOCATE ..|
00000240: 20 43 4F 44 45 2E 0D 0D  20 20 20 20 D4 48 49 53  | CODE...    .HIS|
00000250: 20 50 52 4F 47 52 41 4D  20 49 53 20 55 53 45 46  | PROGRAM IS USEF|
00000260: 55 4C 20 46 4F 52 20 C2  C1 D3 C9 C3 0D 41 4E 44  |UL FOR ......AND|
00000270: 20 4E 4F 56 49 43 45 20  CD 2D CC 20 50 52 4F 47  | NOVICE .-. PROG|
00000280: 52 41 4D 4D 45 52 53 2E  20 20 C9 54 20 57 4F 52  |RAMMERS.  .T WOR|
00000290: 4B 53 0D 42 45 53 54 20  57 49 54 48 20 53 4D 41  |KS.BEST WITH SMA|
000002A0: 4C 4C 20 50 52 4F 47 52  41 4D 53 20 54 48 41 54  |LL PROGRAMS THAT|
000002B0: 20 4C 41 43 4B 0D 44 41  54 41 2E 20 20 C9 20 44  | LACK.DATA.  . D|
000002C0: 4F 20 4D 45 41 4E 20 D3  CD C1 CC CC 20 50 52 4F  |O MEAN ..... PRO|
000002D0: 47 52 41 4D 53 2E 0D CD  CC 2D D2 45 4C 4F 43 41  |GRAMS....-.ELOCA|
000002E0: 54 4F 52 20 54 4F 4F 4B  20 41 4C 4D 4F 53 54 20  |TOR TOOK ALMOST |
000002F0: 54 57 4F 20 48 4F 55 52  53 20 54 4F 0D 52 45 4C  |TWO HOURS TO.REL|
00000300: 4F 43 41 54 45 20 41 20  35 20 42 4C 4F 43 4B 20  |OCATE A 5 BLOCK |
00000310: 46 49 4C 45 21 0D 0D 20  20 20 20 CF 4E 43 45 20  |FILE!..    .NCE |
00000320: D2 D5 CE 2C 20 CD CC 2D  D2 C5 CC CF C3 C1 D4 C5  |..., ..-........|
00000330: D2 20 41 53 4B 53 20 46  4F 52 0D 54 48 45 20 4E  |. ASKS FOR.THE N|
00000340: 41 4D 45 20 4F 46 20 54  48 45 20 CD CC 20 52 4F  |AME OF THE .. RO|
00000350: 55 54 49 4E 45 2E 20 20  D4 48 45 0D D3 D4 C1 D2  |UTINE.  .HE.....|
00000360: D4 C9 CE C7 20 41 44 44  52 45 53 53 20 4F 46 20  |.... ADDRESS OF |
00000370: 54 48 45 20 50 52 4F 47  52 41 4D 20 49 53 0D 54  |THE PROGRAM IS.T|
00000380: 48 45 4E 20 44 49 53 50  4C 41 59 45 44 2E 20 20  |HEN DISPLAYED.  |
00000390: D4 48 45 4E 20 59 4F 55  20 45 4E 54 45 52 20 54  |.HEN YOU ENTER T|
000003A0: 48 45 0D 44 45 53 49 52  45 44 20 4C 4F 43 41 54  |HE.DESIRED LOCAT|
000003B0: 49 4F 4E 2E 20 20 CE 45  58 54 20 59 4F 55 20 41  |ION.  .EXT YOU A|
000003C0: 52 45 20 41 53 4B 45 44  0D 49 46 20 54 48 45 52  |RE ASKED.IF THER|
000003D0: 45 20 49 53 20 41 4E 59  20 C4 C1 D4 C1 20 49 4E  |E IS ANY .... IN|
000003E0: 20 54 48 45 20 50 52 4F  47 52 41 4D 2E 0D C1 4E  | THE PROGRAM...N|
000003F0: 53 57 45 52 20 D9 45 53  2F CE 4F 2F CD 41 59 42  |SWER .ES/.O/.AYB|
00000400: 45 2E 20 20 C5 4E 54 45  52 20 CD 20 49 46 0D 59  |E.  .NTER . IF.Y|
00000410: 4F 55 27 52 45 20 4E 4F  54 20 53 55 52 45 2E 20  |OU'RE NOT SURE. |
00000420: 20 D4 48 45 20 46 49 4E  41 4C 20 50 52 4F 4D 50  | .HE FINAL PROMP|
00000430: 54 0D 57 49 4C 4C 20 41  53 4B 20 46 4F 52 20 41  |T.WILL ASK FOR A|
00000440: 20 CE C5 D7 20 46 49 4C  45 4E 41 4D 45 2E 0D 0D  | ... FILENAME...|
00000450: 0D 0D 20 20 20 20 C9 46  20 59 4F 55 20 41 4E 53  |..    .F YOU ANS|
00000460: 57 45 52 45 44 20 59 45  53 20 4F 52 20 4D 41 59  |WERED YES OR MAY|
00000470: 42 45 20 54 4F 0D 54 48  45 20 C4 C1 D4 C1 20 51  |BE TO.THE .... Q|
00000480: 55 45 53 54 49 4F 4E 20  59 4F 55 27 4C 4C 20 42  |UESTION YOU'LL B|
00000490: 45 20 41 53 4B 45 44 20  46 4F 52 0D 53 54 41 52  |E ASKED FOR.STAR|
000004A0: 54 49 4E 47 20 4F 52 20  45 4E 44 49 4E 47 20 53  |TING OR ENDING S|
000004B0: 45 47 4D 45 4E 54 53 20  4F 46 20 54 48 45 0D 43  |EGMENTS OF THE.C|
000004C0: 4F 44 45 20 54 4F 20 49  53 4F 4C 41 54 45 20 54  |ODE TO ISOLATE T|
000004D0: 48 45 20 44 41 54 41 20  50 41 52 54 2E 20 20 D4  |HE DATA PART.  .|
000004E0: 48 49 53 0D 49 53 20 41  4E 20 49 4E 54 45 4C 4C  |HIS.IS AN INTELL|
000004F0: 49 47 45 4E 54 20 54 48  49 4E 47 20 46 4F 52 20  |IGENT THING FOR |
00000500: 54 48 45 0D 50 52 4F 47  52 41 4D 20 54 4F 20 44  |THE.PROGRAM TO D|
00000510: 4F 20 41 4C 54 48 4F 55  47 48 20 C9 20 46 45 45  |O ALTHOUGH . FEE|
00000520: 4C 20 54 48 41 54 20 49  46 0D 41 20 4E 4F 56 49  |L THAT IF.A NOVI|
00000530: 43 45 20 50 52 4F 47 52  41 4D 4D 45 52 20 49 53  |CE PROGRAMMER IS|
00000540: 20 49 4E 20 4E 45 45 44  20 4F 46 20 CD CC 0D D2  | IN NEED OF ....|
00000550: C5 CC CF C3 C1 D4 C5 D2  20 48 45 20 50 52 4F 42  |........ HE PROB|
00000560: 41 42 4C 59 20 44 4F 45  53 4E 27 54 20 4B 4E 4F  |ABLY DOESN'T KNO|
00000570: 57 0D 57 48 41 54 20 49  53 20 44 41 54 41 20 41  |W.WHAT IS DATA A|
00000580: 4E 44 20 57 48 41 54 20  49 53 4E 27 54 2E 0D 0D  |ND WHAT ISN'T...|
00000590: 20 20 20 20 D4 4F 20 45  4E 44 20 54 48 45 20 27  |    .O END THE '|
000005A0: 44 41 54 41 20 49 53 4F  4C 41 54 49 4F 4E 27 0D  |DATA ISOLATION'.|
000005B0: 53 45 51 55 45 4E 43 45  2C 20 45 4E 54 45 52 20  |SEQUENCE, ENTER |
000005C0: 41 20 30 20 54 48 45 4E  20 53 49 54 20 42 41 43  |A 0 THEN SIT BAC|
000005D0: 4B 20 41 4E 44 0D 57 41  49 54 2E 20 20 CA 45 46  |K AND.WAIT.  .EF|
000005E0: 46 20 C2 41 42 55 53 43  48 41 4B 20 55 53 45 44  |F .ABUSCHAK USED|
000005F0: 20 53 4F 4D 45 0D 46 41  49 52 4C 59 20 53 4F 50  | SOME.FAIRLY SOP|
00000600: 48 49 53 54 49 43 41 54  45 44 20 41 4C 47 4F 52  |HISTICATED ALGOR|
00000610: 49 54 48 4D 53 20 46 4F  52 0D 44 45 54 45 52 4D  |ITHMS FOR.DETERM|
00000620: 49 4E 49 4E 47 20 49 46  20 54 48 45 20 43 4F 44  |INING IF THE COD|
00000630: 45 20 49 54 27 53 20 57  4F 52 4B 49 4E 47 0D 4F  |E IT'S WORKING.O|
00000640: 4E 20 49 53 20 44 41 54  41 20 4F 52 20 4E 4F 54  |N IS DATA OR NOT|
00000650: 2C 20 53 49 4E 43 45 20  44 41 54 41 20 44 4F 45  |, SINCE DATA DOE|
00000660: 53 4E 27 54 0D 4E 45 45  44 20 54 4F 20 42 45 20  |SN'T.NEED TO BE |
00000670: 43 48 41 4E 47 45 44 20  57 48 45 4E 20 52 45 4C  |CHANGED WHEN REL|
00000680: 4F 43 41 54 49 4E 47 2E  0D 0D 20 20 20 20 C9 4E  |OCATING...    .N|
00000690: 20 54 48 45 20 41 52 54  49 43 4C 45 20 49 4E 20  | THE ARTICLE IN |
000006A0: 54 48 45 20 4D 41 47 41  5A 49 4E 45 0D 54 48 45  |THE MAGAZINE.THE|
000006B0: 52 45 20 41 52 45 20 51  55 49 54 45 20 41 20 46  |RE ARE QUITE A F|
000006C0: 45 57 20 44 49 53 43 4C  41 49 4D 45 52 53 2C 0D  |EW DISCLAIMERS,.|
000006D0: 49 4E 44 49 43 41 54 49  4E 47 20 54 48 41 54 20  |INDICATING THAT |
000006E0: 54 48 49 53 20 50 52 4F  47 52 41 4D 20 49 53 20  |THIS PROGRAM IS |
000006F0: 4E 4F 54 0D 31 30 30 25  20 52 45 4C 49 41 42 4C  |NOT.100% RELIABL|
00000700: 45 2E 20 20 D7 4F 55 4C  44 20 59 4F 55 20 42 45  |E.  .OULD YOU BE|
00000710: 4C 49 45 56 45 0D 35 30  25 3F 20 20 CE 4F 54 48  |LIEVE.50%?  .OTH|
00000720: 49 4E 47 20 41 47 41 49  4E 53 54 20 CA 45 46 46  |ING AGAINST .EFF|
00000730: 20 C2 41 42 55 53 43 48  41 4B 2C 0D 42 55 54 20  | .ABUSCHAK,.BUT |
00000740: 41 20 52 45 4C 4F 43 41  54 45 52 20 52 45 51 55  |A RELOCATER REQU|
00000750: 49 52 45 53 20 41 20 CC  CF D4 20 4F 46 0D 43 4F  |IRES A ... OF.CO|
00000760: 4D 50 55 54 45 52 20 49  4E 54 45 4C 4C 49 47 45  |MPUTER INTELLIGE|
00000770: 4E 43 45 20 54 4F 20 57  4F 52 4B 2E 0D D0 41 52  |NCE TO WORK...AR|
00000780: 41 44 4F 58 49 43 41 4C  4C 59 2C 20 49 54 20 44  |ADOXICALLY, IT D|
00000790: 4F 45 53 4E 27 54 20 54  41 4B 45 20 4D 55 43 48  |OESN'T TAKE MUCH|
000007A0: 0D 48 55 4D 41 4E 20 49  4E 54 45 4C 4C 49 47 45  |.HUMAN INTELLIGE|
000007B0: 4E 43 45 20 54 4F 20 52  45 4C 4F 43 41 54 45 20  |NCE TO RELOCATE |
000007C0: 43 4F 44 45 2C 0D 57 48  49 43 48 20 49 53 20 57  |CODE,.WHICH IS W|
000007D0: 48 59 20 C9 27 4C 4C 20  45 58 50 4C 41 49 4E 20  |HY .'LL EXPLAIN |
000007E0: 48 4F 57 20 C9 0D 52 45  4C 4F 43 41 54 45 20 43  |HOW ..RELOCATE C|
000007F0: 4F 44 45 2E 0D 0D 20 20  20 20 C6 49 52 53 54 20  |ODE...    .IRST |
00000800: 4F 46 20 41 4C 4C 2C 20  4C 45 54 27 53 20 41 53  |OF ALL, LET'S AS|
00000810: 53 55 4D 45 20 54 48 41  54 0D 59 4F 55 20 48 41  |SUME THAT.YOU HA|
00000820: 56 45 20 54 57 4F 20 52  4F 55 54 49 4E 45 53 20  |VE TWO ROUTINES |
00000830: 54 48 41 54 20 52 45 53  49 44 45 20 49 4E 0D 54  |THAT RESIDE IN.T|
00000840: 48 45 20 43 41 53 53 45  54 54 45 20 42 55 46 46  |HE CASSETTE BUFF|
00000850: 45 52 2E 20 20 CF 4E 45  20 4F 46 20 54 48 45 4D  |ER.  .NE OF THEM|
00000860: 20 4D 55 53 54 0D 47 4F  20 55 50 20 54 4F 20 54  | MUST.GO UP TO T|
00000870: 48 45 20 24 C3 30 30 30  20 41 52 45 41 2E 20 20  |HE $.000 AREA.  |
00000880: D3 4F 20 59 4F 55 20 4C  4F 41 44 0D 55 50 20 59  |.O YOU LOAD.UP Y|
00000890: 4F 55 52 20 CD CC 20 4D  4F 4E 49 54 4F 52 2E 20  |OUR .. MONITOR. |
000008A0: 20 D9 45 53 2C 20 59 4F  55 27 4C 4C 20 4E 45 45  | .ES, YOU'LL NEE|
000008B0: 44 0D 41 4E 20 CD CC 20  4D 4F 4E 49 54 4F 52 20  |D.AN .. MONITOR |
000008C0: 4C 49 4B 45 20 54 48 45  20 4F 4E 45 20 49 4E 20  |LIKE THE ONE IN |
000008D0: 54 48 45 0D C3 2D 31 32  38 20 4F 52 20 CA 49 4D  |THE..-128 OR .IM|
000008E0: 20 C2 55 54 54 45 52 46  49 45 4C 44 27 53 20 D3  | .UTTERFIELD'S .|
000008F0: D5 D0 C5 D2 CD CF CE 2E  0D 0D 20 20 20 20 C9 27  |..........    .'|
00000900: 4D 20 41 53 53 55 4D 49  4E 47 20 54 48 41 54 20  |M ASSUMING THAT |
00000910: 59 4F 55 20 4B 4E 4F 57  20 48 4F 57 20 54 4F 0D  |YOU KNOW HOW TO.|
00000920: 4C 4F 41 44 2C 20 53 41  56 45 20 41 4E 44 20 54  |LOAD, SAVE AND T|
00000930: 52 41 4E 53 46 45 52 20  57 49 54 48 20 41 0D 4D  |RANSFER WITH A.M|
00000940: 4F 4E 49 54 4F 52 2E 20  20 D9 4F 55 20 43 41 4E  |ONITOR.  .OU CAN|
00000950: 27 54 20 4A 55 53 54 20  54 52 41 4E 53 46 45 52  |'T JUST TRANSFER|
00000960: 20 54 48 45 0D 43 4F 44  45 20 55 50 20 54 4F 20  | THE.CODE UP TO |
00000970: 24 C3 30 30 30 20 42 45  43 41 55 53 45 20 53 4F  |$.000 BECAUSE SO|
00000980: 4D 45 20 4F 46 20 54 48  45 0D CA D3 D2 53 2C 20  |ME OF THE....S, |
00000990: CA CD D0 53 2C 20 D3 D4  C1 53 20 41 4E 44 20 CC  |...S, ...S AND .|
000009A0: C4 C1 53 20 57 49 4C 4C  20 42 45 0D 57 52 4F 4E  |..S WILL BE.WRON|
000009B0: 47 2E 20 D4 48 4F 53 45  20 41 52 45 20 54 48 45  |G. .HOSE ARE THE|
000009C0: 20 43 4F 4D 4D 41 4E 44  53 20 54 48 41 54 20 CD  | COMMANDS THAT .|
000009D0: CC 0D D2 C5 CC CF C3 C1  D4 C5 D2 20 57 4F 52 4B  |........... WORK|
000009E0: 53 20 4F 4E 2E 20 20 C2  CE C5 53 20 41 4E 44 20  |S ON.  ...S AND |
000009F0: C2 C5 D1 53 0D 41 52 45  20 53 45 4C 46 2D 52 45  |...S.ARE SELF-RE|
00000A00: 4C 4F 43 41 54 41 42 4C  45 20 41 4E 44 20 59 4F  |LOCATABLE AND YO|
00000A10: 55 20 57 4F 4E 27 54 0D  4E 45 45 44 20 54 4F 20  |U WON'T.NEED TO |
00000A20: 43 48 41 4E 47 45 20 54  48 45 4D 2E 0D 0D 20 20  |CHANGE THEM...  |
00000A30: 20 20 C8 45 52 45 20 49  53 20 54 48 45 20 43 52  |  .ERE IS THE CR|
00000A40: 55 58 20 4F 46 20 4D 59  20 4D 45 54 48 4F 44 2E  |UX OF MY METHOD.|
00000A50: 0D CA 55 53 54 20 41 42  4F 55 54 20 41 4C 4C 20  |..UST ABOUT ALL |
00000A60: 4F 46 20 54 48 45 20 43  4F 44 45 20 54 48 41 54  |OF THE CODE THAT|
00000A70: 20 4E 45 45 44 53 0D 54  4F 20 42 45 20 43 48 41  | NEEDS.TO BE CHA|
00000A80: 4E 47 45 44 20 41 52 45  20 54 48 52 45 45 2D 42  |NGED ARE THREE-B|
00000A90: 59 54 45 0D 43 4F 4D 4D  41 4E 44 53 2E 20 20 D4  |YTE.COMMANDS.  .|
00000AA0: 48 45 20 54 57 4F 2D 42  59 54 45 20 43 4F 4D 4D  |HE TWO-BYTE COMM|
00000AB0: 41 4E 44 53 20 41 52 45  0D 55 53 55 41 4C 4C 59  |ANDS ARE.USUALLY|
00000AC0: 20 4F 4B 41 59 2C 20 4E  4F 20 4D 41 54 54 45 52  | OKAY, NO MATTER|
00000AD0: 20 57 48 45 52 45 20 54  48 45 59 0D 41 52 45 2E  | WHERE THEY.ARE.|
00000AE0: 0D 0D 0D 20 20 20 20 D3  4F 20 4C 45 54 27 53 20  |...    .O LET'S |
00000AF0: 4C 4F 4F 4B 20 41 54 20  4F 55 52 20 CD CC 20 43  |LOOK AT OUR .. C|
00000B00: 4F 44 45 20 57 49 54 48  0D 54 48 41 20 4D 4F 4E  |ODE WITH.THA MON|
00000B10: 49 54 4F 52 2E 20 20 C9  54 20 4C 4F 4F 4B 53 20  |ITOR.  .T LOOKS |
00000B20: 53 4F 4D 45 54 48 49 4E  47 20 4C 49 4B 45 3A 0D  |SOMETHING LIKE:.|
00000B30: 0D 2E 2C 30 33 33 C3 20  32 30 20 37 33 20 30 30  |..,033. 20 73 00|
00000B40: 20 CA D3 D2 20 24 30 30  37 33 0D 2E 2C 30 33 33  | ... $0073..,033|
00000B50: C6 20 38 C4 20 39 36 20  30 33 20 D3 D4 C1 20 24  |. 8. 96 03 ... $|
00000B60: 30 33 39 36 0D 2E 2C 30  33 34 32 20 31 38 20 20  |0396..,0342 18  |
00000B70: 20 20 20 20 20 C3 CC C3  0D 2E 2C 30 33 34 33 20  |     .....,0343 |
00000B80: C5 39 20 32 C6 20 20 20  20 D3 C2 C3 20 23 24 32  |.9 2.    ... #$2|
00000B90: C6 0D 2E 2C 30 33 34 35  20 38 C4 20 39 36 20 30  |...,0345 8. 96 0|
00000BA0: 33 20 D3 D4 C1 20 24 30  33 39 36 0D 2E 2C 30 33  |3 ... $0396..,03|
00000BB0: 34 38 20 32 30 20 37 33  20 30 30 20 CA D3 D2 20  |48 20 73 00 ... |
00000BC0: 24 30 30 37 33 0D 2E 2C  30 33 34 C2 20 32 30 20  |$0073..,034. 20 |
00000BD0: C6 C4 20 C1 C5 20 CA D3  D2 20 24 C1 C5 C6 C4 0D  |.. .. ... $.....|
00000BE0: 2E 2C 30 33 34 C5 20 32  30 20 39 C5 20 C2 37 20  |.,034. 20 9. .7 |
00000BF0: CA D3 D2 20 24 C2 37 39  C5 0D 2E 2C 30 33 35 31  |... $.79...,0351|
00000C00: 20 38 C5 20 39 38 20 30  33 20 D3 D4 D8 20 24 30  | 8. 98 03 ... $0|
00000C10: 33 39 38 0D 2E 2C 30 33  35 34 20 C1 39 20 30 30  |398..,0354 .9 00|
00000C20: 20 20 20 20 CC C4 C1 20  23 30 30 0D 2E 2C 30 33  |    ... #00..,03|
00000C30: 35 36 20 38 35 20 C6 C2  20 20 20 20 D3 D4 C1 20  |56 85 ..    ... |
00000C40: 24 C6 C2 0D 2E 2C 30 33  35 38 20 C1 C5 20 39 36  |$....,0358 .. 96|
00000C50: 20 30 33 20 CC C4 D8 20  24 30 33 39 36 0D 0D 20  | 03 ... $0396.. |
00000C60: 20 20 20 CE 4F 54 49 43  45 20 54 48 41 54 20 54  |   .OTICE THAT T|
00000C70: 48 45 20 30 33 53 20 41  52 45 20 41 4C 4C 20 49  |HE 03S ARE ALL I|
00000C80: 4E 0D 54 48 45 20 53 41  4D 45 20 43 4F 4C 55 4D  |N.THE SAME COLUM|
00000C90: 4E 2C 20 54 48 45 20 54  48 49 52 44 2D 42 59 54  |N, THE THIRD-BYT|
00000CA0: 45 0D 43 4F 4C 55 4D 4E  2E 0D 0D 20 20 20 20 D4  |E.COLUMN...    .|
00000CB0: 48 45 20 30 33 20 49 53  20 54 48 45 20 48 49 2D  |HE 03 IS THE HI-|
00000CC0: 42 59 54 45 20 4F 46 20  54 48 45 0D 41 44 44 52  |BYTE OF THE.ADDR|
00000CD0: 45 53 53 45 53 20 54 48  41 54 20 4E 45 45 44 20  |ESSES THAT NEED |
00000CE0: 54 4F 20 42 45 20 43 48  41 4E 47 45 44 20 49 46  |TO BE CHANGED IF|
00000CF0: 0D 57 45 20 41 52 45 20  54 4F 20 52 45 4C 4F 43  |.WE ARE TO RELOC|
00000D00: 41 54 45 20 54 48 49 53  20 43 4F 44 45 20 54 4F  |ATE THIS CODE TO|
00000D10: 20 54 48 45 0D 24 C3 30  30 30 20 41 52 45 41 2E  | THE.$.000 AREA.|
00000D20: 20 20 C7 45 4E 45 52 41  4C 4C 59 20 C9 20 44 4F  |  .ENERALLY . DO|
00000D30: 4E 27 54 20 57 4F 52 52  59 0D 41 42 4F 55 54 20  |N'T WORRY.ABOUT |
00000D40: 54 48 45 20 4C 4F 2D 42  59 54 45 20 57 48 45 4E  |THE LO-BYTE WHEN|
00000D50: 20 C9 20 52 45 4C 4F 43  41 54 45 0D 43 4F 44 45  | . RELOCATE.CODE|
00000D60: 2E 20 20 C9 46 20 C9 27  4D 20 4D 4F 56 49 4E 47  |.  .F .'M MOVING|
00000D70: 20 46 52 4F 4D 20 24 30  33 33 C3 20 54 4F 0D 54  | FROM $033. TO.T|
00000D80: 48 45 20 24 C3 30 30 30  20 41 52 45 41 2C 20 C9  |HE $.000 AREA, .|
00000D90: 20 52 45 4C 4F 43 41 54  45 20 54 48 45 20 43 4F  | RELOCATE THE CO|
00000DA0: 44 45 0D 54 4F 20 24 C3  C4 33 C3 20 4F 52 20 24  |DE.TO $..3. OR $|
00000DB0: C3 30 33 C3 20 41 4E 44  20 4A 55 53 54 20 D3 D9  |.03. AND JUST ..|
00000DC0: D3 20 54 4F 20 49 54 0D  41 54 20 54 48 41 54 20  |. TO IT.AT THAT |
00000DD0: 4C 4F 43 41 54 49 4F 4E  2E 20 20 C9 46 20 49 54  |LOCATION.  .F IT|
00000DE0: 27 53 20 49 4D 50 45 52  41 54 49 56 45 0D 54 48  |'S IMPERATIVE.TH|
00000DF0: 41 54 20 54 48 45 20 43  4F 44 45 20 52 45 53 49  |AT THE CODE RESI|
00000E00: 44 45 20 41 54 2C 20 53  41 59 2C 20 24 C3 38 30  |DE AT, SAY, $.80|
00000E10: 30 2C 0D 54 48 45 4E 20  59 4F 55 27 4C 4C 20 48  |0,.THEN YOU'LL H|
00000E20: 41 56 45 20 54 4F 20 43  48 41 4E 47 45 20 54 48  |AVE TO CHANGE TH|
00000E30: 45 20 42 59 54 45 0D 54  4F 20 54 48 45 20 4C 45  |E BYTE.TO THE LE|
00000E40: 46 54 20 4F 46 20 54 48  45 20 30 33 53 20 41 4C  |FT OF THE 03S AL|
00000E50: 53 4F 2E 0D 0D 20 20 20  20 D3 4F 20 41 4C 4C 20  |SO...    .O ALL |
00000E60: 59 4F 55 20 44 4F 20 49  53 20 4A 55 53 54 20 43  |YOU DO IS JUST C|
00000E70: 55 52 53 4F 52 20 55 50  0D 54 4F 20 54 48 45 20  |URSOR UP.TO THE |
00000E80: 30 33 53 20 41 4E 44 20  43 48 41 4E 47 45 20 54  |03S AND CHANGE T|
00000E90: 48 45 4D 20 54 4F 20 C3  C4 53 20 4F 52 0D 57 48  |HEM TO ..S OR.WH|
00000EA0: 41 54 45 56 45 52 2E 20  20 D7 48 45 4E 20 59 4F  |ATEVER.  .HEN YO|
00000EB0: 55 20 50 52 45 53 53 20  D2 C5 D4 D5 D2 CE 20 54  |U PRESS ...... T|
00000EC0: 48 45 0D 43 4F 44 45 20  54 4F 20 54 48 45 20 52  |HE.CODE TO THE R|
00000ED0: 49 47 48 54 20 57 49 4C  4C 20 43 48 41 4E 47 45  |IGHT WILL CHANGE|
00000EE0: 2E 20 20 C4 CF CE 27 D4  0D D2 D5 CE 20 D4 C8 C5  |.  ...'..... ...|
00000EF0: 20 D0 D2 CF C7 D2 C1 CD  20 D9 C5 D4 21 21 21 0D  | ....... ...!!!.|
00000F00: 0D 20 20 20 20 D7 48 45  4E 20 59 4F 55 20 48 41  |.    .HEN YOU HA|
00000F10: 56 45 20 41 4C 4C 20 4F  46 20 54 48 45 20 30 33  |VE ALL OF THE 03|
00000F20: 53 0D 43 48 41 4E 47 45  44 2C 20 54 48 45 4E 20  |S.CHANGED, THEN |
00000F30: 54 52 41 4E 53 46 45 52  20 54 48 45 20 43 4F 44  |TRANSFER THE COD|
00000F40: 45 20 54 4F 0D 24 C3 C4  33 C3 20 41 4E 44 20 54  |E TO.$..3. AND T|
00000F50: 48 45 4E 20 53 41 56 45  20 49 54 20 46 52 4F 4D  |HEN SAVE IT FROM|
00000F60: 20 54 48 45 52 45 2E 0D  D4 41 20 44 41 21 21 21  | THERE...A DA!!!|
00000F70: 20 20 C9 54 27 53 20 44  4F 4E 45 2E 20 20 C6 49  |  .T'S DONE.  .I|
00000F80: 47 55 52 45 20 4F 55 54  20 54 48 45 0D 4E 45 57  |GURE OUT THE.NEW|
00000F90: 20 41 44 44 52 45 53 53  20 54 4F 20 D3 D9 D3 20  | ADDRESS TO ... |
00000FA0: 54 4F 20 41 4E 44 20 59  4F 55 27 52 45 20 4F 4E  |TO AND YOU'RE ON|
00000FB0: 0D 59 4F 55 52 20 57 41  59 2E 0D 0D 20 20 20 20  |.YOUR WAY...    |
00000FC0: C9 4E 20 54 48 45 20 43  41 53 53 45 54 54 45 20  |.N THE CASSETTE |
00000FD0: 42 55 46 46 45 52 2C 20  54 48 45 0D 48 49 2D 42  |BUFFER, THE.HI-B|
00000FE0: 59 54 45 20 49 53 20 41  4C 57 41 59 53 20 30 33  |YTE IS ALWAYS 03|
00000FF0: 2E 20 20 C9 46 20 59 4F  55 20 41 52 45 0D 4D 4F  |.  .F YOU ARE.MO|
00001000: 56 49 4E 47 20 4C 4F 4E  47 45 52 20 43 4F 44 45  |VING LONGER CODE|
00001010: 20 46 52 4F 4D 2C 20 53  41 59 2C 20 24 C3 38 30  | FROM, SAY, $.80|
00001020: 30 0D 54 4F 20 24 39 34  30 30 2C 20 59 4F 55 27  |0.TO $9400, YOU'|
00001030: 4C 4C 20 48 41 56 45 20  54 4F 20 43 48 41 4E 47  |LL HAVE TO CHANG|
00001040: 45 20 41 4C 4C 0D C3 38  53 20 28 49 4E 20 54 48  |E ALL..8S (IN TH|
00001050: 45 20 54 48 49 52 44 2D  42 59 54 45 20 43 4F 4C  |E THIRD-BYTE COL|
00001060: 55 4D 4E 29 20 54 4F 0D  39 34 53 2C 20 41 4C 4C  |UMN) TO.94S, ALL|
00001070: 20 C3 39 53 20 54 4F 20  39 35 53 2C 20 41 4C 4C  | .9S TO 95S, ALL|
00001080: 20 C3 C1 53 20 54 4F 20  39 36 53 2C 0D 45 54 43  | ..S TO 96S,.ETC|
00001090: 2E 0D 0D 0D 0D 0D 0D 20  20 20 20 CF 4E 45 20 4D  |.......    .NE M|
000010A0: 4F 52 45 20 54 48 49 4E  47 20 54 4F 20 4C 4F 4F  |ORE THING TO LOO|
000010B0: 4B 20 46 4F 52 2E 20 20  C9 46 0D 59 4F 55 20 53  |K FOR.  .F.YOU S|
000010C0: 45 45 20 43 4F 44 45 20  54 48 41 54 20 4C 4F 4F  |EE CODE THAT LOO|
000010D0: 4B 53 20 4C 49 4B 45 20  54 48 49 53 3A 0D 0D 2E  |KS LIKE THIS:...|
000010E0: 2C 30 33 36 36 20 C1 39  20 30 33 20 20 20 20 CC  |,0366 .9 03    .|
000010F0: C4 C1 20 23 24 30 33 0D  2E 2C 30 33 36 38 20 38  |.. #$03..,0368 8|
00001100: 35 20 C6 C3 20 20 20 20  D3 D4 C1 20 24 C6 C3 0D  |5 ..    ... $...|
00001110: 2E 2C 30 33 36 C1 20 C1  39 20 33 C3 20 20 20 20  |.,036. .9 3.    |
00001120: CC C4 C1 20 23 24 33 C3  0D 2E 2C 30 33 36 C3 20  |... #$3...,036. |
00001130: 38 35 20 C6 C2 20 20 20  20 D3 D4 C1 20 24 C6 C2  |85 ..    ... $..|
00001140: 0D 2E 2C 30 33 36 C5 20  C2 31 20 C6 C2 20 20 20  |..,036. .1 ..   |
00001150: 20 CC C4 C1 20 28 24 C6  C2 29 2C D9 0D 0D 54 48  | ... ($..),...TH|
00001160: 45 20 43 4F 44 45 20 49  53 20 50 52 4F 42 41 42  |E CODE IS PROBAB|
00001170: 4C 59 20 53 54 4F 52 49  4E 47 20 24 30 33 33 C3  |LY STORING $033.|
00001180: 0D 49 4E 54 4F 20 5A 45  52 4F 20 50 41 47 45 20  |.INTO ZERO PAGE |
00001190: 46 4F 52 20 53 4F 4D 45  20 49 4E 44 49 52 45 43  |FOR SOME INDIREC|
000011A0: 54 0D 49 4E 44 45 58 49  4E 47 2E 20 20 D4 48 45  |T.INDEXING.  .HE|
000011B0: 53 45 20 42 59 54 45 53  20 4E 45 45 44 20 54 4F  |SE BYTES NEED TO|
000011C0: 20 42 45 0D 43 48 41 4E  47 45 44 20 41 4C 53 4F  | BE.CHANGED ALSO|
000011D0: 2E 20 20 C9 46 20 59 4F  55 20 4A 55 53 54 20 57  |.  .F YOU JUST W|
000011E0: 4F 52 52 59 0D 41 42 4F  55 54 20 54 48 45 20 48  |ORRY.ABOUT THE H|
000011F0: 49 2D 42 59 54 45 53 20  4C 49 4B 45 20 C9 20 44  |I-BYTES LIKE . D|
00001200: 4F 2C 20 54 48 45 4E 0D  54 48 45 20 30 33 20 49  |O, THEN.THE 03 I|
00001210: 53 20 41 4C 4C 20 54 48  41 54 20 4E 45 45 44 53  |S ALL THAT NEEDS|
00001220: 20 54 4F 20 42 45 0D 43  48 41 4E 47 45 44 2E 20  | TO BE.CHANGED. |
00001230: 20 C7 45 4E 45 52 41 4C  4C 59 2C 20 54 48 4F 55  | .ENERALLY, THOU|
00001240: 47 48 2C 20 41 4C 4C 20  59 4F 55 0D 4E 45 45 44  |GH, ALL YOU.NEED|
00001250: 20 54 4F 20 53 43 41 4E  20 46 4F 52 20 49 53 20  | TO SCAN FOR IS |
00001260: 54 48 45 20 54 48 49 52  44 2D 42 59 54 45 0D 43  |THE THIRD-BYTE.C|
00001270: 4F 4C 55 4D 4E 2E 0D 0D  20 20 20 20 D3 4F 20 54  |OLUMN...    .O T|
00001280: 52 59 20 CD CC 20 D2 C5  CC CF C3 C1 D4 C5 D2 20  |RY .. ......... |
00001290: 54 48 45 20 4E 45 58 54  20 54 49 4D 45 0D 59 4F  |THE NEXT TIME.YO|
000012A0: 55 20 48 41 56 45 20 54  4F 20 52 45 4C 4F 43 41  |U HAVE TO RELOCA|
000012B0: 54 45 20 41 20 53 4D 41  4C 4C 20 CD CC 0D 52 4F  |TE A SMALL ...RO|
000012C0: 55 54 49 4E 45 2E 20 20  C9 46 20 49 54 20 44 4F  |UTINE.  .F IT DO|
000012D0: 45 53 4E 27 54 20 57 4F  52 4B 20 50 52 4F 50 45  |ESN'T WORK PROPE|
000012E0: 52 4C 59 0D 41 46 54 45  52 57 41 52 44 53 2C 20  |RLY.AFTERWARDS, |
000012F0: 49 54 27 53 20 42 45 43  41 55 53 45 20 49 54 20  |IT'S BECAUSE IT |
00001300: 49 53 0D 49 4E 43 52 45  44 49 42 4C 59 20 44 49  |IS.INCREDIBLY DI|
00001310: 46 46 49 43 55 4C 54 20  46 4F 52 20 41 20 50 52  |FFICULT FOR A PR|
00001320: 4F 47 52 41 4D 20 54 4F  0D 52 45 43 4F 47 4E 49  |OGRAM TO.RECOGNI|
00001330: 5A 45 20 57 48 41 54 20  53 48 4F 55 4C 44 20 42  |ZE WHAT SHOULD B|
00001340: 45 20 43 48 41 4E 47 45  44 20 41 4E 44 0D 57 48  |E CHANGED AND.WH|
00001350: 41 54 20 53 48 4F 55 4C  44 4E 27 54 2E 20 20 D4  |AT SHOULDN'T.  .|
00001360: 48 45 4E 20 55 53 45 20  4D 59 20 4D 45 54 48 4F  |HEN USE MY METHO|
00001370: 44 2E 0D D4 48 45 20 48  55 4D 41 4E 20 45 59 45  |D...HE HUMAN EYE|
00001380: 20 43 41 4E 20 51 55 49  43 4B 4C 59 20 53 45 45  | CAN QUICKLY SEE|
00001390: 20 57 48 41 54 20 49 53  0D 52 45 41 4C 20 43 4F  | WHAT IS.REAL CO|
000013A0: 44 45 20 41 4E 44 20 57  48 41 54 20 49 53 20 44  |DE AND WHAT IS D|
000013B0: 41 54 41 2E 20 20 C4 41  54 41 20 28 41 53 0D 53  |ATA.  .ATA (AS.S|
000013C0: 45 45 4E 20 42 59 20 41  20 4D 4F 4E 49 54 4F 52  |EEN BY A MONITOR|
000013D0: 29 20 48 41 53 20 41 20  42 55 4E 43 48 20 4F 46  |) HAS A BUNCH OF|
000013E0: 0D 3F 3F 3F 53 20 4F 52  20 53 4F 4D 45 20 4F 54  |.???S OR SOME OT|
000013F0: 48 45 52 20 53 59 4D 42  4F 4C 20 49 4E 20 49 54  |HER SYMBOL IN IT|
00001400: 2E 0D D2 45 41 4C 20 43  4F 44 45 20 4C 4F 4F 4B  |...EAL CODE LOOK|
00001410: 53 20 56 45 52 59 20 4E  45 41 54 2E 0D 0D 20 20  |S VERY NEAT...  |
00001420: 20 20 C9 20 41 50 50 4C  41 55 44 20 CA 45 46 46  |  . APPLAUD .EFF|
00001430: 20 C2 41 42 55 53 43 48  41 4B 20 46 4F 52 0D 41  | .ABUSCHAK FOR.A|
00001440: 54 54 45 4D 50 54 49 4E  47 20 41 20 4E 45 41 52  |TTEMPTING A NEAR|
00001450: 2D 49 4D 50 4F 53 53 49  42 4C 45 20 54 41 53 4B  |-IMPOSSIBLE TASK|
00001460: 2C 0D 42 55 54 20 53 4F  4D 45 54 49 4D 45 53 20  |,.BUT SOMETIMES |
00001470: 49 54 27 53 20 42 45 53  54 20 54 4F 20 55 53 45  |IT'S BEST TO USE|
00001480: 20 54 48 45 0D 42 45 53  54 20 50 52 4F 43 45 53  | THE.BEST PROCES|
00001490: 53 4F 52 20 4F 46 20 41  4C 4C 2C 20 54 48 45 20  |SOR OF ALL, THE |
000014A0: 48 55 4D 41 4E 0D 42 52  41 49 4E 2E 0D 0D C4 C9  |HUMAN.BRAIN.....|
000014B0: D3 CB 20 C6 C9 CC C5 D3  20 D4 C8 C9 D3 20 D0 D2  |.. ..... .... ..|
000014C0: CF C7 D2 C1 CD 20 D5 D3  C5 D3 0D 0D CD CC 20 D2  |..... ........ .|
000014D0: C5 CC CF C3 C1 D4 C5 D2  20 20 20 20 20 20 20 D4  |........       .|
000014E0: 2E CD CC 20 D2 C5 CC CF  C3 C1 D4 C5 D2 0D 0D 20  |... ........... |
000014F0: 20 20 20 20 20 20 20 2A  2A 2A 2A 20 C5 4E 44 20  |       **** .ND |
00001500: 4F 46 20 D4 45 58 54 20  2A 2A 2A 2A 0D           |OF .EXT ****.   |
..^U:CBM.       M L - R E L O C A T E R.
.          BY JEFF BABUSCHAK.. FROM COMM
ODORE MAGAZINE - JUNE 1989..    THERE WI
LL BE TIMES WHEN YOU HAVE.A COUPLE OF MA
CHINE LANGUAGE ROUTINES.THAT YOU WANT TO
 USE IN A PROGRAM BUT.BOTH OF THEM HAPPE
N TO RESIDE IN THE.SAME PLACE IN MEMORY.
  THIS OFTEN.OCCURS WITH ROUTINES THAT R
ESIDE IN.THE CASSETTE BUFFER.  WELL, ACC
ORDING.TO MIKE RIVERS AT COMMODORE MAGAZ
INE,.THIS PROGRAM WON'T HELP YOU -- IT.O
NLY RELOCATES CODE FOUND IN HIGHER.MEMOR
Y, LIKE $C000.  BUT DON'T.DESPAIR, AFTER
 I DESCRIBE ML RELOCATER.I'LL TELL YOU H
OW I RELOCATE ML CODE...    THIS PROGRAM
 IS USEFUL FOR BASIC.AND NOVICE M-L PROG
RAMMERS.  IT WORKS.BEST WITH SMALL PROGR
AMS THAT LACK.DATA.  I DO MEAN SMALL PRO
GRAMS..ML-RELOCATOR TOOK ALMOST TWO HOUR
S TO.RELOCATE A 5 BLOCK FILE!..    ONCE 
RUN, ML-RELOCATER ASKS FOR.THE NAME OF T
HE ML ROUTINE.  THE.STARTING ADDRESS OF 
THE PROGRAM IS.THEN DISPLAYED.  THEN YOU
 ENTER THE.DESIRED LOCATION.  NEXT YOU A
RE ASKED.IF THERE IS ANY DATA IN THE PRO
GRAM..ANSWER YES/NO/MAYBE.  ENTER M IF.Y
OU'RE NOT SURE.  THE FINAL PROMPT.WILL A
SK FOR A NEW FILENAME.....    IF YOU ANS
WERED YES OR MAYBE TO.THE DATA QUESTION 
YOU'LL BE ASKED FOR.STARTING OR ENDING S
EGMENTS OF THE.CODE TO ISOLATE THE DATA 
PART.  THIS.IS AN INTELLIGENT THING FOR 
THE.PROGRAM TO DO ALTHOUGH I FEEL THAT I
F.A NOVICE PROGRAMMER IS IN NEED OF ML.R
ELOCATER HE PROBABLY DOESN'T KNOW.WHAT I
S DATA AND WHAT ISN'T...    TO END THE '
DATA ISOLATION'.SEQUENCE, ENTER A 0 THEN
 SIT BACK AND.WAIT.  JEFF BABUSCHAK USED
 SOME.FAIRLY SOPHISTICATED ALGORITHMS FO
R.DETERMINING IF THE CODE IT'S WORKING.O
N IS DATA OR NOT, SINCE DATA DOESN'T.NEE
D TO BE CHANGED WHEN RELOCATING...    IN
 THE ARTICLE IN THE MAGAZINE.THERE ARE Q
UITE A FEW DISCLAIMERS,.INDICATING THAT 
THIS PROGRAM IS NOT.100% RELIABLE.  WOUL
D YOU BELIEVE.50%?  NOTHING AGAINST JEFF
 BABUSCHAK,.BUT A RELOCATER REQUIRES A L
OT OF.COMPUTER INTELLIGENCE TO WORK..PAR
ADOXICALLY, IT DOESN'T TAKE MUCH.HUMAN I
NTELLIGENCE TO RELOCATE CODE,.WHICH IS W
HY I'LL EXPLAIN HOW I.RELOCATE CODE...  
  FIRST OF ALL, LET'S ASSUME THAT.YOU HA
VE TWO ROUTINES THAT RESIDE IN.THE CASSE
TTE BUFFER.  ONE OF THEM MUST.GO UP TO T
HE $C000 AREA.  SO YOU LOAD.UP YOUR ML M
ONITOR.  YES, YOU'LL NEED.AN ML MONITOR 
LIKE THE ONE IN THE.C-128 OR JIM BUTTERF
IELD'S SUPERMON...    I'M ASSUMING THAT 
YOU KNOW HOW TO.LOAD, SAVE AND TRANSFER 
WITH A.MONITOR.  YOU CAN'T JUST TRANSFER
 THE.CODE UP TO $C000 BECAUSE SOME OF TH
E.JSRS, JMPS, STAS AND LDAS WILL BE.WRON
G. THOSE ARE THE COMMANDS THAT ML.RELOCA
TER WORKS ON.  BNES AND BEQS.ARE SELF-RE
LOCATABLE AND YOU WON'T.NEED TO CHANGE T
HEM...    HERE IS THE CRUX OF MY METHOD.
.JUST ABOUT ALL OF THE CODE THAT NEEDS.T
O BE CHANGED ARE THREE-BYTE.COMMANDS.  T
HE TWO-BYTE COMMANDS ARE.USUALLY OKAY, N
O MATTER WHERE THEY.ARE....    SO LET'S 
LOOK AT OUR ML CODE WITH.THA MONITOR.  I
T LOOKS SOMETHING LIKE:...,033C 20 73 00
 JSR $0073..,033F 8D 96 03 STA $0396..,0
342 18       CLC..,0343 E9 2F    SBC #$2
F..,0345 8D 96 03 STA $0396..,0348 20 73
 00 JSR $0073..,034B 20 FD AE JSR $AEFD.
.,034E 20 9E B7 JSR $B79E..,0351 8E 98 0
3 STX $0398..,0354 A9 00    LDA #00..,03
56 85 FB    STA $FB..,0358 AE 96 03 LDX 
$0396..    NOTICE THAT THE 03S ARE ALL I
N.THE SAME COLUMN, THE THIRD-BYTE.COLUMN
...    THE 03 IS THE HI-BYTE OF THE.ADDR
ESSES THAT NEED TO BE CHANGED IF.WE ARE 
TO RELOCATE THIS CODE TO THE.$C000 AREA.
  GENERALLY I DON'T WORRY.ABOUT THE LO-B
YTE WHEN I RELOCATE.CODE.  IF I'M MOVING
 FROM $033C TO.THE $C000 AREA, I RELOCAT
E THE CODE.TO $CD3C OR $C03C AND JUST SY
S TO IT.AT THAT LOCATION.  IF IT'S IMPER
ATIVE.THAT THE CODE RESIDE AT, SAY, $C80
0,.THEN YOU'LL HAVE TO CHANGE THE BYTE.T
O THE LEFT OF THE 03S ALSO...    SO ALL 
YOU DO IS JUST CURSOR UP.TO THE 03S AND 
CHANGE THEM TO CDS OR.WHATEVER.  WHEN YO
U PRESS RETURN THE.CODE TO THE RIGHT WIL
L CHANGE.  DON'T.RUN THE PROGRAM YET!!!.
.    WHEN YOU HAVE ALL OF THE 03S.CHANGE
D, THEN TRANSFER THE CODE TO.$CD3C AND T
HEN SAVE IT FROM THERE..TA DA!!!  IT'S D
ONE.  FIGURE OUT THE.NEW ADDRESS TO SYS 
TO AND YOU'RE ON.YOUR WAY...    IN THE C
ASSETTE BUFFER, THE.HI-BYTE IS ALWAYS 03
.  IF YOU ARE.MOVING LONGER CODE FROM, S
AY, $C800.TO $9400, YOU'LL HAVE TO CHANG
E ALL.C8S (IN THE THIRD-BYTE COLUMN) TO.
94S, ALL C9S TO 95S, ALL CAS TO 96S,.ETC
.......    ONE MORE THING TO LOOK FOR.  
IF.YOU SEE CODE THAT LOOKS LIKE THIS:...
,0366 A9 03    LDA #$03..,0368 85 FC    
STA $FC..,036A A9 3C    LDA #$3C..,036C 
85 FB    STA $FB..,036E B1 FB    LDA ($F
B),Y..THE CODE IS PROBABLY STORING $033C
.INTO ZERO PAGE FOR SOME INDIRECT.INDEXI
NG.  THESE BYTES NEED TO BE.CHANGED ALSO
.  IF YOU JUST WORRY.ABOUT THE HI-BYTES 
LIKE I DO, THEN.THE 03 IS ALL THAT NEEDS
 TO BE.CHANGED.  GENERALLY, THOUGH, ALL 
YOU.NEED TO SCAN FOR IS THE THIRD-BYTE.C
OLUMN...    SO TRY ML RELOCATER THE NEXT
 TIME.YOU HAVE TO RELOCATE A SMALL ML.RO
UTINE.  IF IT DOESN'T WORK PROPERLY.AFTE
RWARDS, IT'S BECAUSE IT IS.INCREDIBLY DI
FFICULT FOR A PROGRAM TO.RECOGNIZE WHAT 
SHOULD BE CHANGED AND.WHAT SHOULDN'T.  T
HEN USE MY METHOD..THE HUMAN EYE CAN QUI
CKLY SEE WHAT IS.REAL CODE AND WHAT IS D
ATA.  DATA (AS.SEEN BY A MONITOR) HAS A 
BUNCH OF.???S OR SOME OTHER SYMBOL IN IT
..REAL CODE LOOKS VERY NEAT...    I APPL
AUD JEFF BABUSCHAK FOR.ATTEMPTING A NEAR
-IMPOSSIBLE TASK,.BUT SOMETIMES IT'S BES
T TO USE THE.BEST PROCESSOR OF ALL, THE 
HUMAN.BRAIN...DISK FILES THIS PROGRAM US
ES..ML RELOCATER       T.ML RELOCATER.. 
       **** END OF TEXT ****.
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL