f. OpenVMS FAQ -&- page 21)b @5z

HP OpenVMS Systems Documentation

 q> $¯ "b,
Content starts here"D

The OpenVMS Frequently Asked Questions (FAQ)


 ‚ l n  
PreviousContentsIndex

d

13.12 Are VAX Hardware Emulators Available?



ESoftware-based emulators of the VAX architecture and for specific VAX6hardware platforms are available from various sources:



@VAX emulators that operate on PC systems and/or on OpenVMS AlphaGsystems are available. For information on an alternative to using a VAX<emulator--- on the available DECmigrate VAX executable imagetranslator---please seeCSection 13.10.


F

Chapter 14
Hardware Information


@

If you are searching for something here, please(consider using the text-format FAQ.

z

14.1 What are the OpenVMS differences among VAX, Alpha, and IA-64?



GIn terms of software, very few. As of OpenVMS V6.1, the OpenVMS VAX andGOpenVMS Alpha platforms achieved "feature parity". Subsequent@work has seen significant enhancements and new features added onGOpenVMS Alpha. OpenVMS I64 started with "feature parity" withDOpenVMS Alpha at the V8.2 release, and OpenVMS Alpha and OpenVMS I64Fare based on and built from the same source pool. (There are low-levelBplatform-specific differences, and there is platform-specific codeBwithin the shared source code pool.) Most applications can just berecompiled and run.

Some differences to be aware of:

    H
  • The default double-precision floating type on OpenVMS Alpha is VAXH G_float, whereas on VAX it is usually D_float. D_float is available onI Alpha, but D_float values are converted to G_float for computations andF then converted back to D_float when stored. Because the G_float typeG has three fewer fraction bits than D_float, some applications may getJ different results. IEEE float types are also available on OpenVMS Alpha.G
  • The preferred floating point format on the Alpha and on the IA-64 architectures is IEEE.C
  • Data alignment is extremely important for best performance onH OpenVMS Alpha and on OpenVMS I64. This means that data items should beB allocated at addresses which are exact multiples of their sizes.D Quadword alignment will offer the best performance, especially forA character values and those smaller than 32 bits. Compilers willE naturally align variables where they can and will issue warnings if# they detect unaligned data items.C
  • HP C is the only C compiler HP offers on OpenVMS Alpha and onB OpenVMS I64, and is a direct descendant of Compaq C and DEC C onI OpenVMS Alpha. HP C is highly compatible with DEC C on OpenVMS VAX, butG does differ somewhat in its syntax and support when compared with theE older VAX C compiler most OpenVMS VAX programmers are traditionallyI familiar with. Read up on the /EXTERN_MODEL and /STANDARD qualifiers toH avoid the most common problems, and see the documentation in the DEC CC for OpenVMS VAX manuals around migrating from VAX C to DEC C. (InC addition to HP C, there have been open-source ports such as Gnu C available for OpenVMS.)E
  • The page size on Alpha and IA-64 systems is variable, but is atH least 8 kilobytes. This can have some effect on applications which useC the $CRMPSC system service as well as on the display of availableA memory pages. The page size is available from $GETSYI using theSYI$_PAGE_SIZE itemcode.


EThere are also a number of manuals which discuss migration to OpenVMSEAlpha and to OpenVMS I64 available in the OpenVMS documentation, bothBin the main documentation and (depending on the age of the manuals0involved) in the archived documentation section.

?As mentioned earlier, more recent OpenVMS Alpha and OpenVMS I64Breleases have added features and support that are not available on5OpenVMS VAX. Salient additions include the following:

    G
  • 64-bit addressing in OpenVMS Alpha V7.0 and later, and on OpenVMS I64.:
  • Multi-host SCSI support (SCSI TCQ) in V6.2 and later&
  • PCI support (platform-dependent)D
  • OpenVMS Galaxy (vPars) support in OpenVMS Alpha V7.2 and later


lPlease see Section 14.4.5 for Intel Itanium terminology.y

14.2 Seeking performance information for Alpha (and VAX) systems?



DHP makes a wide range of performance documents available through itsbFTP and WWW Internet servers (see Section 3.2).

GThe following contain information on Integrity, Alpha and VAX products,Ewith the VAX information largely accessable via archive-related links'at the Alpha-related product web pages:



AThe following sites are reachable via the AlphaServer information?pages, and contain information on various retired VAX and Alpha products:



Also see CPU2000:

k

14.3 Console Commands, Serial Lines, and Controls?



@This section contains information on VAX and Alpha consoles, andDdetails related to console commands, serial lines, and configuration settings.[

14.3.1 What commands are available in the Alpha SRM console?



€In addition to the normal BOOT commands and such (see Section 14.3.5.2 for?some details) and the normal contents of the console HELP text,Foperations such as I/O redirection and floppy disk access are possibleat the SRM console prompt:

    E
  1. Format a FAT floppy, and insert it into the AlphaStation floppy drive.9
  2. Perform the following at AlphaStation SRM Console :

     

    "
    #   >>> show * > env.dat'   >>> show conf > conf.dat1   >>> cat env.dat > fat:env.dat/dva03   >>> cat conf.dat > fat:conf.dat/dva0
    
    
    H

  3. You may use the SRM "ls" command to display the contents of the floppy.

     

    "
    #   >>> ls fat:env.dat/dva0$   >>> ls fat:conf.dat/dva0
    
    
    C

  4. You can now transfer the FAT-format floppy to another system.
N

14.3.2 What does SRM mean? What is PALcode?



GThe abbreviation SRM is derived from the Alpha System Reference Manual,Hthe specification of the Alpha architecture and the associated firmware.

GPALcode is a name assigned to a particular set of functions provided by@the SRM firmware. PALcode is used to provide low-level functionsBrequired by higher-level operating system or application software,@functions which may not be directly available in Alpha hardware.GPALcode is implemented using available Alpha instructions and using theCAlpha processor, though PALcode operates in a mode which simplifiesGprogramming. PALcode is also permitted access to processor-specific and@otherwise internal features of a particular Alpha microprocessorEimplementation; microprocessor-specific features which are not easily3accessable to operating system or application code._

14.3.3 Alpha COM ports and VAX console serial line information?



GThis section contains information on the Alpha COM communication ports,Dand related settings, as well as on the VAX console bulkhead and VAXconsole serial line connection.`

14.3.3.1 Which terminal device name is assigned to the COM ports?



GCOM2 is normally TTA0:. COM1 is normally TTB0: if the Alpha workstationDis booted with the SRM console environment variable set to graphics,-and is OPA0: if the console is set to serial.

FOn the DEC 2000 series (sometimes incorrectly known by the name of theCsystem as sold for Microsoft Windows NT Alpha; as the DECpc 150 AXPGseries) on older OpenVMS Alpha releases, COM1 through COM4 are known asEOPA0: through OPA3:. On all current OpenVMS releases, these ports areGserviced by the terminal driver and not by the console OPDRIVER driver.

EOften the easiest way to determine the OpenVMS terminal name assignedGto the port is to connect a terminal, log in interactively, and look atGthe output of SHOW TERMINAL. (Device names can vary by OpenVMS version,>as well as by the SRM console environment variable selection.)

EFor serial console hardware and related information, and for pin-outs®and related information, please see Section 14.3 and Section 14.26.[

14.3.3.2 Which serial port is the console on the MicroVAX 3100?



9Just to keep life interesting, the MicroVAX 3100 has someE"interesting" console ports behaviours based on the settingFof the BREAK enable switch. When the console is not enabled to respondDto BREAK, MMJ-1 is the console port. MMJ-3 will (confusingly) outputGthe results of the selftest in parallel with MMJ-1. When the console isFenabled to respond to BREAK, MMJ-3 becomes the console port, and MMJ-1Bwill (confusingly) output the results of selftest in parallel withMMJ-3.\

14.3.3.3 How can I set up an alternate console on a VAXstation?



DMost VAXstation series systems and a few Alpha series systems have aFswitch -- most often labeled S3, largely for historical reasons---thatGenables one of the serial lines as the system console device; as OPA0:.DThis disables console output to the graphics display. (For a relatedZbehaviour, please see Section 11.10.)

DAll VAXstation 3100 series systems provide a S3 slide switch, though@the oldest may be missing the cut-out through the enclosure thatCprovides access to the switch. The slide switch is located near theFdiagnostic LED display. (The slide switch is accessable with the cover removed.)

@Various members of the DEC 3000 series Alpha systems also have aBsimilarly-labled S3 switch for selection of the alternate console.

FThe particular port that becomes the console can vary. The printer MMJGconnection is used on all VAXstation 3100 series. On VAXstation II, theEconsole DB9 is used, rather than the graphics display. On most (all?)GAlphaStation series systems, typically the COM1 serial port becomes theconsole.

ćAlso see Section 14.3.6, Section 11.10, and Section 14.17. Beware thewtwo different DB9 pin-outs; see Section 14.27 for related details.

EFor information on registering software license product authorization[keys (PAKs), please see Section 5.6.2.U

14.3.3.4 Please explain the back panel of the MicroVAX II



GThe MicroVAX-series console bulkhead interface was used with the KA630,/as well as with the KA650 and KA655 processors.

BThere are three controls on the console bulkhead of these systems:

 

"
)  Triangle-in-circle-paddle: halt enable.8    dot-in-circle: halt ([break]) is enabled,-                   and auto-boot is disabled.=    dot-not-in-circle: halt ([break]) is disabled,,                   and auto-boot is enabled.5  Three-position-rotary: power-up bootstrap behaviour    arrow: normal operation.     face: language inquiry mode.)    t-in-circle: infinite self-test loop.4  Eight-position-rotary: console baud rate selection4    select the required baud rate; read at power-up.

e


gEThere are several different bulkheads involved, including one for the-?BA23 and BA123 enclosures, and one for the S-box (BA2xx) seriesaEenclosure. The console bulkheads typically used either the MMJ serialpEline connection, or the MicroVAX DB9 (not the PC DB9 pin-out), pleasezsee the descriptions of these in section Section 14.26. For availableQadapters, see Section 14.27.-

t@Also present on the console bulkhead is a self-test indicator: aFsingle-digit LED display. This matches the final part of the countdownEdisplayed on the console or workstation, and can be used by a service @organization to determine the nature of a processor problem. TheCparticular countdown sequence varies by processor type, consult theoBhardware or owner's manual for the processor, or contact the localDhardware service organization for information the self-test sequenceFfor a particular processor module. Note that self-tests 2, 1 and 0 areGassociated with the transfer of control from the console program to the>(booting) operating system.aS

14.3.4 What are Alpha console environment variables?

t

hGAlpha systems have a variety of variables with values set up within the1FSRM system console. These environment variables control the particular=behaviour of the console program and the system hardware, thecGparticular console interface presented to the operating system, variousoFdefault values for the operating system bootstrap, and related controlGmechanisms---in other words, "the environment variables provide anlEeasily extensible mechanism for managing complex console state."o

>EThe specific environment variables differ by platform and by firmware Dversion---the baseline set is established by the Alpha Architecture:

f 
=
"
7AUTO_ACTION ("BOOT", "HALT", "RESTART", any other value<8assumed to be HALT),  BOOT_DEV, BOOTDEF_DEV, BOOTED_DEV,5BOOT_FILE, BOOTED_FILE, BOOT_OSFLAGS, BOOTED_OSFLAGS,t7BOOT_RESET ("ON", "OFF"), DUMP_DEV, ENABLE_AUDIT ("ON",c-"OFF"), LICENSE, CHAR_SET, LANGUAGE, TTY_DEV."

f


>EOpenVMS Galaxy (vPars) firmware can add console environment variablesoAbeginning with such strings as LP_* and HP_*, and each particularaAconsole implementation can (and often does) have various sorts of=Dplatform-specific extensions beyond these variables. These variables/allow both vPars (virtual partitions) and lPars AFi- and lParsb <=ii=(logical partition) support; vPars is a generic name for softr@partitioning constructs such as OpenVMS Galaxy, while lPars is a5generic name applied to hard partitioning constructs.d

gCThe contents of a core set of SRM console environment variables are>@accessible from OpenVMS Alpha using the f$getenv lexical and thesys$getenv systemehAservice. (These calls are first documented in V7.2, but have beenpCpresent in OpenVMS Alpha for many releases.) Access to arbitary SRMnGconsole environment variables is rather more involved, and not directlyrCavailable to application software operating outside of kernel-mode.AO

14.3.5 What are the boot control flag values?

l

lBIntegrity, VAX and Alpha primary bootstraps support flag values; a>mechanism which permits the system manager to perform specific?customizations or site-specific debugging of the OpenVMS systemoCbootstrap. While very similar, there are differences among the bootM3flag implementations for the various architectures.lL

14.3.5.1 What are the I64 IPB boot flag values?

f

eFThe OpenVMS I64 primary bootstrap flags are processed within the IA-647primary bootstrap image IPB.EXE; within the SYS$EFI.SYS.aE structures. The primary bootstrap boot flags are largely parallel tot those of OpenVMS Alpha (see Section 14.3.5.2, though the console and thenE console mechanisms used to specify the boot command, the boot flags,l- and boot command options do differ markedly.o

HYou can specify the boot flags via an EFI environment variable VMS_FLAGSoC, or via the boot alias boot options mechanism, or by appending the .requested boot flags onto the specification ofsVMS_LOADER.EFI. 

y@To set the bootstrap flags environment variable at the EFI shell prompt, use:

n 

"
Shell> SET VMS_FLAGS "0,1"x




When you register an EFIr boot alias (please seeiRe{Section 14.4.5 for Intel Itanium terminology), you will be asked if youfFwant to enter boot options, and what type. To add boot flags to a bootEalias, select Unicode as the boot options type, and enter an SRM-like options string, such as the  ;conversational bootstrap selected by the following example:u

h 
a
"
-flages 0,1 

m


Section 14.3.10.s

iAWhen using VMS_LOADER.EFI to request boot flags, you will want too"specify the invocation as follows:

o 
e
"
"fsn:\efi\vms\vms_loader -flags 0,1




v3The above shows a conversational bootstrap request.n

MkTypical boot flags are listed in Table 14-1.

an   " # a&  r  / = t . m o r s s s  a t   n a i u s o =  / t a  a c e  r l / n
Table 14-1 I64 Conversational Bootstrap Flags
Bit Example Mnemonic Description
 07 0,1s CONV  Conversational bootstrap
 1o 0,2 DEBUGp $ Load SYSTEM_DEBUG.EXE (XDELTA)
 2v 0,4/ INIBPT ( Stop at initial system breakpoints
 16 0,10000  DBG_INIT ' Enable verbose bootstrap messagesl
 17 0,20000l  USER_MSGS * Enable additional bootstrap messages
 17  0,200000  ?w . Request for a bootstrap from USB keydisk
e

"FFor a conversational bootstrap of the OpenVMS I64 root SYS4 associatedBwith the fs2: EFI file system device with full bootstrap messagingenabled, specify:o

U 
s
"
&fs2:\efi\vms\vms_loader -flags 4,30001

w
P

14.3.5.2 What are the Alpha APB boot flag values?

=o

}The flags listed in Table 14-2 are passed (via register R5) to theoFOpenVMS Alpha primary bootstrap image APB.EXE. These flags control the&particular behaviour of the bootstrap.

3 
2
"
BOOT -FL root,flags 

"
4

2p   # t&  e t b o e < t w t o t / a d o h f &  l  p  h  r a e d  s r  o l a w e . s   f o  i l i  e m m O n c n u e  a p a e o e e l : a 8  a p o s ;  ,  c  c  t l i  e s n w d o l d = # a l p t
Table 14-2 Alpha Conversational Bootstrap Flags
Bit Mnemonic Description
 0 CONV  Conversational bootstrap
 1& DEBUG $ Load SYSTEM_DEBUG.EXE (XDELTA)
 2 INIBPT A Stop at initial system breakpoints if bit 1 set (EXEC_INIT)
 3e DIAG / Diagnostic bootstrap (loads diagboot.exe)a
 4m BOOBPT 5 Stop at bootstrap breakpoints (APB and Sysboot)a
 5c  NOHEADER 7 Secondary bootstrap does not have an image headera
 6r NOTEST  Inhibit memory testd
 7c SOLICITp ) Prompt for secondary bootstrap filec
 8w HALT 1 Halt before transfer to secondary bootstrapn
 9o SHADOW  Boot from shadow set
 10 ISLl  LAD/LAST bootstrap
 11  PALCHECK Disable PAL rev check halt
 12  DEBUG_BOOT 0 Transfer to intermediate primary bootstrap
 13 CRDFAIL  Mark CRD pages bad
 14  ALIGN_FAULTS . Report unaligned data traps in bootstrap
 15  REM_DEBUGn / Allow remote high-level language debugger
 16  DBG_INIT / Enable verbose boot messages in EXEC_INITc
 17  USER_MSGSv < Enable subset of verbose boot messages (user messages)
 18 RSMa  Boot is controlled by RSM
 19 FOREIGN " Boot involves a foreign disk


eFIf you want to set the boot flags "permanently", use the SETBOOT_FLAGS command, e.g.:e

 

"
!>>> SET BOOT_OSFLAGS 0,1h

s
e

o


 ‚ i 8l n  
PreviousNextContentsIndex

 

e#h6du˙˙lease see Section 11.10.)

DAll VAXstation 3100 series systems provide a S3 slide switch, though@the oldest may be missing the cut-out through the enclosure thatCprovides access to the switch. The slide switch ismk and other build tools are available on the Freeware. iyH

  • An OpenVMS port of the ht://Dig web search engine is available at:   a
  • A mySQLw.! database client is available at:e ao
    For additional information related to the mySQL port, please search the knews://comp.os.vms/ a newsgroup archives. A MySQL port + is also available on the OpenVMS Freeware.  tF
  • If you need to change the file modification date and are looking? for a utility such as the UNIX touch tool, look at DFU on thei"aFOpenVMS Freeware (DFU SET or simular), or use an existing DCL commandssuch as:

    n 
    S
    "
    5$ SET FILE/PROTECT=(current_protection_mask) [...]*.*w
    
    l
    }

  • A table listing translations between UNIX shell and OpenVMS DCL commands was posted to >news://comp.os.vms/ aFby Christopher Smith some time ago. This page should be available fromGthe google newsgroup archives.
    For information on and the status of/,the OpenOffice port