/FUNCTION SUBROUTINE CONVT(A)
/CONVERT FROM 27 BIT TO 23 BIT F. P. FORMAT

ENTRY	CONVT

ABSYM	SHL	7413
ABSYM	MQL	7421
ABSYM	MQA	7501


CON1,	CLA CMA
	DCA	SWITC		/SET SWITCH
	DCA	ACH		/CLEAR FAC
	DCA	ACM
	DCA	ACL
	CALL 1,	IFAD		/LOAD FAC
CONVT,	ARG	0	/ALSO ENTRY POINT
	ISZ	SWITC		/IS SWITCH SET?
	JMP	CON1		/NO
	INC	CONVT#
	INC	CONVT#
	TAD	ACM
	MQL
	TAD	ACH		/LOAD UP REGISTERS
	SNA			/IS IT ZERO?
	JMP	CZRO		/YES
	AND	(7
	SHL
	  7			/SHIFT LEFT
	DCA	AC1
	MQA
	DCA	AC2
	TAD	ACL
	MQL
	SHL
	  7			/SHIFT REST LEFT
	TAD	AC2
	DCA	AC2
	TAD	ACH		/GET EXP.
	AND	(3770
	CLL RTR
	RAR
	TAD	(7600
	DCA	ACL		/STORE EXP.
	MQA			/ROUND IF NEEDED
	SPA CLA
	ISZ 	AC2
	JMP 	CON2
	ISZ	AC1
	TAD 	AC1
	SMA CLA
	JMP	CON2
	CLA CLL CML RTR
	DCA	AC1
	ISZ	ACL
CON2,	TAD	ACH
	SMA CLA			/IS FAC NEGATIVE
	JMP	CEX		/NO
	TAD	AC2
	CLL CIA
	DCA	AC2
	CML
	RAL
	TAD	AC1
	CIA
	DCA	AC1
CEX,	TAD	AC1
	DCA	ACH
	TAD	AC2
	DCA	ACM
	RETRN	CONVT

CZRO,	DCA	ACL
	DCA	ACM
	DCA	ACH
	RETRN	CONVT

AC1,	0
AC2,	0
SWITC,	0

END
