=:The OpenVMS Frequently Asked Questions(FAQ)C

The OpenVMS Frequently Asked Questions(FAQ)



 r \ ^  
PreviousContentsIndex

`

14.8 What are the APB boot flag values?



FThe following flags are passed (via register R5) to the OpenVMS Alpha Dprimary bootstrap image APB.EXE. These flags control the particular behaviour of the bootstrap:

 

"
BOOT -FL root,flags 




 

"
     bit      description :     ---   ----------------------------------------------  .      0    CONV      Conversational bootstrap 4      1    DEBUG     Load SYSTEM_DEBUG.EXE (XDELTA) Q      2    INIBPT    Stop at initial system breakpoints if bit 1 set (EXEC_INIT) ?      3    DIAG      Diagnostic bootstrap (loads diagboot.exe) E      4    BOOBPT    Stop at bootstrap breakpoints (APB and Sysboot) G      5    NOHEADER  Secondary bootstrap does not have an image header )      6    NOTEST    Inhibit memory test 9      7    SOLICIT   Prompt for secondary bootstrap file A      8    HALT      Halt before transfer to secondary bootstrap *      9    SHADOW    Boot from shadow set (      10   ISL       LAD/LAST bootstrap 2      11   PALCHECK    Disable PAL rev check halt B      12   DEBUG_BOOT  Transfer to intermediate primary bootstrap ,      13   CRDFAIL       Mark CRD pages bad B      14   ALIGN_FAULTS  Report unaligned data traps in bootstrap A      15   REM_DEBUG   Allow remote high-level language debugger A      16   DBG_INIT    Enable verbose boot messages in EXEC_INIT N      17   USER_MSGS   Enable subset of verbose boot messages (user messages) 1      18   RSM         Boot is controlled by RSM 6      19   FOREIGN     Boot involves a "foreign" disk 




GIf you want to set the boot flags "permanently" use the SET BOOT_FLAGS command, e.g.

 

"
">>> SET BOOT_OSFLAGS 0,1 


k

14.9 What are Alpha console environment variables?



HAlpha systems have a variety of variables with values set up within the GSRM system console. These environment variables control the particular >behaviour of the console program and the system hardware, the Hparticular console interface presented to the operating system, various Gdefault values for the operating system bootstrap, and related control Cmechanisms---in other words, "the environment variables provide an @easily extensible mechanism for managing complex console state."

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

 

"
8AUTO_ACTION ("BOOT", "HALT", "RESTART", any other value 9assumed to be HALT),  BOOT_DEV, BOOTDEF_DEV, BOOTED_DEV, 6BOOT_FILE, BOOTED_FILE, BOOT_OSFLAGS, BOOTED_OSFLAGS, 8BOOT_RESET ("ON", "OFF"), DUMP_DEV, ENABLE_AUDIT ("ON", /"OFF"), LICENSE, CHAR_SET, LANGUAGE, TTY_DEV.  




HOpenVMS Galaxy firmware can add console environment variables beginning @with such strings as LP_* and HP_*, and each particular console :implementation can (and often does) have various sorts of 6platform-specific extensions beyond these variables...

HThe contents of a core set of environment variables are accessable from FOpenVMS using the f$getenv lexical and the sys$getenv system service. D(These calls are first documented in V7.2, but have been around for Dquite a while.) Access to arbitary console environment variables is 1rather more involved, and not directly available.e

14.10 Will OpenVMS run on a NoName AXPpci33?



AInformation on bootstrapping OpenVMS (using Multia files) on the 5(unsupported) NoName AXPpci33 module is available at:

2Tips for using the Multia files with the AXPpci33:y

14.11 How do I reload SRM firmware on a half-flash Alpha system?



CSome of the AlphaStation series systems are "half-flash" Bboxes, meaning only one set of firmware (SRM or AlphaBIOS) can be Aloaded in flash at a time. Getting back to the SRM firmware when ;AlphaBIOS (or ARC) is loaded can be a little interesting...

HThat said, this usually involves shuffling some files, and then getting Ginto the AlphaBIOS firmware update sequence, and then entering "update srm" at the apu-> prompt.

HTo shuffle the files, copy the target SRM firmware file (as200_v7_0.exe Ais current) to a blank, initialized, FAT-format floppy under the filename A:\FWUPDATE.EXE

FFrom the AlphaBIOS Setup screen, select the Upgrade AlphaBIOS option. 3Once the firmware update utility gets going, enter:

 

"
     Apu-> update srm  1           Answer "y" to the "Are you ready...?"       Apu-> quit 




HYou've reloaded the flash. Now powercycle the box to finish the process.

;Also see Section 14.3.g

14.12 Will OpenVMS run on the Alpha XL series?



1No. OpenVMS does not support the Alpha XL series.

BOpenVMS can not, will not, and does not bootstrap on the Alpha XL Aseries. The Alpha XL series was targeted for use (only) with the 'Microsoft Windows NT operating system. 

FFor the list of boxes officially supported by OpenVMS, please see the +OpenVMS Software Product Description (SPD).



GIf you are very lucky, sometimes a particular unsupported Alpha box or Gmotherboard will resemble a supported box sufficiently closely and can Cthus mimic that system and bootstrap. (No such family resemblances Bexist for the XL.) If you are exceedingly lucky, somebody here in EOpenVMS Engineering will have put together a bootstrap kit---such as Ethat for the Multia. (No Miata-like OpenVMS bootstrap kit exists for the XL.)|

14.13 Describe Alpha instruction emulation and instruction subsets?



EThe Alpha architecture is upward- and downward-compatible, and newer Hinstructions are emulated on older platforms, for those cases where the =compiler is explicitly requested to generate the newer Alpha instructions.

DIn particular, OpenVMS Alpha V7.1 and later include the instruction Bemulation capabilities necessary for the execution of newer Alpha ,instructions on older Alpha microprocessors.

DAlpha instructions are available in groups (or subsets). Obviously, Athere is the base instruction set that is available on all Alpha Amicroprocessors. Then, the following are the current instruction Dextension groups (or subsets) that are available on some of various recent Alpha microprocessors:



FThe typical instruction subset that provides the biggest win---and of Fcourse, your mileage may vary---is typically the instruction set that ?is provided by the EV56 and later; specifically, the byte-word =instruction subset. To select this subset, use the following:

 

"
)/ARCHITECTURE=EV56/OPTIMIZE=TUNE=GENERIC 




CThe /ARCHITECTURE controls the maximum instruction subset that the Hcompiler will generally use, while the /OPTIMIZE=TUNE controls both the Hinstruction-level scheduling and also the instructions generated inside Floops---any code resulting from /OPTIMIZE=TUNE that is specific to an Hinstruction subset will be generated only inside loops and will also be F"protected" by an AMASK-based tesst that permits the execution of the <proper code for the particular current Alpha microprocessor.

GTypically /OPTIMIZE=TUNE=GENERIC is the appropriate choice for tuning, Band the /ARCHITECTURE selects the minimum target architecture for *general use throughout the generated code.

Fgenerated for later architectures and instruction subsets will run on Dolder Alpha systems due to the emulation, but if /ARCHITECTURE is a Gsignificant benefit, then the emulation might be a performance penalty.

DPlease see the OpenVMS Ask The Wizard area for the source code of a F(non-privileged) tool that looks at the instruction subsets available Eon the particular Alpha microprocessor that the tool is run on. This Ftool demonstrates the use of the Alpha AMASK and IMPLVER instructions.

14.14 What is the Accuracy of the Alpha Time of Year (BB_WATCH) Clock?



FThe specification for maximum clock drift in the Alpha hardware clock Bis 50 ppm, that's less than ±0.000050 seconds of drift per Gsecond, less than ±0.000050 days of drift per day, or less than D±0.000050 years of drift per year, etc. (eg: An error of one 5second over a day-long interval is roughly 11ppm, or E1000000/(24*60*60).) Put another way, this is .005%, which is around -130 seconds per month or 26 minutes per year.

EThe software-maintained system time can drift more, primarily due to Aother system activity. Typical causes of drift include extensive Ghigh-IPL code (soft memory errors, heavy activity at device IPLs, etc) Fthat are causing the processing of the clock interrupts to be blocked.

kAlso see Section 14.29, Section 4.3.h

14.15 So how do I open up the DEC 3000 chassis?



EAfter removing those two little screws, tilt the back end of the top ,shell upwards---then you can remove the lid.V

14.16 What is byte swizzling?



H"Swizzling" is the term used to describe the operation needed Dto do partial longword (i.e. byte or word) accesses to I/O space on Gthose systems that don't support it directly. It involved shifting the Coffset into an address space by 5 (or 7 for one older system), and CORing this into the base address. It then required the size of the -operation to be ORed into the low order bits.

EThat is, because the EV4 and EV5 CPUs did not bring bits 0 and 1 off Gthe chip, to do programmed I/O for bytes/words, the information on the Hsize/offset of the transfer was encoded into the address data. The data Eitself then had to be shifted into the correct "byte lane" -(i.e. its actual position within a longword).

HThe EV56 CPU supports the byte/word instructions however only some EV56 Hsystems support byte/word accesses to I/O space. Even on an EV56 system Dthat supports byte/word accesses to I/O space, the relevant OpenVMS 6routines do not support byte/word access to I/O space.

HEV6 systems (with the exception of the AlphaServer GS60 and AlphaServer EGS140 series, for reasons of platform compatability) support a flat, byte addressable I/O space.

GIf a device driver uses CRAM or IOC$WRITE_IO/IOC$READ_IO, then OpenVMS Cwill do the right thing without changing the driver - OpenVMS will swizzle and unswizzle as needed.

HTo use byte/word operations on MEMORY, you need to tell the compiler to >use the EV56 or EV6 architecture (/ARCHITECTURE=EV56). Memory Hoperations did not swizzle, but the compiler would do long/quad access, Dand extract/insert bytes as needed. Using /ARCHITECTURE=EV56 allows 9smaller, more efficient byte/word access logic to memory.

HIf the application is directly doing I/O space access across a range of HAlpha systems (like the graphics servers), then the driver will need to Dknow how to do swizzling for old platforms, and byte access for new platforms.t

14.17 What commands are available in the Alpha SRM console?



mIn addition to the normal BOOT commands and such (see Section 14.8 for @some details) and the normal contents of the console HELP text, Goperations such as I/O redirection and floppy disk access are possible at the SRM console prompt:

    F
  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.dat 2   >>> cat env.dat > fat:env.dat/dva0 4   >>> cat conf.dat > fat:conf.dat/dva0 
    
    
    E

  3. You may use the SRM "ls" 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.
v

14.18 How do I switch between AlphaBIOS/ARC and SRM consoles?



GThe specific steps required vary by system. You must first ensure that Hthe particular Alpha system is supported by OpenVMS (see the SPD), that Hall core I/O components (graphics, disk controllers, etc) in the system Eare supported by OpenVMS (see the SPD), and that you have an OpenVMS Hdistribution, that you have the necessary license keys (PAKs), and that +you have the necessary SRM firmware loaded.

GA typical sequence used for switching over from the AlphaBIOS graphics #console to the SRM console follows:

    ?
  1. Press [F2] to get to the AlphaBIOS setup menu.$
  2. Pick the "CMOS Setup..." item.E
  3. Press [F6] to get to the "Advanced CMOS Setup" menu.@
  4. Change the "Console Selection" to "OpenVMS Console (SRM)".H
  5. Press [F10], [F10], then [Enter]  to save your changes.
  6. Power-cycle the system.


FMost Alpha systems support loading both the AlphaBIOS/ARC console and Gthe SRM console at the same time, but systems such as the AlphaStation E255 are "half-flash" systems and do not support the presence of both Dthe AlphaBIOS/ARC and SRM console firmware at the same time. If you Hhave a "half-flash" system, you must load the SRM firmware from floppy, Bfrom a network download, or from a firmware CD-ROM. Following the Hnormal AlphaBIOS or ARC firmware update sequence to the APU prompt, and Gthen explictly select the target console. In other words, power up the Fsystem to the AlphaBIOS or ARC console, use the supplementary options Hto select the installation of new firmware (typically from CD-ROM), and Ethen rather than using a sequence which updates the current firmware:

 

"
    Apu-> update       -or-     Apu-> update ARC     Apu-> verify     Apu-> quit     Power-cycle the system 




FUse the following sequence to specifically update (and load) SRM from 'AlphaBIOS/ARC on a "half-flash" system:

 

"
    Apu-> update SRM     Apu-> verify     Apu-> quit     Power-cycle the system 




AUse the following sequence to specifically update (and load) the 8AlphaBIOS/ARC console from SRM on a "half-flash" system:

 

"
!    >>> b -fl 0,A0 ddcu %    BOOTFILE: firmware_boot_file.exe      Apu-> update ARC     Apu-> verify     Apu-> quit     Power-cycle the system 




HOnce you have the SRM loaded, you can directly install OpenVMS or Tru64 7UNIX on the system. Do not allow Windows NT to write a H"harmless" signature to any disk used by OpenVMS, Tru64 UNIX, Hor Linux, as this will clobber a key part of the disk. (On OpenVMS, you Ecan generally recover from this "harmless" action by using the WRITEBOOT tool.)

GIf you have a "full-flash" system and want to select the SRM Bconsole from the AlphaBIOS or ARC console environment, select the B"Switch to OpenVMS or Tru64 UNIX console" item from the G"set up the system" submenu. Then power-cycle the system. If Gyou have a "full-flash" system with the SRM console and want )to select AlphaBIOS/ARC, use the command:

 

"
   >>> set os_type NT 




and power-cycle the system.

bFor information on acquiring firmware, see Section 14.3. For ;information on OpenVMS license PAKs (for hobbyist use) see …Section 2.7. For information on the Multia, see Section 14.5.

CInformation on enabling and using the failsafe firmware loader for Evarious systems---this tool is available only on some of the various EAlpha platforms---is available in the hardware documentation for the Gsystem. This tool is used/needed when the firmware has been corrupted, and cannot load new firmware.

FThe full list of AlphaBIOS key sequences---these sequences are needed Hwhen using an LK-series keyboard with AlphaBIOS, as AlphaBIOS expects a PC-style keyboard:

 

"
         F1   Ctrl/A          F2   Ctrl/B          F3   Ctrl/C          F4   Ctrl/D          F5   Ctrl/E          F6   Ctrl/F          F7   Ctrl/P          F8   Ctrl/R          F9   Ctrl/T         F10   Ctrl/U      Insert   Ctrl/V      Delete   Ctrl/W   Backspace   Ctrl/H      Escape   Ctrl/[      Return   Ctrl/M    LineFeed   Ctrl/J &   (Plus) +   upselect (some systems) (  (Minus) -   downselect (some systems)         TAB   down arrow    SHIFT+TAB  up arrow 


u

14.19 OpenVMS on the Personal Workstation -a and -au series?



FThough OpenVMS is not supported on the Personal Workstation -a series @platforms, OpenVMS might or might not bootstrap on the platform.

GIf you wish to attempt this, you must ensure that all graphics and all FI/O controllers in the system are supported by OpenVMS. You must also 6ensure that you have the most current firmware loaded.l

14.20 OpenVMS on the Whitebox Windows-Only series?



FThough OpenVMS is not supported on the "Whitebox" series of GAlpha platforms, OpenVMS might or might not bootstrap on the platform. HThese systems were specifically configured, targeted and supported only 7for use with the Microsoft Windows NT operating system.

GOn some of the "Whitebox" systems, the following sequence of Gconsole commands can potentially be used to convert the system over to Dunsupported use by and for OpenVMS Hobbyist users. (But please note Hthat if you wish to attempt this, you must ensure that all graphics and Dall I/O controllers in the system are supported by OpenVMS, and you Dmust ensure that you have the most current firmware loaded. And you ?must realize that the resulting configuration will be entirely unsupported.)

 

"
set os_type vms 2cat nvram  ! too see what is in this, if anything edit nvram 10 set srm_boot on 20 e init 




CIf your nvram has other contents, you will need to change the line Fnumbers (10 and 20) to reflect the contents of your configuration. To Hobtain documentation on the commands of the console editor, enter the ? command within the editor.

DThe above sequence was reportedly tested on the DIGITAL Server 3300 Eseries, a relative of the AlphaServer 800 series. The DIGITAL Server G3300 is not supported by OpenVMS, though the AlphaServer 800 series is @a supported platform. The sequence may or may not work on other Gplatforms, and may or may not work on the DIGITAL Server 3300 platform.

;Also see Section 5.32.n

14.21 OpenVMS and Personal Workstation IDE bootstrap?



COpenVMS will boot and is supported on the Personal Workstation -au Cseries platforms, though OpenVMS will require a SCSI CD-ROM if the HIntel Saturn I/O (SIO) IDE chip is present in the configuration--- only @the Cypress IDE controller chip is supported by OpenVMS for IDE bootstraps.

GIf you have an -au series system, you can determine which IDE chip you #have using the SRM console command:

 

"
  SHOW CONFIGURATION 




BIf you see "Cypress PCI Peripheral Controller", you can ?bootstrap OpenVMS from IDE storage. If you see "Intel SIO H82378", you will need to use and bootstrap from SCSI. (A procedure Eto load DQDRIVER on the Intel SIO---once the system has bootstrapped Hfrom a SCSI device---is expected to be included as part of the contents 6of the DQDRIVER directory on Freeware V5.0 and later.)

CMany of the -a series systems will include the Intel SIO, and thus cannot bootstrap from IDE.w

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



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

14.23 Please explain the back panel of the MicroVAX II



EThe MicroVAX-series console bulkhead was used with the KA630, KA650, KA655 processors.

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

 

"
*  Triangle-in-circle-paddle: halt enable. 9    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.  6  Three-position-rotary: power-up bootstrap behaviour     arrow: normal operation. !    face: language inquiry mode. *    t-in-circle: infinite self-test loop.  5  Eight-position-rotary: console baud rate selection 5    select the required baud rate; read at power-up. 




FThere are several different bulkheads involved, including one for the @BA23 and BA123 enclosures, and one for the S-box (BA2xx) series Fenclosure. The console bulkheads typically used either the MMJ serial Eline connection, or the MicroVAX DB9 (not the PC DB9 pinout), please ?see the descriptions of these in section WIRES1. For available Aadapters, see Section 14.47.

AAlso present on the console bulkhead is a self-test indicator: a Gsingle-digit LED display. This matches the final part of the countdown Fdisplayed on the console or workstation, and can be used by a service Aorganization to determine the nature of a processor problem. The Dparticular countdown sequence varies by processor type, consult the Chardware or owner's manual for the processor, or contact the local Ehardware service organization for information the self-test sequence Gfor a particular processor module. Note that self-tests 2, 1 and 0 are Hassociated with the transfer of control from the console program to the (booting) operating system.




 r Y \ ^  
PreviousNextContentsIndex