[Info-vax] exact case transfer_vectors for VAX Macro?

VAXman- at SendSpamHere.ORG VAXman- at SendSpamHere.ORG
Thu Jan 24 09:05:39 EST 2013


In article <Bs-dnWJ3W_kGrpzMnZ2dnUVZ_rqdnZ2d at mchsi.com>, "John E. Malmberg" <wb8tyw at qsl.network> writes:
>On 1/24/2013 3:33 AM, hb wrote:
>> On 01/24/2013 01:31 AM, John E. Malmberg wrote:
>>> Hand editing the object file is not practical though because of the
>>> large volume of symbols. And I need this to be a totally automated build
>>> process.
>>>
>>> I need to have both the exact case transfer vector and the uppercase
>>> transfer vector so a global replace is also not feasible even all search
>>> strings where unique.
>>
>> Then you also need both global symbols defined in your C object module,
>> anyway, or you need to change/enhance the VAX linker, because an ALIAS
>> feature (or a case blind match) is not available, there.
>
>As near as I can tell, only the first symbol name in the transfer vector 
>is used as the universal symbol, the second two are used to jump to it.
>
>> That leaves you with the problem to generate both universal symbols in
>> the transfer object module. The VAX object language is documented in
>> older linker manuals. It should be simple to write a program which walks
>> through the global symbol table and changes a symbol and finds the TIR
>> records and changes the very same symbol there as well. But how do you
>> know which symbol or placeholder to modify to what?
>
>By putting a unique string like "XXXXXXX" that is the same size as the 
>string to be replaced, I should be able to use an editor script as a 
>short term solution.

John, I've done something similar in the past -- not for C mixed-case needs
as is your goal -- and it worked; however, I found some issues with that as
the solution.  

-- 
VAXman- A Bored Certified VMS Kernel Mode Hacker    VAXman(at)TMESIS(dot)ORG

Well I speak to machines with the voice of humanity.



More information about the Info-vax mailing list