Johnny, Don't worry about the safety angle. If you use an ENTRY linkage editor statement, you impose the entry point so, obviously, you don't lose it. I believe the default entry point is the beginning of the module which is, in any case, very often correct so you don't always get into trouble even if you don't have an ENTRY statement. I just added that note to emphasis that the load module could be passed through the linkage editor as often as you liked. You should not worry if you find you need to use an object module as input to the linkage editor. You will probably find yourself including the ENTRY statement along with the INCLUDE statements as a matter of necessity or habit anyhow.
Probably I should say that I'm showing my age by not mentioning the possibility it would appear these days to use this thing called the "binder" which, as far as I am concerned, could have originated on the Aegean peninsula[1] I'd say you missed nothing in regarding object modules and load modules as being rather different. I'd hoped my last post made that clear. Only a load module can be made the value of an EXEC statement PGM operand or, within a program, be identified for a LOAD macro call. Regarding the contents of an object module, I found the following table for the types of card images which can be found in an object module or object deck of 80-column cards ( http://mitvma.mit.edu/cmshelp.cgi?CMS%20DOSLked%20(ALL ): <quote> Linkage Editor Card Types: The input to the linkage editor can consist of six card types, produced by a language translator or a programmer. These cards appear in the following order: Card Type Definition ESD External symbol dictionary SYM Ignored by linkage editor TXT Text RLD Relocation list dictionary REP Replacement of text made by the programmer END End of module </quote> As you described, you will see the instructions on the TXT card type, which will, in general, be the most common type. Each card image will have some columns at the beginning, including the card type identification, "TXT", in columns 2 to 4 if my memory is good after an enormous number of years.I think there's probably an "offset" amount here also. I think you'll find sequence numbers in columns 73 to 80 because, remember, these card images could once really have been "flesh and blood" cards and some makes of card had quite slippery surfaces - to go more easily through the card sorter machine like the venerable IBM Type 82 - and a deck of cards could quite easily fall on the floor ... - actually that's when the Type 92 came in quite handy. In between the initial data and the sequence numbers you'll find the "machine code", including instructions - but not to forget your constants. So, you're not wrong. Incidentally, there's a tight correlation between those card types and what you find on an Assembler listing. That might help explain what ESD and RLD are doing for you. One card type you won't find mentioned in the Assembler listing is RLD. This is the domain of the geek, among whom I have to have counted myself at one time in my career - fixing up, for example, faults in the CICS implementation of PL/I or just avoiding a massive reassembly back in the early 1970s under considerable pressure in little rooms where smoking[2] was tolerated just outside the machine room as deadlines loomed ... Chris Mason [1] For non-English speakers: "It's all Greek to me", unintelligible. [2] Don't worry, I can smile quietly when the chancellor announces the latest tax increase on tobacco these days. ----- Original Message ----- From: "Johnny Luo" <[EMAIL PROTECTED]> Newsgroups: bit.listserv.ibm-main To: <[email protected]> Sent: Thursday, 13 April, 2006 3:30 PM Subject: Re: What's the linkage editor really wants? > Chris, > > Thanks a lot.I remember you've helped me so many times in this list and > thanks again. > > You said: > ' I believe you can pass a load module through the linkage editor as > many times as you like and I was going to say "you'll do it no harm" but I > seem to remember you might lose the entry point address so it can be done > but you'll need to do it with care.' > > So,can I draw the conclusion that the most safe way is to use object module > as input to linkage editor if possible? > > Still another basic question.In the past,I always assumed that there is a > major > difference between an object module and a load module,that is,an object > module > is not direcly executable.Don't know whether I missed anything. > > Also curious about the contents of an object module.I remember that a book > says > that compiler converts the source program to its corresponding machine > instructions. > Because object module has the format 'f,lrecl=80',so I guess when i browse > it using ISPF > editor and use 'hex on',what I see is the source program's machine > instructions.Am I wrong? > > > > > > -- > Best Regards, > Johnny Luo ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html

