CD/DVD Burning on Itanium OpenVMS 8.3
This was developed on an Itanium RX2620 with a NEC DVD+/-RW ND-6650A burner (from $show device/full dqa0:)
The SYS$MANAGER:CDRECORD.COM supplied with OpenVMS works find for CD's but fails with DVD's. The critical command to burn a DVD is :
$ MCR CDDVD$CP -i dvd.dsk -o dqa0: -b -s 16 -v
The file SYS$SYSTEM:CDDVD$CP is what is run when the undocumented
command COPY/RECORDABLE_MEDIA is entered. If you enter MCR CDDVD$CP -h
you will get a listing of the options.
To make the process easier I created a directory for the container
files and put the following command procedures in it. The first
four just call CDRECORD.COM
SETUP_CD.COM - Run once to create the cd container and load it to LDA1:
$ @SYS$MANAGER:CDRECORD SETUP CD640.DSK LDA1: CD 1250026
SETUP_DVD.COM - Run once to create the dvd container and load it to LDA1:
$ @SYS$MANAGER:CDRECORD SETUP DVD.DSK LDA1: DVD 9180416
REUSE_CD.COM - Run this to reuse the cd container after it has been burned or unloaded
$ @SYS$MANAGER:CDRECORD REUSE CD640.DSK LDA1: DVD
REUSE_DVD.COM - Run this to reuse the dvd container after it has been burned or reloaded
$ @SYS$MANAGER:CDRECORD REUSE DVD.DSK LDA1: DVD
UNLOAD_LDA1.COM - The just unloads the current container if you want to switch with burning. (Taken from
CRRECORD.COM)
$ LOG_DEVICE = "LDA1:
$ IF F$GETDVI("''LOG_DEVICE'", "MOUNTCNT") .NES. "0"
$ THEN
$ DISMOUNT 'LOG_DEVICE
$ ENDIF
$ LD DISCONNECT 'LOG_DEVICE
BURN_CD.COM;1 - This burns the cd and unloads the container
$ @SYS$MANAGER:CDRECORD WRITE CD640.DSK LDA1: DQA0: 0 0 0 Y
This is the special one:
BURN_DVD.COM;1
$ LOG_DEVICE = "LDA1:
$ IF F$GETDVI("''LOG_DEVICE'", "MOUNTCNT") .NES. "0"
$ THEN
$ DISMOUNT 'LOG_DEVICE
$ ENDIF
$ LD DISCONNECT 'LOG_DEVICE
$ MCR CDDVD$CP -i dvd.dsk -o dqa0: -b -s 16 -v
Notes:
Obviously logicals could be used to point to things. I assume these files are in the default directory.
If you change the size of the CD container, it must be a multiple of 4.
If you change the size of the DVD container, it must be a multiple of 16. If it is larger than the media, it will be truncated
and you will get a warning message when the media is mounted.