all: test.tap game.bin

clean:
	del *.tap
	del *.bin
	del *.bak
	

test.tap: game.tap loader.tap sprites.tap uncrunch.tap loader2.tap ram3.tap ram4.tap loading.tap ram1.tap ram0.tap ram6.tap 
	copy /b loader.tap + loading.tap + loader2.tap + ram3.tap + ram4.tap + ram1.tap + ram6.tap + game.tap + sprites.tap + ram0.tap + uncrunch.tap test.tap

game.bin: loading.scr cannon_bubble.bin sprites.bin uncrunch.bin ram3.bin ram4.bin  ram1.bin ram0.bin ram6.bin load_plus3.bin
	copy /b loading.scr + ram1.bin + ram0.bin + ram3.bin + ram4.bin + ram6.bin + uncrunch.bin + cannon_bubble.bin + sprites.bin  game.bin
	cpcfs -ndsv kk.dsk
	cpcfs kk -p game.bin 

load_plus3.bin: load_plus3.asm
	pasmo load_plus3.asm load_plus3.bin

game.tap: cannon_bubble.bin
	bin2tap -a 24850 -o game.tap cannon_bubble.bin
	
loading.tap: loading.scr
	bin2tap -a 16384 -o loading.tap loading.scr	

loader.tap: loader.bas
	bas2tap -c -sCANNON -a10 loader.bas loader.tap
	
sprites.tap: sprites.bin
	bin2tap -a 45858 -o sprites.tap sprites.bin
	
uncrunch.tap: uncrunch.bin
	bin2tap -a 24576 -o uncrunch.tap uncrunch.bin	

loader2.tap: loader2.bin
	bin2tap -a 25000 -o loader2.tap loader2.bin	
	
ram3.tap: ram3.bin
	bin2tap -a 49152 -o ram3.tap ram3.bin
	
ram3.bin: ram3_1.bin ram3_2.bin ram3_3.bin ram3_4.bin 
	copy /b ram3_1.bin + ram3_2.bin + ram3_3.bin + ram3_4.bin + ram3_5.bin ram3.bin

ram4.tap: ram4.bin
	bin2tap -a 49152 -o ram4.tap ram4.bin
	
ram4.bin: ram4_1.bin ram4_2.bin ram4_3.bin ram4_4.bin
	copy /b ram4_1.bin + ram4_2.bin + ram4_3.bin + ram4_4.bin ram4.bin
		
ram0.tap: ram0.bin
	bin2tap -a 49152 -o ram0.tap ram0.bin
	
ram1.tap: ram1.bin
	bin2tap -a 49152 -o ram1.tap ram1.bin

ram6.tap: ram6.bin
	bin2tap -a 49152 -o ram6.tap ram6.bin
			
cannon_bubble.bin: cannon_bubble.c sprites.h tables.h calcnew.h
	zcc +zx -vn -O3 -zorg=24850 cannon_bubble.c -lsplib2 -lndos -o cannon_bubble.bin	
					
sprites.bin: sprites.asm
	pasmo sprites.asm sprites.bin
	
uncrunch.bin: uncrunch.asm
	pasmo uncrunch.asm uncrunch.bin

loader2.bin: loader2.asm
	pasmo loader2.asm loader2.bin

ram1.bin: menu.asm 1plevels.asm ram1_1.bin ram1_2.bin
	pasmo menu.asm ram1.bin

ram3_1.bin: 2player.scr
	apack 2player.scr ram3_1.bin

ram3_2.bin: mainmenu.scr
	apack mainmenu.scr ram3_2.bin
	
ram3_3.bin: 1player.scr
	apack 1player.scr ram3_3.bin

ram3_4.bin: 1player_2.scr
	apack 1player_2.scr ram3_4.bin
	
ram4_1.bin: 1player_3.scr
	apack 1player_3.scr ram4_1.bin
	
ram4_2.bin: 1player_4.scr
	apack 1player_4.scr ram4_2.bin

ram4_3.bin: 1player_5.scr
	apack 1player_5.scr ram4_3.bin

ram4_4.bin: continue.scr
	apack continue.scr ram4_4.bin
	
ram1_1.bin: intro.scr
	apack intro.scr ram1_1.bin
	
ram1_2.bin: 2player_win.scr
	apack 2player_win.scr ram1_2.bin

ram0.bin: auxfunc.asm player.bin
	pasmo auxfunc.asm ram0.bin
	
ram6.bin: fin.asm ram6_1.bin ram6_2.bin ram6_3.bin endfont.fnt
	pasmo fin.asm ram6.bin

ram6_1.bin: barco.scr
	apack barco.scr ram6_1.bin

ram6_2.bin: atardecer.scr
	apack atardecer.scr ram6_2.bin

ram6_3.bin: fin.scr
	apack fin.scr ram6_3.bin
	
pirates.bin: pirates.pt3
	apack pirates.pt3 pirates.bin
	
nebulus.bin: nebulus.pt3
	apack nebulus.pt3 nebulus.bin	
	
pulsar.bin: pulsar.pt3
	apack pulsar.pt3 pulsar.bin	

levelok.bin: levelok.pt3
	apack levelok.pt3 levelok.bin

gameover.bin: gameover.pt3
	apack gameover.pt3 gameover.bin

getready.bin: getready.pt3
	apack getready.pt3 getready.bin
	
player.bin: vortex.asm pulsar.bin nebulus.bin pirates.bin levelok.bin getready.bin gameover.bin
	pasmo vortex.asm player.bin