TITLE	SUMAS
 
	ORG	1000
	
 
 
NUM	DEFB	0FF
	DEFB	0FF
 
PAR1	DEFB	0
PAR2	DEFB	0
PAR3	DEFB 	0
PAR4	DEFB	0
PAR5	DEFB	0
 
SAL5	DEFB	0
SAL4	DEFB	0
SAL3	DEFB	0
SAL2	DEFB	0
SAL1	DEFB	0	
 
 
	ORG	0
	JZ	SIG1
	JNZ	SIG1
 
SUMDEC:	PUSH	A
	LD	#0
	ADD	#0
	POP	A
	ADC	X
	ADC	Y
	STO	Y
	LD	#1
	ADD	#0FF
	LD	#9
	SBC	Y
	LD	#0
	ADC	#0
	JZ	REGRE
	LD	Y
	ADD	#6
	SUB	#10
	STO	Y
	LD	#1	
REGRE:	RET	
 
A_1:	SUB	#0
	JZ	REGRE
	SUB	#1
	PUSH	A
	LD	#0
	LDX	PAR1
	LDY	SAL1
	CALL	SUMDEC
	LDX	PAR2
	LDY	SAL2
	CALL	SUMDEC
	LDX	PAR3
	LDY	SAL3
	CALL	SUMDEC
	LDX	PAR4
	LDY	SAL4
	CALL	SUMDEC
	LDX	PAR5
	LDY	SAL5
	CALL	SUMDEC
	POP	A
	JZ	A_1
	JNZ	A_1
 
 
 
SIG1:	LD	#4
	STO	PAR4
	LD	#9
	STO	PAR2
	LD	#6
	STO	PAR1
 
 
	LD	NUM
	AND	#0F0
	SR
	SR
	SR
	SR
	CALL	A_1
	
 
SIG2:	LD	#0
	STO	PAR4
	LD	#2
	STO	PAR3
	LD	#5
	STO	PAR2
	LD	#6
	STO	PAR1
 
 
	LD	NUM
	AND	#0F
	CALL	A_1
 
SIG3:	LD	#0
	STO	PAR3
	LD	#1
	STO	PAR2
	LD	#6
	STO	PAR1
 
 
	LD	NUM+1
	AND	#0F0
	SR
	SR
	SR
	SR
 
	CALL	A_1
	
 
SIG4:	LD	#0
	STO	PAR2
	LD	#1
	STO	PAR1
 
 
	LD	NUM+1
	AND	#0F
 
	CALL	A_1
 
SIG5:	
	LD	SAL1
	ADD	#30
	STO	SAL1
 
	LD	SAL2
	ADD	#30
	STO	SAL2
 
	LD	SAL3
	ADD	#30
	STO	SAL3
 
	LD	SAL4
	ADD	#30
	STO	SAL4
 
	LD	SAL5
	ADD	#30
	STO	SAL5
 
	END
	HALT
	
 

    Source: geocities.com/v.iniestra/apuntes/arq_proc

               ( geocities.com/v.iniestra/apuntes)                   ( geocities.com/v.iniestra)