aboutsummaryrefslogtreecommitdiff
path: root/lorchatest.c
blob: bc53d0764042743435c241e718ed21228f0bd2ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <peekpoke.h>

extern void __fastcall__ draw_lorcha(int which, int displacement, int mask);

void jsleep(int jiffies) {
	POKE(20,0);
	while(PEEK(20) < jiffies)
		;
}

int main(void) {
	int i, j;

	/* draw all 10 ships in normal state */
	for(i=0; i<10; i++) {
		draw_lorcha(i, 0, 0);
	}

	/* explode and sink all 10 ships */
	for(i=0; i<10; i++) {
		/* blast effect */
		for(j=0; j<8; j++) {
			draw_lorcha(i, 0, 0x80);
			jsleep(2);
			draw_lorcha(i, 0, 0);
			jsleep(2);
		}

		/* sinking */
		for(j=0; j<8; j++) {
			draw_lorcha(i, j, 0);
			jsleep(4);
		}
	}

hang: goto hang;
}