 

jumps
.386p
CODE32 SEGMENT PARA PUBLIC USE32
ASSUME cs:CODE32, ds:CODE32

		include	design.mak

		include pmode.inc
		include	timer.ext
		include	rotatem.ext

		EXTRN	sound	:BYTE
		PUBLIC 	part2
		liii	dd	0
		
		mama	db	0
		mode	dw	0
		bysk	db 	0

make_me_happy	PROC
		mov	zdelta,280 ;+100 ;300
		mov	angleX,0
		mov	inc_xxx,0
		mov	inc_yyy,0
		mov	inc_zzz,0
		lea	edi,pixels
		mov	adr_pixels,edi
		lea	edi,faces
		mov	adr_faces,edi
		mov	number_p,number_of_points
		mov	number_f,number_of_faces
		call	calc_nor
		;	KOLORY
		mov	ecx,number_of_faces/2
 		mov	edi,adr_colors
	gg:	mov	byte ptr [edi],0 ;64
		mov	byte ptr [edi+1],64 ;64
		add	edi,2
		loop	gg
		mov	byte ptr [edi],64
 		ret
make_me_happy	ENDP

part2		PROC
		lea	esi,pal2
		call	pal_set

		call	make_me_happy 
		lea	esi,to	
		lea	edi,screen
		call	copyEkran
		call	reset_ramki
		mov	d_x,320+50
	ptla3:	
		cmp	mama,0
		je	wjazd
		cmp	mama,1
		je	krka
		cmp	mama,2
		je	krka2
		cmp	mama,3
		je	wyjazd
	nexxx:
		call	reset_ramki
		lea	esi,to
		lea	edi,screen
		call	copyEkran
		call	copyPoints
		call	rotatety
		call	_sort
		call	make_lightE	
		call	drawFacesVcE
		lea	esi,screen
		call	ekran

		; toto do byskof do perki

		cmp	bysk,0
		ja	b2
		mov	mode,0204h
		design2	mode,palant,nie_pal
	b2:	
		cmp	bysk,1
		ja	b3
		mov	mode,020ch
		design2 mode,palant,nie_pal
	b3:
		cmp	bysk,2
		ja	b4
		mov	mode,0214h
		design2 mode,palant,nie_pal
	b4:
		cmp	bysk,3
		ja	b5
		mov	mode,021ch
		design2 mode,palant,nie_pal
	b5:
		cmp	bysk,4
		ja	b6
		mov	mode,0224h
		design2 mode,palant,nie_pal
	b6:
		cmp	bysk,5
		ja	b7
		mov	mode,022ch
		design2 mode,palant,nie_pal
	b7:
	        cmp	bysk,6
		ja	b8
		mov	mode,0234h
		design2 mode,palant,nie_pal
	b8:
		cmp	bysk,7
		ja	b9
		mov	mode,023ch
		design2 mode,palant,nie_pal
	b9:
		cmp	bysk,8
		ja	b10
		mov	mode,0304h
		design2 mode,palant,nie_pal
	
	b10:
		cmp	bysk,9
		ja	b11
		mov	mode,030ch
		design2 mode,palant,nie_pal
	b11:
		cmp	bysk,10
		ja	b12
		mov	mode,0314h
		design2 mode,palant,nie_pal
	b12:
		cmp	bysk,11
		ja	b13
		mov	mode,031ch
		design2 mode,palant,nie_pal
	b13:
		cmp	bysk,12
		ja	b14
		mov	mode,0324h
		design2 mode,palant,nie_pal
	b14:
		cmp	bysk,13
		ja	b15
		mov	mode,032ch
		design2 mode,palant,nie_pal
	b15:
		cmp	bysk,14
		ja	b16
		mov	mode,0334h
		design2 mode,palant,nie_pal
	b16:

		jmp	nie_pal
	palant:
		call	pal_white
		lea	esi,pal2
		call	pal_set
		inc	bysk
	nie_pal:

		cmp	mama,0
		je	dsg1
		cmp	mama,1
		je	dsg2
		cmp	mama,2
		je	dsg3
		jmp	dsg4
	dsg1:	
		mov	mode,220h
		design2	mode,dsg2,ptla3
	dsg2:	cmp	mama,0
		jne	g11
;		call	pal_white
;		lea	esi,pal2
;		call	pal_set
	g11:
		mov	mama,1
		mov	mode,23fh
		design2	mode,dsg3,ptla3
	dsg3:	
		cmp	mama,1
		jne	g12
;		call	pal_white
;		lea	esi,pal2
;		call	pal_set
	g12:
		mov	mama,2
		mov	mode,320h
		design2	mode,dsg4,ptla3
		
	dsg4:
		cmp	mama,2
		jne	g13
	g13:
		mov	mama,3
		mov	mode,337h
		design2	mode,dsg5,ptla3
	dsg5:

		lea	edi,screen
		mov	ecx,768/4
		mov	eax,03f3f3f3fh
		rep	stosd

		mov	mode,338h
		mov	bl,21
		
		mov	ecx,3
	ui1:	push	ecx
		design	mode,pal1
	pal1:	lea	edi,screen
		mov	bl,26h
		call	pal_white
		lea	esi,pal2
		call	pal_set
		inc	mode
		design	mode,pal3
	pal3:	call	pal_white
		lea	esi,pal2
		call	pal_set
		pop	ecx
		add	mode,3 ;4-1-1
		loop	ui1
		call	pal_white

		;to warlock lubi bajbardziej

		ret
	wjazd:
		mov	eax,ramki
		mov	ebx,eax
		shl	eax,1
		sub	d_x,ax
		add	angleZ,eax
		cmp	d_x,160
		jg	kio2
		mov	d_x,160
	kio2:	jmp	nexxx
	wyjazd:
		mov	eax,ramki
		mov	ebx,eax
	add zdelta,ebx
	add zdelta,ebx
	add zdelta,ebx
		shr	ebx,1
;		shl	eax,1
		add	eax,ebx
		sub	d_x,ax
		dec	d_x
		add	angleZ,eax
	
		jmp	nexxx
	krka:
		mov	eax,ramki
		shl	eax,1
		add	angleX,eax
		jmp	nexxx
	krka2:
		mov	eax,ramki
		shl	eax,1
		sub	angleY,eax
		jmp	nexxx

part2	ENDP

	pal2:
		include	part2.pal

		include objects\cube._3d
		include	revolt.ext

CODE32 ENDS
END


