DataMuseum.dk

Presents historical artifacts from the history of:

Philips Data Systems

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Philips Data Systems

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦f12235349⟧

    Length: 17576 (0x44a8)
    Notes: pts_type(SC)
    Names: »DRDCS1.SC«

Derivation

└─⟦8ac270cab⟧ Bits:30009705 Philips computer tape "LINSIM8-2"
    └─⟦this⟧ »LINSIM82/DRDCS1.SC« 
└─⟦fce1dcf99⟧ Bits:30009704 Philips computer tape "KMD15"
    └─⟦this⟧ »LINSIM/DRDCS1.SC« 

PTS(SC)

	IDENT DRDCS1	REL 1.1 78-04-21  8701 500 40110
			UPDATE #1 77.06.16 JES 
			UPDATE #0 77.01.26 JES 
****************************************************************
* 
*	DRIVER FOR TEST TOOL
* 
*	SIMULATION OF CENTRAL COMPUTER FOR DC TESTS 
* 
******************************************************************
* 
* 
*	ENTRIES 
* 
* 
	ENTRY	DRLGOA	ACTIVATION OF CONTROL 
	ENTRY	DCS1ON	POWER ON RECOVERY 
	ENTRY	DRLGIA	ACTIVATION OF INPUT 
	ENTRY	DRLGUA	ACTIVATION OF OUTPUT
	ENTRY	IHS101	INPUT INTERRUPT 
	ENTRY	IHS102	OUTPUT INTERRUPT
	ENTRY	DWS102	READ DWT
	ENTRY	DWS103	WRIRE DWT 
	ENTRY	DWS101	CONTROL DWT 
	ENTRY	DWS100	*=DWS101
* 
* 
*	EXTERNAL REFERENCES 
* 
* 
	EXTRN	DWTECB	ECBADDRESS
	EXTRN	TENDIO	END OF EVENT
	EXTRN	TDISP	DISPATCHER 
	EXTRN	DISIOE 
	EXTRN	SAVE8	SAVE 8 REGS ON A15 STACK 
	EXTRN	SETIME	SET TIMER 
	EJECT
* 
	EXTRN	DWTST	DWT STATUS 
	EXTRN	DWTOR	DWT ORDER
* 
*	DEVICE ADRESSES 
* 
* 
DALGIN	EQU	/02	INPUT DEVICE ADDRESS 
DALGUT	EQU	/12	OUTPUT DEVICE ADDRESS
* 
* 
* 
*	CHARACTER EQUATES 
* 
* 
Z	EQU	0 
X0P	EQU	/91 
ENQP	EQU	/85
ETXP	EQU	/83
* 
* 
*	RELATIVE ECB EQUATES
* 
* 
ECBBA	EQU	2 
ECBRL	EQU	4 
ECBEL	EQU	6 
ECBRC	EQU	8 
ECBCW	EQU	/A
	EJECT
* 
* 
*	INSTRUCTION EQUATES 
* 
* 
CIOST	EQU	/42C0	CIO START 
CIOH	EQU	/4280	CIO HALT 
SST	EQU	/4AC0	SST 
INR	EQU	/4A00	INR 
OTROUT	EQU	/4200	OUTPUT OTR 
OTRIN	EQU	/4240	OUTPUT SYN PATTERN
* 
* 
* 
*	DEVICE WORK AREA EQUATES
* 
* 
DWTSAV	EQU	/20	REGISTER SAVE AREA 
DWTA4	EQU	DWTSAV+6	A4 SAVE AREA 
DWTA5	EQU	DWTSAV+8	A5,SAVE AREA 
STB	EQU	/1E	RELATIVE STACK BASE 
* 
* 
*	WORK AREAS
* 
* 
SYN	DATA	0	SYNCPATTERN AREA 
RECIND	DATA	0 
TRAIND	DATA	0 
XIDLE	DATA	1	TRANSMITT IDLE INDICATOR 
XCARR	DATA	0	TRANSMITT IDLEING CARRIER IND. 
WATIPO	DATA	0 
WRTIMP	DATA	0	TIMER POINTER 
MESEXP	DATA	0	MESSAGE EXPECTED INDICATOR
BFULL	DATA	0
PBUFIN	DATA	BSTART
PBUFUT	DATA	BSTART
BSTART	EQU	*
	RES	3000 
BEND	EQU	*-2
	EJECT
* 
* 
*DRIVER ACTIVATION* 
* 
*INPUT REQUEST
* 
* 
DRLGIA	DATA	LGINAC	DWT REFERENCE
* 
* 
LGINAC	SUK	A7,1 
	RF(Z)	ENDR	ORDER 01: READ GENERAL
LIA100	ABL	DISIOE	ILLEGAL ORDER 
* 
	EJECT
* 
* 
* END READ REQUEST? 
* 
* 
ENDR	EQU	*
	INH
	LDKL	A5,STB+DWS101 
	LDKL	A6,DWS102 
	LD	A8,DWTECB,A6
	LD	A1,PBUFUT 
ENDR10	CW	A1,PBUFIN 
	RF(E)	ENDR20	NO NEW CHARACTEIN BUFFER
	ADK	A1,2 
	CWK	A1,BEND
	RF(NE)	ENDR15	NOT END OF BUFFER
	LDKL	A1,BSTART 
ENDR15	EQU	*
	LDR*	A2,A1 
	ANKL	A2,/FF00
	RF(NZ)	ENDR30	PCOUNTER OR COMMENT
	LD	A2,BFULL
	SUK	A2,1 
	RF(Z)	ENDR50	BUFFER FULL 
	EJECT
* 
* 
*ORDINARY CHARACTER 
* 
	ST	A1,PBUFUT 
	LDR*	A2,A1	FETCH CHARACTER 
	CF	A5,STORA	STORE IN REQUEST BUFFER
	SUK	A2,/FF 
	RF(E)	ENDR17	COMPLETE REQUEST ON MARK HOLD 
	LD	A2,ECBEL,A8 
	CW	A2,ECBRL,A8 
	RB(NE)	ENDR10	NOT END OF REQUESTED LINE
ENDR17	LDK	A1,0 
ENDEND	CF	A15,TENDIO
	ABL	TDISP
* 
* NO ENDING OF REQUEST
* 
ENDR20	EQU	*
	CF	A15,SETIME
	DATA	ENDR,5
	CM	BFULL 
	ABL	TDISP
	EJECT
* 
* 
ENDR30	EQU	*
	LD	A3,ECBEL,A8 
	RB(NZ)	ENDR17	COMPLETE PREVIOUS REQUEST
	ST	A1,PBUFUT	POLL/COMMENT
	LDR*	A2,A1 
* 
* COMMENT 
* 
ENDR40	EQU	*
	CF	A5,STORA
	LDKL	A1,/2000	RETURN CODE
	RB	ENDEND
* 
* BUFFER FULL 
ENDR50	EQU	*
	LD	A3,ECBEL,A8 
	RB(NZ)	ENDR17
	IM	BFULL 
	LDKL	A2,/240 
	RB	ENDR40
	EJECT
* 
* 
* STORE CHATACTER IN A2 IN REQUEST BUFFER 
* 
* 
STORA	LD	A3,ECBBA,A8
	AD	A3,ECBEL,A8 
	SCR	A2,A3
	IM	ECBEL,A8
	RTN	A5 
	EJECT
* 
* 
*OUTPUT 
* 
* 
DRLGUA	DATA	LGUTAC
* 
* 
LGUTAC	SUK	A7,6 
	RB(NZ)	LIA100	ILLEGAL ORDER
* 
* 
*	WRITE REQUEST 
* 
* 
LGUT10	EQU	*
	LDK	A5,STB 
	ADKL	A5,DWS103	LOAD STACKPOINTER 
	LDKL	A6,DWS103 
	LD	A8,DWTECB,A6
	LD	A1,ECBCW,A8 
	ST	A1,TRA300	SAVE TIMEOUT VALUE
	ABL	TRAMIT 
	EJECT
* 
* 
*	CONTROL COMMANDS
* 
* 
DRLGOA	DATA	LGOPAC	DWT REFERENCE
* 
* 
LGOPAC	EQU	*
	LDK	A5,STB 
	ADKL	A5,DWS101 
	ST	A5,DWTA5+DWS101	STORE STACK POINTER 
	LD	A8,DWTECB,A6
	LD	A7,ECBCW,A8 
	ANK	A7,/F
	LDR	A1,A7
	SUK	A1,1 
	RF(Z)	OPEN	CW=1
	SUK	A1,1 
	RF(Z)	RESET	CW=2 
	SUK	A1,2 
	RF(Z)	ENDW	CW=4
	SUK	A1,1 
	RF(Z)	SPESYN 
	SUK	A1,1 
	RF(Z)	IDLE	CW=6
	RB	LIA100	ILLEGAL ORDER
	EJECT
* 
* 
*   SET CARRIER ON/OFF IN IDLE TRANSMIT 
* 
* 
IDLE	LD	A1,XCARR	GET CARRIER INDICATOR
	XRK	A1,1	SHIFT IDLEING MODE
	ST	A1,XCARR	SAVE NEW MODE
	RF(NZ)	IDLE20	JMP IF CARRIER SHOULD BE KEPT ON 
	LDKL	A2,/246	COMMENT:IDLE: CARRIER OFF 
	CF	A5,STORE
	LD	A1,XIDLE	IDLE?
	RF(Z)	IDLE10	NO! 
	LDK	A2,0 
	CIO	A2,0,DALGUT	STOP TRANSMITTER 
	SST	A2,DALGUT
IDLE10	RF	OP250 
IDLE20	LDKL	A2,/247	COMMENT: IDLE:CARRIER ON
	CF	A5,STORE
	LD	A1,XIDLE	IDLE?
	RF(Z)	IDLE30	NO! 
	CF	A5,STOUT	START TRANSMITTER
IDLE30	EQU	*
	RF	OP250	RETURN TO DISPATCHER
	EJECT
* 
* 
*	OPEN RECEIVER 
* 
* 
OPEN	LD	A1,DWS102+2	GET STATUS
	ANK	A1,1 
	RF(NZ)	OP250	ALREADY OPENED
	LDK	A5,STB	LOAD STACK POINTER
	ADKL	A5,DWS102 
	CF	A5,DISCON	HALT COMMUNICATION
	CF	A5,STINP	START CHLC RECEIVER
	IM	DWS102+2	INDICATE OPEN
	CF	A5,OP200	PUT ACTION ON STACK
	RF	REC010	INTERRUPT HANDLING 
OP200	ST	A5,DWTA5+DWS102	STORE STACK POINTER
	LDK	A1,2 
	IM	DWS102,A1 
	LDKL	A1,BSTART 
	ST	A1,PBUFIN	RESET BUFFER
	ST	A1,PBUFUT 
OP250	LDK	A1,0
	CF	A15,TENDIO
	ABL	RETURN	GO TO DISPATCHER
	EJECT
* 
* 
*HALT COMMUNICATION AND DISCONECT MODEM 
* 
* 
DISCON	EQU	*
* 
	CIO	A2,0,DALGIN
	CIO	A2,0,DALGUT
	SST	A2,DALGIN
	RF(NA)	CLO050
	SST	A2,DALGUT
	RF(A)	CLO060 
CLO050	HLT
CLO060	EQU	*
	RTN	A5 
* 
* 
*	SPECIFY SYNC PATTERN
* 
SPESYN	EQU	*
	LD	A8,DWTECB,A6
	LD	A1,ECBBA,A8 
	ST	A1,SYN	STORE SYNCPATTERN
	RB	OP250 
	EJECT
* 
* 
*RESET BUFFER 
* 
* 
RESET	EQU	* 
	LDKL	A1,BSTART 
	ST	A1,PBUFIN 
	ST	A1,PBUFUT 
	LDKL	A2,/241	COMMENT: BUFFER RESET 
	CF	A5,STORE
	LDK	A1,/0
	ST	A1,BFULL	RESET,BFULL
	LDK	A1,0 
	CF	A15,TENDIO
	ABL	TDISP
	EJECT
* 
* 
*END WRITE REQUEST
* 
* 
ENDW	EQU	*
	LDK	A1,/2	RETURN CODE
	CF	A15,TENDIO
ENDW01	EQU	*
	LDK	A1,/80	REQUEST ABORT 
ENDW05	EQU	*
	LDKL	A6,DWS103 
	CM	TRAIND
	CM	MESEXP
ENDW1	EQU	* 
	CF	A15,TENDIO
	ABL	TDISP
	EJECT
* 
* 
*	RECEIVE MODULE
* 
* 
RECEIV	EQU	*
	LDK	A5,STB 
	ADKL	A5,DWS102	LOAD STACK POINTER
	CF	A5,READ 
REC010	EQU	*
	CWK	A2,/FF 
	RB(E)	RECEIV 
	IM	RECIND	BUSY RECEIVING 
	LD	A1,TRA300 
	RF(Z)	REC050	NO TIMING 
	LD	A3,WRTIMP 
	RF(Z)	REC020 
	CM*	WRTIMP 
REC020	EQU	*
REC050	EQU	*
	LDR	A3,A2
	LDKL	A2,/201 
	CF	A5,STORE	STORE COMMENT T: 
	LDR	A2,A3
	CF	A5,STORE
REC100	EQU	*
	CF	A5,READ 
REC130	EQU	*
	CF	A5,STORE	STORE NORMAL CHARACTER 
	CWK	A2,/FF	MARK HOLD ? 
	RB(NE)	REC100
	LDK	A2,0 
	CIO	A2,0,DALGIN	HALT INPUT 
	SST	A2,DALGIN
	LD	A1,MESEXP 
	RF(Z)	REC200	UNEXPECTED MESSAGE
REC150	EQU	*
	CM	MESEXP
	LDKL	A6,DWS103 
	LD	A1,2,A6 
	RF(N)	REC200	NO REQUEST WAS THERE
	LDK	A1,0 
	CF	A15,TENDIO	COMPLETE WRITE REQUEST 
	CM	TRAIND
REC200	EQU	*
	CM	RECIND	NOT BUSY RECEIVING 
	LD	A1,TRAIND 
	RF(Z)	REC300	NO WRITE ON QUEUE 
	LD	A5,WATIPO 
	RF(Z)	REC220 
	CM*	WATIPO 
REC220	EQU	*
	ABL	LGUT10 
REC300	EQU	*
	LDKL	A6,DWS102 
	CF	A5,STINP	RESTART RECEIVER 
	RB	RECEIV	ENTER IDLE RECEIVE 
	EJECT
* 
* 
*	TRANSMIT MODULE 
* 
* 
TRAMIT	EQU	*
	IM	TRAIND	INDICATE TRANSMISSION
	LD	A1,RECIND 
	RF(Z)	TRA100	NOT BUSY RECEIVING
	CF	A15,SETIME
	DATA	ENDW01,50 
	ST	A4,WATIPO 
	ABL	TDISP	WAIT MAX 5 SECONDS FOR RECEIVER
TRA100	EQU	*
	LDK	A2,0 
	CIO	A2,0,DALGIN
	SST	A1,DALGIN
	LDKL	A6,DWS103 
	LD	A3,ECBRL,A8	GET LENGTH
	LD	A4,ECBBA,A8	GET BUFFER ADDRESS
	LDKL	A2,/200 
	CF	A5,STORE	STORE COMMENT C: 
	CF	A5,STOUT	START TRANSMITTER
	CM	XIDLE	LEAVE IDLE MODE 
	CF	A5,RETURN	WAIT FOR INTERRUPT
TRA200	EQU	*
	LDK	A2,0 
	LCR	A2,A4	GET CHARACTER FROM BUFFER
	CF	A5,STORE	STOTE IN LOGG BUFFER 
	CF	A5,WRITE	TRANSMIT HIM 
	ADK	A4,1 
	SUK	A3,1 
	RB(NZ)	TRA200	NOT END OF BUFFER
	LD	A1,XCARR	CARRIER ON WHEN IDLEING? 
	RF(NZ)	TRA250
	LDK	A2,0 
	CIO	A2,0,DALGUT
	SST	A1,DALGUT
TRA250	IM	XIDLE	ENTER IDLE MODE 
	LD	A1,TRA300 
	RF(Z)	TRA400	NO TIMING 
	RB(N)	REC150	IMMEDIATE COMPLETION
	CF	A15,SETIME
	DATA	TRA500
TRA300	EQU	*
	DATA	0 
	ST	A4,WRTIMP 
TRA400	EQU	*
	IM	MESEXP
	CM	TRAIND
	ABL	REC300	START RECEIVER
TRA500	EQU	*
	INH
	CM	TRA300
	LDKL	A2,/245 
	LDK	A5,STB 
	ADKL	A5,DWS103 
	CF	A5,STORE
	LDKL	A1,/100	SET RETURN CODE 
	ABL	ENDW05 
	EJECT
*********************************************** 
* 
*WRITE ONE CHARACTER
* 
WRITE	EQU	* 
	OTR	A2,0,DALGUT
	ABL(NA)	STATUS	NOT ACCEPTED OTR
	RF	READ
************************************************
* 
*READ ONE CHARACTER 
* 
* 
READ	EQU	*
RETURN	EQU	*
	ST	A3,LCA3 
	ST	A4,LCA4 
	ST	A5,LCA5 
	ST	A6,LCA6 
	ST	A7,LCA7 
	ST	A8,LCA8 
	ABL	TDISP	GO TO DISPATCHER 
	EJECT
* 
* 
*STORE ONE CHARACTER
* 
* 
STORE	EQU	* 
	STR	A1,A15 
	STR	A2,A15 
	LD	A1,BFULL
	RF(NZ)	STOR20
	LD	A1,PBUFIN 
	ADK	A1,2 
	CWK	A1,BEND
	RF(NE)	STOR10	NOT END OF RING BUFFER 
	LDKL	A1,BSTART 
STOR10	CW	A1,PBUFUT 
	RF(E)	STOR30	BUFFER FULL 
STOR15	STR	A2,A1	STORE CHAR.
	ST	A1,PBUFIN 
STOR20	LDR*	A2,A15
	LDR*	A1,A15
	RTN	A5 
* 
*BUFFER FULL
* 
STOR30	EQU	*
	IM	BFULL 
	RB	STOR20
	EJECT
* 
* 
*RESTART INPUT
* 
* 
STINP	EQU	* 
	LD	A2,SYN
	ADKL	A2,/100 
	CIO	A2,1,DALGIN
	RF(NA)	STI100
	RTN	A5 
STI100	RTN	A5		HW ERROR 
* 
* 
*	START CHLC TRANSMITTER
* 
* 
STOUT	EQU	* 
	INH
	CIO	A2,1,DALGUT	START TRANSMITTER
	RF(NA)	STO100
	RTN	A5 
STO100	RTN	A5		HW ERROR 
	EJECT
* 
* 
*	RESTORE REGISTERS A3 - A8 
* 
* 
LDREG	LDKL	A3,0 
LCA3	EQU	*-2
	LDKL	A4,0
LCA4	EQU	*-2
	LDKL	A5,0
LCA5	EQU	*-2
	LDKL	A6,0
LCA6	EQU	*-2
	LDKL	A7,0
LCA7	EQU	*-2
	LDKL	A8,0
LCA8	EQU	*-2
	ADKL	A15,4 
	ABR*	A15 
	EJECT
**********************************************************
* 
*     CHLC TRANSMITTER INTERRUPT
* 
**********************************************************
IHS102	CF	A15,SAVE8 
	CF	A15,LDREG	RESTORE A3 - A8 
	LD	A1,XIDLE	IN IDLE MODE?
	RF(Z)	IHUT10	NO! 
	LDKL	A2,/FFFF	TRANSMITT MARK HOLD
	ABL	WRITE
IHUT10	EQU	*
	ADK	A5,4 
	ABR*	A5
* 
* 
********************************************************* 
* 
*     CHLC RECEIVER INTERRUPT 
* 
********************************************************
IHS101	CF	A15,SAVE8 
	CF	A15,LDREG	RESTORE A3 - A8 
	INR	A2,0,DALGIN
	RF(NA)	INSST 
	ADK	A5,4 
	ABR*	A5
	EJECT
* 
* 
*	STATUS INT ERRUPT FROM RECIEVER 
* 
* 
INSST	EQU	* 
	SST	A2,DALGIN
	RF(A)	INS110 
	HLT		HW ERROR
INS110	EQU	*
	LD	A1,RECIND 
	RF(Z)	INS150 
	LDKL	A2,/FF	END OF RECEPTION 
	ABL	REC130 
INS150	EQU	*
	LDK	A5,STB 
	ADR	A5,A6	RELOAD STACK 
	ANK	A2,1 
	RF(NZ)	INS210	MODEM NOT READY
* 
* RESYNC
* 
	ABL	REC300	RESTART RECEIVER
	EJECT
* 
*MODEM NOT READY
* 
INS210	LDKL	A2,/244	COMMENT CODE
INS220	CF	A5,STORE
	LDKL	A1,/FFFD
	ANS	A1,DWTST,A6	INDICATE CLOSED
	LDK	A2,0 
	CIO	A2,0,DALGIN
	SST	A2,DALGIN
	CF	A5,STINP	START INPUT
	CF	A5,READ 
	LDK	A1,2 
	IM	DWS102,A1	INDICATE RECEIVER OPEN
INS230	EQU	*
	ABL	RECEIV 
	EJECT
********************************************************
* 
*     STATUS INTERRUPT FROM CHLC TRANSMITTER
* 
********************************************************
STATUS	EQU	*
	SST	A2,DALGUT
	RF(A)	STA110 
	HLT		HARDWARE ERROR
STA110	EQU	*
	LDR	A1,A2
	CF	A15,TENDIO
	ABL	RETURN 
	EJECT
* 
* 
* POWER ON RECOVERY 
* 
* 
DCS1ON	EQU	*
	INH
	LDK	A1,1 
	ST	A1,XIDLE
	LD	A1,XCARR
	RF(Z)	POW020 
	CIO	A2,1,DALGUT	START TRANSMITTER
POW020	EQU	*
	LDK	A1,0 
	ST	A1,BFULL
	LDKL	A1,BSTART 
	ST	A1,PBUFIN 
	ST	A1,PBUFUT 
	RTN	A15
	EJECT
* 
* 
*	LOG OUTPUT CHLC 1 
* 
* 
DWS103	DATA	/12	DEVICE ADDRESS
	DATA	/8000	STATUS
	DATA	0	ECB ADDRESS 
	DATA	0	ORDER 
	DATA	DRLGUA	DRIVER ADDRESS BLOCK 
	DATA	0	TASK TABLE ADDRESS
	DATA	0	WAIT/ACTIVATE INDICATOR 
	DATA	0	TASK QUEUE FOR THIS DEVICE
	RES	8	SUBROUTINE STACK 
	RES	5	SAVE AREA FOR A1 - A5
	DATA	DWS103	THIS DWT ADDRESS FOR A6
	DATA	DWS102	CORRESPONDING INPUT DWT IN A7
	RES	1	SAVE AREA FOR A8 
	DATA	0,0,0,0	WORK AREA 
* 
	EJECT
* 
* 
*	LOG INPUT CHLC 1
* 
* 
DWS102	DATA	/02	DEVICE ADDRESS
	DATA	/8000	STATUS
	DATA	0	ECB ADDRESS 
	DATA	0	ORDER 
	DATA	DRLGIA	DRIVER ADDRESS BLOCK 
	DATA	0	TASK TABLE ADDRESS
	DATA	0	WAIT/ACTIVATE INDICATOR 
	DATA	0	TASK QUEUE FOR THIS DEVICE
	RES	8	SUBROUTINE STACK 
	RES	5	SAVE AREA FOR A1 - A5
	DATA	DWS102	CORRESPONDING INPUT DWT IN A7
	DATA	DWS103	THIS DWT ADDRESS FOR A6
	RES	1	SAVE AREA FOR A8 
	DATA	0,0,0,0	WORK AREA 
* 
	EJECT
* 
* 
*	LOG CONTROL IO
* 
* 
DWS100	EQU	*
DWS101	DATA	/02	DEVICE ADDRESS
	DATA	/8000	STATUS
	DATA	0	ECB ADDRESS 
	DATA	0	ORDER 
	DATA	DRLGOA	DRIVER ADDRESS BLOCK 
	DATA	0	TASK TABLE ADDRESS
	DATA	0	WAIT/ACTIVATE INDICATOR 
	DATA	0	TASK QUEUE FOR THIS DEVICE
	RES	8	SUBROUTINE STACK 
	RES	3	SAVE AREA FOR A1 - A5
	DATA	DWS102	INPUT DWT
	RES	1	SAVE A5
	DATA	DWS101	THIS DWT ADDRESS FOR A6
	DATA	DWS103	CORRESPONDING DWT IN A7
	RES	1	SAVE AREA FOR A8 
	DATA	0,0,0,0	WORK AREA 
* 
* 
* 
* 
	END

Full view