

Programado por:  	zx_fresh

Ao: 			El siglo pasado

Utilidad: 		Poca, o ninguna?

Licencia:		Gratis. Open source? Ms abierto no puede ser.







Instrucciones

-------------



Programa de 'dibujo' en memoria de los atributos de pantalla (cuadrados 8x8)



Tecla 'INTRO' para elegir el color con el que pintar. Una vez elegido con las teclas del cursor(mover derecha o izquierda), volver a pulsar 'INTRO' para pintar en pantalla.



Teclas 'cursor' para mover en las 4 direcciones.



Tecla '1'para salir del programa y volver al BASIC.











PROGRAMA MEGAMOVE 4 DIRECCIONES

--------------------------------------------------------







	Cargador BASIC

	---------------------

	

	

	10	FOR n=0 TO 7

	20	READ fila: POKE USR "A" + n, fila

	30	NEXT N

	40	DATA BIN 11111111

	50	DATA BIN 10000001

	60	DATA BIN 10000001

	70	DATA BIN 10000001

	80	DATA BIN 10000001

	90	DATA BIN 10000001

	100	DATA BIN 10000001

	110  	DATA BIN 11111111

	120  	CLS

	130  	RANDOMIZE USR 30000	









-------------- CODIGO ASM ------------------ 





		

		;PROGRAMA: MEGAMOVE 4 DIRECCIONES







		;PROGRAMA CONTROLADOR DEL CURSOR



		ORG	30000

		LD	A,56

		LD	(60500),A

		LD	HL,22528

VUELTA		LD	A,(60500)

		LD	B,0

		LD	C,32

		LD	D,A

PON		LD	(HL),249

		LD	A,0

		LD	(23560),A

TECLA		LD	A,(23560)

		CP	8

		JR	Z,MOVIZQDA

		CP	9

		JR	Z,MOVDCHA

		CP	10

		JR	Z,MOVABAJO

		CP	11

		JR	Z,MOVARRIBA

		CP	13

		JR	Z,COLORES

		CP	49			;Tecla '1' para SALIR

		RET	Z

		JR	TECLA

MOVIZQDA	LD	(HL),D

RESTA		DEC	HL

		LD	A,H

		CP	87

		JR	Z,SUMA

		JR	PON

MOVDCHA		LD	(HL),D

SUMA		INC	HL

		LD	A,H

		CP	91

		JR	Z,RESTA

		JR	PON

MOVABAJO	LD	(HL),D

DOWN		ADD	HL,BC

		LD	A,H

		CP	91

		JR	Z,UP

		JR	PON

MOVARRIBA	LD	(HL),D

UP		XOR	A

		SBC	HL,BC

		LD	A,H

		CP	87

		JR	Z,DOWN

		JR	PON



		





		;PROGRAMA DE CREACION DE LA TABLA DE COLORES



COLORES		LD	(HL),D

		PUSH	HL

		LD	HL,16384

		LD	DE,41000

		LD	BC,6912

		LDIR

		LD	A,2

		CALL	5633

		LD	C,1

SEGUNDA		LD	B,0

		LD	A,15

PON1		PUSH	AF

		LD	A,22

		RST	16

		LD	A,C

		RST	16

		LD	A,B

		RST	16

		LD	A,144

		RST	16

		POP	AF

		CP	B

		JR	Z,OTRA

		INC	B

		JR	PON1

OTRA		LD	A,0

		CP	C

		JR	Z,COLOR

		DEC	C

		JR	SEGUNDA

COLOR		LD	B,16

		LD	HL,22528

		LD	A,0

SIGUE		LD	(HL),A

		ADD	A,8

		INC	HL

		DJNZ	SIGUE	









		;PROGRAMA CONTROLADOR DE LA TABLA DE COLORES



		LD	HL,22560

PON2		LD	(HL),255

		LD	A,0

		LD	(23560),A

TEC		LD	A,(23560)

		CP	8

		JR	Z,IZQDA

		CP	9

		JR	Z,DERECHA

		CP	13

		JR	Z,REPOSICION

		JR	TEC

IZQDA		LD	(HL),56

		DEC	HL

		LD	A,L

		CP	31

		JR	Z,ATRAS

		JR	PON2

ADELANTE	LD	L,32

		JR	PON2

DERECHA		LD	(HL),56

		INC	HL

		LD	A,L

		CP	48

		JR	Z,ADELANTE

		JR	PON2

ATRAS		LD	L,47

		JR	PON2

REPOSICION	LD	A,224

		ADD	A,L

		LD	L,A

		LD	D,(HL)

		LD	A,D

		LD	DE,60500

		LD	(DE),A

		LD	HL,41000

		LD	DE,16384

		LD	BC,6912

		LDIR

		POP	HL

		JP	VUELTA		

		

