If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Santa's Xmas Caper (Amiga)

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Santa's Xmas Caper

Publisher: Zeppelin Games
Platform: Amiga
Released internationally: 1992


SourceIcon.png This game has uncompiled source code.


Santa's Xmas Caper is a Christmas-themed platformer.

Uncompiled Source Code

A piece of leftover 68k assembly source code appears on the disk.

	lea	t_hit_code,a0
	move.w	#11,d1
2$	
	move.w	#19,d0
1$
	move.b	(a0),(a1)+
	move.b	1(a0),(a1)+
	move.b	40(a0),(a1)+
	move.b	41(a0),(a1)+
	addq.l	#2,a0
	dbf	d0,1$
	add.l	#80-40,a0
	dbf	d1,2$
	rts
con_map:
	clr.l	chars_data
	clr.l	chars_data+4

;	lea	map-20*2,a0 ;-20*2,a0
	move.l	the_map,a0
	sub.l	#20*2,a0
	move.w	v_scroll,d0
	mulu.w	#map_hor_size,d0
	add.l	d0,a0
	move.w	h_scroll,d0
	and.l	#$ffff,d0
	add.l	d0,a0


	lea	char,a1
	lea	hit_code,a2
	
	move.w	#11,d2
2$ 
	move.w	#20,d0
1$
	move.w	(a0)+,d1
	add.w	d1,d1
	add.w	d1,d1
	move.w	(a2,d1.w),(a1)+
	move.w	2(a2,d1.w),40(a1)
	dbra	d0,1$
	lea	42(a1),a1
	add.l	#map_hor_size-(21*2),a0
	dbf	d2,2$
	rts
blinky_feet:
	bsr	blinky_pos
	lea	co_sprite_vars,a0
	move.w	co_hor1(a0),d0
	sub.w	#8,d0
	sub.w	fine,d0
	lsr.w	#3,d0
	move.w	co_ver1(a0),d1
	add.w	fine_v,d1
	sub.w	#8,d1
	lsr.w	#3,d1
	mulu.w	#42,d1
	add.w	d0,d1
	
	lea	char,a0
	add.l	d1,a0

	move.b	-43(a0),l_side0
	move.b	-42+3(a0),r_side0
	move.b	(a0),foot0
	move.b	1(a0),foot1
	move.b	2(a0),foot2

	lea	co_sprite_vars,a0
	cmp.w	#10,co_ver1(a0)
	bgt.s	30$
	clr.b	foot0
	clr.b	foot1
	clr.b	foot2
30$
	rts
foot0:	dc.b	0
foot1:	dc.b	0
foot2:	dc.b	0
l_side0:	dc.b	0
r_side0:	dc.b	0
	even
show:	dc.w	1
p_codes:
	move.b	co_key1,d0
	cmp.b	#$66,d0
	bne.s	44$
500$	move.b	co_key1,d0
	btst	#7,d0
	beq.s	500$
	eor.w	#1,show
44$
	bsr	con_map
	bsr	blinky_feet

	tst.w	show
	bne	400$

	move.l	co_curmem,a0
	lea	char,a3
	move.w	#23,d4
4$
	move.w	#41,d3
3$
	lea	chars_data,a1
	move.b	(	(a1
	move.b	(move.b	(hars_data,a1
	move.b	(
	move.b	(a1
	move.b	(a1
	move.b	(