[Info-vax] Resurrecting a VAX MACRO program from 1988

Dave Froble davef at tsoft-inc.com
Mon Aug 14 10:23:08 EDT 2023


On 8/14/2023 8:47 AM, Simon Clubley wrote:
> On 2023-08-12, Robert A. Brooks <FIRST.LAST at vmssoftware.com> wrote:
>> On 8/12/2023 11:11 AM, T. Kurt Bond wrote:
>>> On Saturday, August 12, 2023 at 6:46:11?AM UTC-4, cao[...] wrote:
>>>> On Saturday, August 12, 2023 at 2:30:01?AM UTC+1, gah4 wrote:
>>>>> Since you have LINK/MAP, you could post the link map.
>>>>>
>>>>> It looks like an external symbol problem of some kind, where the linker is trying to modify an address, but the wrong place.
>>>>>
>>>>> Interesting, it is just before what seems to be the beginning.
>>>> There's something weird in the map output anyway.
>>>> The cluster listings don't make sense and there seem to be a lot of rows for the default cluster.
>>>> VTILCODE is also being listed as 4Gb in size roughly.
>>>> I noticed that the beginning of VTILCODE, the initial macro expansion has an offset of -4 and 00001FFC is suspiciously 4 away from 00002000
>>>> Possibly barking up the wrong tree but I'll have a proper look later.
>>>>
>>>> K
>>>
>>> As cao noticed, the MAP file from the most recent link *is* in the https://github.com/tkurtbond/VTIL repository and the direct link is https://github.com/tkurtbond/VTIL/blob/main/vtil.map
>>>
>>> Sorry, I should have mentioned that.
>>
>> I'm impressed that you somehow crafted a PSECT with a negative length!
>>
>>
>> Psect Name      Module Name       Base     End           Length
>> ----------      -----------       ----     ---           ------
>>
>> VTILCODE                        00002000 00001FFB FFFFFFFC ( 4294967292.)
>>                  VTIL            00002000 00001FFB FFFFFFFC ( 4294967292.)
>>
>>
>> We'll need John Reagan to weigh in here.
>>
>
> On the surface, given the End is less than the Base, it looks like
> the kind of thing that should be marked with an explicit error, instead
> of the more indirect error the linker currently gives.
>
> Simon.
>

Any language can have some helpful protections/reporting, or not.  Assembly on 
any system usually has very few.  That means that any assembly language coders 
had better be rather good at reading their code, and seeing possible errors.

There will always be some assembly language.  The less the better.

I think Robert's comment about a negative length PSECT is both funny, and all 
that's needed to point out the issue.  Good catch.

-- 
David Froble                       Tel: 724-529-0450
Dave Froble Enterprises, Inc.      E-Mail: davef at tsoft-inc.com
DFE Ultralights, Inc.
170 Grimplin Road
Vanderbilt, PA  15486



More information about the Info-vax mailing list