==== 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