==== VioDeRegister ====
**Bindings**: [[dereg#C bindings|C]], [[dereg#MASM bindings|MASM]]
This call deregisters a video subsystem previously registered within a session.
//VioDeRegister// ( )
//rc// (**USHORT**) - return
Return code descriptions are:
|0 |NO_ERROR |
|404 |ERROR_VIO_DEREGISTER |
|430 |ERROR_VIO_ILLEGAL_DURING_POPUP |
|465 |ERROR_VIO_DETACHED |
|494 |ERROR_VIO_EXTENDED_SG |
**Remarks**
[[en:ibm:prcp:vio:dereg|VioDeRegister]] must be issued by the same process that issued the previous [[en:ibm:prcp:vio:register|VioRegister]]. After [[en:ibm:prcp:vio:dereg|VioDeRegister]] is issued, subsequent video calls are processed by the Base Video Subsystem.
=== C bindings ===
#define INCL_VIO
USHORT rc = VioDeRegister(VOID);
USHORT rc; /* return code */
=== MASM bindings ===
EXTRN VioDeRegister:FAR
INCL_VIO EQU 1
CALL VioDeRegister
Returns WORD