;********************************

		include "ram:makros_2"

start:
		sys_init			;Screen oeffnen + Plane Adressen
						;sichern
start2:
		get_mem #50000,#$30001
		cmp.l #0,d0
		beq exit_err3
		move.l d0,pic
		add.l #100,d0
		move.l d0,start_pic		;da fangen die eigentlichen
						;Daten an
		get_mem #70000,#Chip_Ram
		cmp.l #0,d0
		beq exit_err0
		move.l d0,bob
		loadb "adv:elemente/mon",pic,#5000	;welche Grafiken
							;sollen konvertiert
							;werden ?
		color #0,#0,#0,#0
		set_pal pic

		bsr wie_viele
		bsr konvert
		bsr shadow_mask
		bsr save_bob
		bra exit	

konvert:
		move.l start_pic,a0
		move.l bob,a1
		move.l long,d2
konvert_loop1

		moveq #5,d1			;6 planes
konvert_loop2:
		move.l #15,d0
konvert_loop3:
		move.w (a0)+,(a1)+
		move.w #0,(a1)+
		dbra d0,konvert_loop3
		dbra d1,konvert_loop2
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+
		move.w #$ffff,(a1)+

		dbra d2,konvert_loop1
		rts
shadow_mask:
		move.l long,d0			;Anzahl der Bobs 64*6 384
		move.l bob,a1
		move.l a1,a0
shadow_loop0:
		moveq #31,d2
shadow_loop1:
		move.w 0(a0),d1
		or.w 64(a0),d1
		or.w 128(a0),d1
		or.w 192(a0),d1
		or.w 256(a0),d1
		or.w 320(a0),d1
		move.w d1,384(a0)
		add.l #2,a0
		dbra d2,shadow_loop1
		add.l #448,a1
		move.l a1,a0
		dbra d0,shadow_loop0
		rts
wie_viele:
		cls
		print #1,#0,#100,"Wieviele_Bobs_?"
		zinput #1,#17,#100,number,#3
		get_number number
		cmp.l #255,d0
		bgt wie_viele
		move.l d0,long			;Länge der Bob Daten * 448
		rts

save_bob:
		set_block_2 #0,#0,bob,#0
		set_block_2 #0,#20,bob,#1
		set_block_2 #0,#40,bob,#2
		set_block_2 #0,#60,bob,#3
		set_block_2 #0,#80,bob,#4
		set_block_2 #0,#100,bob,#5
		set_block_2 #0,#120,bob,#6
		set_block_2 #0,#140,bob,#7
		set_block_2 #0,#160,bob,#8
		set_block_2 #0,#180,bob,#9

		set_block_2 #20,#0,bob,#10
		set_block_2 #20,#20,bob,#11
		set_block_2 #20,#40,bob,#12
		set_block_2 #20,#60,bob,#13
		set_block_2 #20,#80,bob,#14
		set_block_2 #20,#100,bob,#15
		set_block_2 #20,#120,bob,#16
		set_block_2 #20,#140,bob,#17
		set_block_2 #20,#160,bob,#18
		set_block_2 #20,#180,bob,#19

		set_block_2 #40,#0,bob,#20
		set_block_2 #40,#20,bob,#21
		set_block_2 #40,#40,bob,#22
		set_block_2 #40,#60,bob,#23
		set_block_2 #40,#80,bob,#24
		set_block_2 #40,#100,bob,#25
		set_block_2 #40,#120,bob,#26
		set_block_2 #40,#140,bob,#27
		set_block_2 #40,#160,bob,#28
		set_block_2 #40,#180,bob,#29

		set_block_2 #60,#0,bob,#30
		set_block_2 #60,#20,bob,#31
		set_block_2 #60,#40,bob,#32
		set_block_2 #60,#60,bob,#33
		set_block_2 #60,#80,bob,#34
		set_block_2 #60,#100,bob,#35
		set_block_2 #60,#120,bob,#36
		set_block_2 #60,#140,bob,#37
		set_block_2 #60,#160,bob,#38
		set_block_2 #60,#180,bob,#39

		move.l long,d0
		mulu #448,d0
		move.l d0,long
		saveb "adv:bobs/mon.bob",bob,long	;Name kann man
		rts					;ja ändern

exit:
		fre_mem #70000,bob
		fre_mem #50000,pic
		sys_exit
		rts
exit_err0:
		fre_mem #50000,pic
exit_err3:
		sys_exit
		move.l #103,d0				;nix Speicher
		rts



pic:		dc.l 0
start_pic:	dc.l 0
bob:		dc.l 0
long:		dc.l 0
number:		dc.b 0,0,0,0,0,0,0,0

		include "ram:befehle"
