<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: HP BASIC &amp;amp; $XABFHCDEF in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156107#M14337</link>
    <description>The building of BASIC$STARLET.TLB was changed for OpenVMS V8.3 (both Alpha and I64).  It is now built during the OpenVMS build process and BASIC$STARLET.TLB is shipped with the OS, not with the compiler kit.  Seems something isn't correct.  I just checked and $XABDEF on both my Alpha V8.3 and I64 V8.3-1H1 systems are much smaller than the older $XABDEF on my VAX system (which came from the compiler kit).&lt;BR /&gt;&lt;BR /&gt;Please report this so we can track it.</description>
    <pubDate>Wed, 05 Mar 2008 19:53:30 GMT</pubDate>
    <dc:creator>John Reagan</dc:creator>
    <dc:date>2008-03-05T19:53:30Z</dc:date>
    <item>
      <title>HP BASIC &amp; $XABFHCDEF</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156105#M14335</link>
      <description>Question:  In a BASIC program, is there a way using compiler directives to identify the architecture and selectively include a text library module?&lt;BR /&gt;&lt;BR /&gt;On an Alpha, I have a program that does&lt;BR /&gt;%INCLUDE "$XABDEF" %FROM %LIBRARY "SYS$LIBRARY:BASIC$STARLET.TLB"&lt;BR /&gt;and later does&lt;BR /&gt;FHCXAB(I)::XAB$B_COD = XAB$C_FHC&lt;BR /&gt;&lt;BR /&gt;When I compile on itanium, the reference to XAB$C_FHC fails as the constant is not declared.&lt;BR /&gt;&lt;BR /&gt;On itanium, I see the value declared in $XABFHCDEF in SYS$LIBRARY:BASIC$STARTLET.TBL.  I figure I could do something like:&lt;BR /&gt;&lt;BR /&gt;%IF %DECLARED(%xyzzy)=0 %THEN&lt;BR /&gt;%INCLUDE "$XABDEF" %FROM %LIBRARY "SYS$LIBRARY:BASIC$STARLET.TLB"&lt;BR /&gt;%END %IF&lt;BR /&gt;&lt;BR /&gt;But I don't know what "%xyzzy" should be.  Any suggestions?</description>
      <pubDate>Wed, 05 Mar 2008 18:27:38 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156105#M14335</guid>
      <dc:creator>Garry Fruth</dc:creator>
      <dc:date>2008-03-05T18:27:38Z</dc:date>
    </item>
    <item>
      <title>Re: HP BASIC &amp; $XABFHCDEF</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156106#M14336</link>
      <description>Garry,&lt;BR /&gt;&lt;BR /&gt;What are the versions on BOTH Alpha and Itanium? That sounds like a problem that should be reported.&lt;BR /&gt;&lt;BR /&gt;- Bob Gezelter, &lt;A href="http://www.rlgsc.com" target="_blank"&gt;http://www.rlgsc.com&lt;/A&gt;</description>
      <pubDate>Wed, 05 Mar 2008 19:03:08 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156106#M14336</guid>
      <dc:creator>Robert Gezelter</dc:creator>
      <dc:date>2008-03-05T19:03:08Z</dc:date>
    </item>
    <item>
      <title>Re: HP BASIC &amp; $XABFHCDEF</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156107#M14337</link>
      <description>The building of BASIC$STARLET.TLB was changed for OpenVMS V8.3 (both Alpha and I64).  It is now built during the OpenVMS build process and BASIC$STARLET.TLB is shipped with the OS, not with the compiler kit.  Seems something isn't correct.  I just checked and $XABDEF on both my Alpha V8.3 and I64 V8.3-1H1 systems are much smaller than the older $XABDEF on my VAX system (which came from the compiler kit).&lt;BR /&gt;&lt;BR /&gt;Please report this so we can track it.</description>
      <pubDate>Wed, 05 Mar 2008 19:53:30 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156107#M14337</guid>
      <dc:creator>John Reagan</dc:creator>
      <dc:date>2008-03-05T19:53:30Z</dc:date>
    </item>
    <item>
      <title>Re: HP BASIC &amp; $XABFHCDEF</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156108#M14338</link>
      <description>Bob,&lt;BR /&gt;&lt;BR /&gt;Alpha VMS Version  = OpenVMS V7.3-2&lt;BR /&gt;Itanium VMS Version= OpenVMS V8.3&lt;BR /&gt;&lt;BR /&gt;John,&lt;BR /&gt;&lt;BR /&gt;Indeed there is a big difference between the sizes of $XABDEF on our Alpha 7.3 vs our Itanium 8.3.  I'll get a case open with the support team.  But I suspect now, I need a way to distinguish with a compiler directive, which version of VMS is being used.</description>
      <pubDate>Wed, 05 Mar 2008 22:27:07 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156108#M14338</guid>
      <dc:creator>Garry Fruth</dc:creator>
      <dc:date>2008-03-05T22:27:07Z</dc:date>
    </item>
    <item>
      <title>Re: HP BASIC &amp; $XABFHCDEF</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156109#M14339</link>
      <description>&amp;gt; [...] which version of VMS is being used.&lt;BR /&gt;&lt;BR /&gt;I'm no BASIC user, but if it's possible to&lt;BR /&gt;determine directly whether the item in&lt;BR /&gt;question is defined/declared/whatever, then&lt;BR /&gt;I'd do that instead of trying to deduce it&lt;BR /&gt;from the VMS or compiler version.&lt;BR /&gt;&lt;BR /&gt;In this case, can't you include both modules&lt;BR /&gt;to be sure of getting the critical item?  (Or&lt;BR /&gt;am I missing the point (as often happens)?)</description>
      <pubDate>Wed, 05 Mar 2008 23:00:46 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156109#M14339</guid>
      <dc:creator>Steven Schweda</dc:creator>
      <dc:date>2008-03-05T23:00:46Z</dc:date>
    </item>
    <item>
      <title>Re: HP BASIC &amp; $XABFHCDEF</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156110#M14340</link>
      <description>Garry,&lt;BR /&gt;&lt;BR /&gt;I would recommend just using an %INCLUDE with a logical name.&lt;BR /&gt;&lt;BR /&gt;I would not be shocked if a patch comes out on this one in a relatively short time. In that case, it would be bad to discover that major edits are needed to put things back.&lt;BR /&gt;&lt;BR /&gt;Another possibility, that you can confirm for yourself, is to print out the 7.3-2 and the 8.3 definitions and check if the difference is significant. If there are no real differences, just copy the 7.3-2 TLB to an alternate directory, and define SYS$LIBRARY as a process logical name to pre-pend the additional directory to the search path. That will solve the problem without ANY source changes. It will also be straightforward to remove when the problem is resolved through support.&lt;BR /&gt;&lt;BR /&gt;- Bob Gezelter, &lt;A href="http://www.rlgsc.com" target="_blank"&gt;http://www.rlgsc.com&lt;/A&gt;</description>
      <pubDate>Wed, 05 Mar 2008 23:38:30 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156110#M14340</guid>
      <dc:creator>Robert Gezelter</dc:creator>
      <dc:date>2008-03-05T23:38:30Z</dc:date>
    </item>
    <item>
      <title>Re: HP BASIC &amp; $XABFHCDEF</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156111#M14341</link>
      <description>Just now I compared XABDEF and XABFHC between Alpha V8.2, Alpha 8.3, Itanium 8.3 and Alpha 7.3-1 and they are all pretty much the same.&lt;BR /&gt;&lt;BR /&gt;I don't think it is a 'problem' but I'll be happy to be proven wrong.&lt;BR /&gt;&lt;BR /&gt;In the VERY old days (pre V7) the OpenVMS shipped a humongo XABDEF to capture all XABs. Best I know that had long since been change to this HORRIBLE contruct of a shared XABDEF for the header fields (BNL,COD,NXT) and individual XABxxxDEFs for the details. &lt;BR /&gt;&lt;BR /&gt;So now you need a VARIANT or a COMMON to map the begin and the end. I never liked that. Too tedious.&lt;BR /&gt;&lt;BR /&gt;Have google groups search comp.os.vms for "hein xabdef basic" and you'll see a 2007 topic about that. Ditto try google:hein basic xabdef +site:itrc.hp.com&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;I suspect someone 'helped' the V73.2 system to an Old Basic compiler Startlet to solve a problem back then.&lt;BR /&gt;&lt;BR /&gt;Note... the V8.3 XABFHC is of course different in that it defines the new GBC fields. The old definition will still work.&lt;BR /&gt;&lt;BR /&gt;ready to be proven wrong...&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;Hein.&lt;BR /&gt;</description>
      <pubDate>Thu, 06 Mar 2008 00:06:46 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156111#M14341</guid>
      <dc:creator>Hein van den Heuvel</dc:creator>
      <dc:date>2008-03-06T00:06:46Z</dc:date>
    </item>
    <item>
      <title>Re: HP BASIC &amp; $XABFHCDEF</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156112#M14342</link>
      <description>Yep, Hein has it correct.  You need $XABFHCDEF as well from newer BASIC$STARLET.TLB files (both Alpha and I64).</description>
      <pubDate>Mon, 10 Mar 2008 21:03:47 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156112#M14342</guid>
      <dc:creator>John Reagan</dc:creator>
      <dc:date>2008-03-10T21:03:47Z</dc:date>
    </item>
    <item>
      <title>Re: HP BASIC &amp; $XABFHCDEF</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156113#M14343</link>
      <description>I found my notes back. They suggest the split from a single manually created large XABDEF (which was mighty handy) to multiple SDL generated files was done starting with DECbasic V1.3 in 1998. &lt;BR /&gt;&lt;BR /&gt;TURRIS::DECBASIC:254&lt;BR /&gt;&lt;BR /&gt;fwiw,&lt;BR /&gt;Hein.&lt;BR /&gt;</description>
      <pubDate>Mon, 10 Mar 2008 21:32:27 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156113#M14343</guid>
      <dc:creator>Hein van den Heuvel</dc:creator>
      <dc:date>2008-03-10T21:32:27Z</dc:date>
    </item>
    <item>
      <title>Re: HP BASIC &amp; $XABFHCDEF</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156114#M14344</link>
      <description>In C, there are several predefined macros to help with coding in situations like this.  For instance, I could use __VAXC to select code specific to the VAX architecture.  Granted, it sounds like this is more closely related to the version of Basic or VMS than it is with architecture; in this shop if I could in Basic distinguish between Alpha and Itanium, I could have $XABDEFFHC included conditionally.  The following two-line program compiles fine on our Itanium; but fails to compile on our Alpha.&lt;BR /&gt;&lt;BR /&gt;$ TY TMP.BAS&lt;BR /&gt;        %INCLUDE "$XABDEF" %FROM %LIBRARY "SYS$LIBRARY:BASIC$STARLET.TLB"&lt;BR /&gt;        %INCLUDE "$XABFHCDEF" %FROM %LIBRARY "SYS$LIBRARY:BASIC$STARLET.TLB"&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;CU6: BAS TMP&lt;BR /&gt;&lt;BR /&gt;        %INCLUDE "$XABFHCDEF" %FROM %LIBRARY "SYS$LIBRARY:BASIC$STARLET.TLB"&lt;BR /&gt;.................^&lt;BR /&gt;%BASIC-E-ERRACCLIB, error accessing module $XABFHCDEF in text library SYS$LIBRAR&lt;BR /&gt;Y:BASIC$STARLET.TLB&lt;BR /&gt;-BASIC-E-KEYNOTFND, key not found&lt;BR /&gt;at line number 2 in file MBR_DISK:[CU6]TMP.BAS;3&lt;BR /&gt;%BASIC-E-ENDNOOBJ, MBR_DISK:[CU6]TMP.BAS;3 completed with 1 diagnostic - object &lt;BR /&gt;deleted&lt;BR /&gt;/SWITCHES=NOAUTOCOMP not used - is it misspelled?&lt;BR /&gt;(This warning can be suppressed with /SWITCH=NO_UNUSED_SWIDMP)&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Thu, 13 Mar 2008 16:58:29 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156114#M14344</guid>
      <dc:creator>Garry Fruth</dc:creator>
      <dc:date>2008-03-13T16:58:29Z</dc:date>
    </item>
    <item>
      <title>Re: HP BASIC &amp; $XABFHCDEF</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156115#M14345</link>
      <description>In C, there are several predefined macros to help with coding in situations like this. &lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;No there are not... read on.&lt;BR /&gt;&lt;BR /&gt;&amp;gt;&amp;gt;&amp;gt;  in this shop if I could in Basic distinguish between Alpha and Itanium, &lt;BR /&gt;&lt;BR /&gt;No you should not.&lt;BR /&gt;&lt;BR /&gt;&amp;gt;&amp;gt; I could have $XABDEFFHC included conditionally.&lt;BR /&gt;&lt;BR /&gt;You should be able to include is unconditionally.&lt;BR /&gt;&lt;BR /&gt;There is an XABDEFFHC on for the version of OpenVMS since 7.3-X / DECbasic 1.3 on Alpha, as well as on Itanium.&lt;BR /&gt;&lt;BR /&gt;If there is not one om the particular Alpha system which is being used then is is 99.99% certain to be non-standard, out-of-date library and placed there explicitly.&lt;BR /&gt;&lt;BR /&gt;You can do the exact same thing on Itanium. That would not be a bad thing to do. No worse then the Alpha situation today. There is NO platform dependencies in XAB(FHC)DEF for Alpha/Itanium. They are exactly the same, both conforming to the RMS defitions which are the same.&lt;BR /&gt;&lt;BR /&gt;&amp;gt;&amp;gt; The following two-line program compiles fine on our Itanium; but fails to compile on our Alpha.&lt;BR /&gt;&lt;BR /&gt;The operative word is *our*.&lt;BR /&gt;It will work on any other Alpha.&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;Hein van den Heuvel&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Thu, 13 Mar 2008 20:14:26 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156115#M14345</guid>
      <dc:creator>Hein van den Heuvel</dc:creator>
      <dc:date>2008-03-13T20:14:26Z</dc:date>
    </item>
    <item>
      <title>Re: HP BASIC &amp; $XABFHCDEF</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156116#M14346</link>
      <description>Just adding a bit more information in case someone runs into a similar situation.  The installation kit prompts the user whether or not to create the 'system definitions'.  The default is NO.  Consequently, if you install the new versions of the compiler, and select the default, you get to keep the old definitions.&lt;BR /&gt;&lt;BR /&gt;I'm not sure if this option is shown when installing on a VMS 8.3 machine; where BASIC$STARLET is distributed with OpenVMS.&lt;BR /&gt;&lt;BR /&gt;Somewhere along the line, some coding changes needed to be made with the compiler upgrade.</description>
      <pubDate>Fri, 23 May 2008 21:40:17 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/hp-basic-amp-xabfhcdef/m-p/4156116#M14346</guid>
      <dc:creator>Garry Fruth</dc:creator>
      <dc:date>2008-05-23T21:40:17Z</dc:date>
    </item>
  </channel>
</rss>

