# SubmitVDL

Submits a VDL for approval by the system.

### Synopsis

`Item SubmitVDL (VDLEntry *VDLDataPtr,int32 length,int32 type)`

### Description

This call accepts an absolute VDL specified by the VDLDataPtr argument and proofs it for use in the 3DO system. As part of the approval process, the VDL is copied into system data space and therefore can't be directly modified by the application after the call to `SubmitVDL()`.

### Arguments

VDLDataPtr
  Pointer to the VDL to be approved by the system.

length
  The total length of the VDL in words.

type
  The type of the VDL being submitted (currently, only VDLTYPE_FULL is accepted).

### Return Value

This call returns an item number for the VDL or an error code (a negative value) if an error occurs. GRAFERR_PROOF_ERR is returned if the VDL is rejected due to illegal opcodes, bad headers, bad pointers, or illegal control values.

### Implementation

Folio call implemented in Graphics folio V20.

### Associated Files

graphics.h, graphics.lib

### Caveats

Under certain circumstances, the system VDL that is created may need more memory than the VDL list passed in. This can be caused by alignment constraints in the hardware. One way to avoid this problem is to pad every line in the input VDL list to a multiple of four words (but without increasing the length count in the DMA control word).

### See Also

``DisplayScreen`(), ModifyVDL(), SetVDL(), DeleteVDL()`