PROG	EQU	0000h
;
;Sample Program for Network Programming
;by Chin-Shiuh Shieh
;2001-12-10
;
;Pin Usage
OUT_PORT	EQU	P0
IN_PORT		EQU	P1
;
	ORG	PROG+0000h
	JMP	START
;Interrupt Vector Table
	ORG	PROG+0003h
	CALL	INT0_ISR
	RETI
	ORG	PROG+000Bh
	CALL	T0_ISR
	RETI
	ORG	PROG+0013h
	CALL	INT1_ISR
	RETI
	ORG	PROG+001Bh
	CALL	T1_ISR
	RETI
	ORG	PROG+0023h
	CALL	UART_ISR
	RETI
;
	ORG	PROG+0030h	
START:
        MOV     PCON,#00000000b	;No Double Baud Rate
        MOV     TMOD,#00100001b	;Timer1 in Mode 2, Timer0 in Mode 1
        MOV     TH1, #0FDh	;Baud Rate = 9600 bps
        MOV     SCON,#01010000b	;UART in Mode 1
        MOV     IE,  #10010000b	;Enable UART
        MOV     TCON,#01000000b	;Run Timer1
LOOP:	JMP	LOOP
;
INT0_ISR:
	RET
T0_ISR:
	RET
INT1_ISR:
	RET
T1_ISR:
	RET
UART_ISR:
        JB      RI,RECEIVED
TRANSMITTED:
        CLR     TI
        RET
RECEIVED:
	MOV	A,SBUF
	MOV	OUT_PORT,A
	MOV	A,IN_PORT
	MOV	SBUF,A
	CLR     RI
        RET
;
        END