CONTENTS Title Page Copyright Page Preface 1 Introduction 1.1 Overview of VAX MMG Software 1.2 RV64 Jukebox Subsystem 1.3 Dual-Sided Optical Media 2 Overview of the VAX MMG Run-Time Library 2.1 VAX MMG Run-Time Library 2.1.1 VAX MMG Run-Time Library Code 2.1.2 VAX MMG Database 2.1.3 VAX JCS Run-Time Library 2.1.4 VAX MMG Hook to VMS Mount Utility 2.2 Programming Languages Supported 2.3 VAX MMG Run-Time Library Routine Categories 2.3.1 Changing the Status of Objects 2.3.2 Initializing Cartridges for Use 2.3.3 Moving Cartridges 2.3.4 Displaying Database Information 2.3.5 Maintaining Database Integrity 2.3.6 Locking and Unlocking to Control Access 2.4 Summary of VAX MMG Run-Time Library Routines 2.5 Process Security and Privileges 2.6 Linking with the VAX MMG Run-Time Library 3 VAX MMG RTL Format and Conditions Returned 3.1 Naming Conventions 3.2 Call Formats 3.3 Arguments 3.4 Condition Values Returned 3.5 Documentation Format of Routines 4 Developing New Applications 4.1 Rules and Restrictions for Using VAX MMG Routines 4.2 Using Dual-Sided Cartridges 4.3 Using VAX MMG Software on a VAXcluster System 4.4 Types of Calls to VAX MMG RTL Routines 4.4.1 Calls that Access the VAX MMG Database 4.4.2 Calls that Access the Jukebox 4.5 Co-existence of VAX MMG and VAX JCS Applications 4.6 Using Lock Routines 4.6.1 MMG$LOCK_JUKEBOX Routine 4.6.2 MMG$LOCK_CARTRIDGE Routine 4.6.3 JCS$LOCK Routine 4.7 Processing a VMS Mount Utility Request 4.7.1 Mount Request for a Specific Drive 4.7.2 Mount Request for Generic Drive 4.7.3 Nonlabeled Mount Request 5 Examples of Calling Routines 5.1 Add Cartridge and Initialize Program 5.2 Modifying Database Attributes of a Cartridge Program VAX MMG Run-Time Library Reference Section MMG$ADD_CARTRIDGE MMG$DELETE_CARTRIDGE MMG$DELETE_DRIVE MMG$DELETE_DRIVE User Confirm Procedure MMG$DELETE_JUKEBOX MMG$END_SHOW MMG$INITIALIZE_VOLUME MMG$INSERT MMG$LOAD MMG$LOCK_CARTRIDGE MMG$LOCK_JUKEBOX MMG$MODIFY_CARTRIDGE MMG$MODIFY_CARTRIDGE User Confirm Procedure MMG$REINITIALIZE_VOLUME MMG$REMOVE MMG$SHOW_CARTRIDGE MMG$SHOW_CARTRIDGE User Exit Procedure MMG$SHOW_DRIVE MMG$SHOW_DRIVE User Exit Procedure MMG$SHOW_JUKEBOX MMG$SHOW_JUKEBOX User Exit Procedure MMG$SHOW_VERSION MMG$SHOW_VOLUME MMG$SHOW_VOLUME User Exit Procedure MMG$UNLOAD_DRIVE MMG$UNLOCK_CARTRIDGE MMG$UNLOCK_JUKEBOX MMG$VERIFY MMG$VERIFY_DRIVE A VAX MMG RTL Condition Values Returned B Confirm and Exit Routines B.1 MMG$USER_CONFIRM_DELETE B.2 MMG$USER_CONFIRM_MODIFY B.3 MMG$USER_EXIT_SHOW_CART B.4 MMG$USER_EXIT_SHOW_DRV B.5 MMG$USER_EXIT_SHOW_JBX B.6 MMG$USER_EXIT_SHOW_VOL Glossary attribute . . . optical cartridge orientation . . . volume volume label . . . WORM EXAMPLES 5-1 VAX C Program for Adding a Cartridge to VAX MMG Database and Initializing 5-2 VAX C Program for Modifying Database Attributes of a Cartridge B-1 MMG$USER_CONFIRM_DELETE B-2 MMG$USER_CONFIRM_MODIFY B-3 MMG$USER_EXIT_SHOW_CART B-4 MMG$USER_EXIT_SHOW_DRV B-5 MMG$USER_EXIT_SHOW_JBX B-6 MMG$USER_EXIT_SHOW_VOL FIGURES 2-1 Components of VAX Media Manager Software 5-1 Output for Example 5-2 TABLES 2-1 MMG$MSG Files 2-2 VAX MMG Run-Time Library Routine Functions 2-3 Summary of VAX MMG Run-Time Library Routines 3-1 Arguments for VAX MMG Routines 3-2 Main Headings in the Documentation Format for Run-Time Library Routines 4-1 Drive Selection Table A-1 VAX MMG Condition Values Returned