Beispiel #1
0
void jackpot_deff (void)
{
	seg_alloc_clean ();
	seg_write_row_center (0, "JACKPOT");
	seg_write_row_center (1, "1 MILLION");
	seg_show ();
	task_sleep_sec (2);
	deff_exit ();
}
Beispiel #2
0
CALLSET_ENTRY (tz, bonus)
{
	deff_start (DEFF_BONUS);
	leff_start (LEFF_BONUS);
	task_sleep_sec (1);
	while (deff_get_active () == DEFF_BONUS)
		task_sleep (TIME_66MS);
	leff_stop (LEFF_BONUS);
}
void car_chase_end_effect_deff(void) {
	dmd_alloc_low_clean ();
	font_render_string_center (&font_fipps, DMD_MIDDLE_X, DMD_BIG_CY_Top, "CAR_CHASE");
	sprintf("COMPLETE");
	font_render_string_center (&font_fipps, DMD_MIDDLE_X, DMD_BIG_CY_Bot, sprintf_buffer);
	dmd_show_low ();
	task_sleep_sec (2);
	deff_exit ();
	}//end of mode_effect_deff
Beispiel #4
0
static void flipcode_active_task (void)
{
    /* Anytime either flipper is pressed, this task is restarted.
    After so many seconds of inactivity, the flipper code will reset
    to zero. */
    task_sleep_sec (5);
    flipcode_reset ();
    task_exit ();
}
Beispiel #5
0
void powerball_announce_leff (void)
{
	triac_leff_disable (TRIAC_GI_MASK);
	leff_create_peer (powerball_leff_task);
	task_sleep_sec (2);
	triac_leff_enable (TRIAC_GI_MASK);
	task_kill_peers ();
	leff_exit ();	
}
Beispiel #6
0
void fortress_ballsave_task (void) {
#ifdef CONFIG_DIFFICULTY_LEVEL
	U8 i;
	fortress_ballsave  = system_config.mb_ballsave;
	for (i = system_config.mb_ballsave; i > 0; i--) {
		task_sleep_sec(1);
		fortress_ballsave  -= 1;
	}
#elif
	U8 i;
	for (i = 5; i > 0; i--) {
		task_sleep_sec(1);
		fortress_ballsave  -= 1;
	}
#endif
	fortress_ballsave  = 0;
	task_exit();
}//end of function
Beispiel #7
0
void shuttle_launch_deff (void)
{
	seg_alloc_clean ();
	seg_write_row_center (0, "SHUTTLE LAUNCH");
	seg_write_row_center (1, "WOOOSH");
	seg_show ();
	task_sleep_sec (2);
	deff_exit ();
}
Beispiel #8
0
void backdoor_award_deff (void)
{
	dmd_alloc_low_clean ();
	sprintf ("BACKDOOR AWARD");
	font_render_string_center (&font_fixed6, 64, 16, sprintf_buffer);
	dmd_show_low ();
	task_sleep_sec (2);
	deff_exit ();
}
Beispiel #9
0
void sslot_award_deff (void)
{
		dmd_alloc_low_clean ();
		font_render_string_center (&font_var5, 64, 5, "SLOT MACHINE AWARD");
		font_render_string_center (&font_var5, 64, 27, sslot_award_names[sslot_award_index_stored]);
		dmd_show_low ();
		task_sleep_sec (2);
		deff_exit ();
}
Beispiel #10
0
void burnin_time_audit_thread (void)
{
	for (;;)
	{
		time_audit_add_sec (&burnin_duration, 1);
		SECTION_VOIDCALL (__test__, window_redraw);
		task_sleep_sec (1);
	}
}
Beispiel #11
0
/** The display effect that appears immediately at the end of a game,
before returning to attract mode */
void game_over_deff (void)
{
	dmd_alloc_low_clean ();
	font_render_string_center (&font_fixed6, 64, 16, "GAME OVER");
	dmd_show_low ();
	task_sleep_sec (2);

	/* In tournament mode, need to show the scores briefly here */
	if (tournament_mode_enabled)
	{
		dmd_alloc_low_clean ();
		scores_draw ();
		dmd_show_low ();
		task_sleep_sec (60);
		deff_exit ();
	}
	deff_exit ();
}
Beispiel #12
0
void car_chase_mode_init (void) {
	car_chase_mode_shots_made = 0;
	flag_on (FLAG_IS_CARCHASE_MODE_RUNNING);
	ballsave_add_time (10);
	++car_chase_modes_achieved;
	diverter_stop();//defined in divhold2.ct
	task_kill_gid (GID_CR_LIGHTS);
	carchase_mode_on(); //at ramps.c
	serve_ball_auto(); //add one ball to the playfield - NOT a multiball since doesn't change global ball count
	sound_start (ST_SPEECH, SPCH_WUSS_SPARTAN, SL_4S, PRI_GAME_QUICK5);
	task_sleep_sec (2);
	sound_start (ST_SPEECH, SPCH_EXCUSE_ME, SL_4S, PRI_GAME_QUICK5);
	task_sleep_sec (1);
	sound_start (ST_SPEECH, SPCH_BETWEEN_YOU_N_ME, SL_4S, PRI_GAME_QUICK5);
	//flash lamp for a time
	score_zero(car_chase_mode_score);

	lamp_tristate_off (LM_CLAW_READY);
}//end of function
Beispiel #13
0
void fastlock_award_deff (void)
{
    dmd_alloc_low_clean ();
    font_render_string_center (&font_var5, 64, 5, "JACKPOT");
    sprintf("%d MILLION", fastlock_award_stored);
    font_render_string_center (&font_fixed6, 64, 16, sprintf_buffer);
    dmd_show_low ();
    task_sleep_sec (2);
    deff_exit ();
}
Beispiel #14
0
CALLSET_ENTRY (right_ramp, ball_search)
{
	/* Wait a bit in case a ball has been launched from the
	 * autofire ball_search, this stops my loose hanging ramp
	 * from hitting the ball on the way round the loop */
	task_sleep_sec (1);
	bridge_open_start ();
	task_sleep (TIME_500MS);
	bridge_open_stop ();
}
Beispiel #15
0
void flipcode_active_task (void)
{
#ifdef DEBUG_FLIPCODE
	dbprintf ("flipcode pos %d value %d\n",
		flipcode_pos, flipcode_value);
#endif
	task_sleep_sec (3);
	flipcode_reset ();
	task_exit ();
}
Beispiel #16
0
void combo_master_exit_deff (void)
{
	dmd_alloc_pair_clean ();
	sprintf ("%d COMBOS", combo_master_hi);
	font_render_string_center (&font_mono5, 64, 16, sprintf_buffer);
	sound_send (SND_CLOCK_GONG);
	dmd_show_low ();
	task_sleep_sec (2);
	deff_exit ();
}
Beispiel #17
0
void super_jackpot_deff (void)
{
	seg_alloc_clean ();
	seg_write_row_center (0, "SUPER JACKPOT");
	sprintf_score (super_jackpot_value);
	seg_write_row_center (1, sprintf_buffer);
	seg_show ();
	task_sleep_sec (2);
	deff_exit ();
}
Beispiel #18
0
void clock_display_task (void)
{
	task_sleep_sec (3);
	if (clock_hour <= 6)
		sound_send (SPCH_1PM + clock_hour - 1);
	else
		; /* sound_send (SPCH_7PM + clock_hour - 1); */
	deff_start (DEFF_CLOCK_UPDATE);
	task_exit ();
}
Beispiel #19
0
void inlane_lights_dead_end_deff (void)
{
	dmd_alloc_low_clean ();
	dmd_sched_transition (&trans_scroll_right);	
	font_render_string_center (&font_quadrit, 64, 10, "RIGHT INLANE");
	font_render_string_center (&font_quadrit, 64, 22, "LIGHTS DEAD END");
	dmd_show_low ();
	task_sleep_sec (1);
	deff_exit ();
}
Beispiel #20
0
void gangway_eb_lit_deff (void)
{
	seg_alloc_clean ();
	seg_write_row_center (0, "GANGWAY");
	seg_write_row_center (1, "EXTRA BALL LIT");
	seg_sched_transition (&seg_trans_center_out);
	seg_show ();
	task_sleep_sec (2);
	deff_exit ();
}
Beispiel #21
0
/* Called whenever the far left trough switch is tripped.
The sole purpose of this to determine when there are too 
many balls in the trough, and one needs to be fired into the
gumball out of the way.  If a ball remains on this switch for
3 seconds, then it is assumed there are 4 balls in the trough
and one must be loaded. */
void sw_far_left_trough_monitor (void)
{
	U8 timeout = TIME_3S / TIME_200MS;
	device_t *dev = device_entry (DEVNO_TROUGH);

 	while (task_find_gid (GID_DEVICE_PROBE))
		task_sleep_sec (1);

	dbprintf ("Far left trough check\n");
	/* Poll the switch for up to 3 seconds.  If it ever opens,
	then abort.  It must stay closed and the trough must
	remain full in order for us to continue. */
	while (timeout > 0)
	{
		task_sleep (TIME_200MS);
		if ((!switch_poll_logical (SW_FAR_LEFT_TROUGH))
			|| (dev->actual_count != dev->size))
		{
			dbprintf ("Far left trough not stable\n");
			task_exit ();
		}
		timeout--;
	}

	/* If a ball is known to be in play, then delay the
	load */
	while (valid_playfield)
	{
		dbprintf ("Far left trough : waiting to load\n");
		task_sleep_sec (1);
	}

	/* Start the load */
	dbprintf ("Far left trough stable : loading gumball\n");
	if (hold_balls_in_autofire)
	{
		autofire_add_ball ();
	}
	else
		gumball_load_from_trough ();
	task_exit ();
}
Beispiel #22
0
/** Read a character from the keyboard.
 * If input is closed, shutdown the program. */
static char sim_getchar (void)
{
	char inbuf;
	ssize_t res = pth_read (sim_input_fd, &inbuf, 1);
	if (res <= 0)
	{
		task_sleep_sec (2);
		sim_exit (0);
	}
	return inbuf;
}
Beispiel #23
0
void gangway_collect_deff (void)
{
	seg_alloc_clean ();
	seg_write_row_center (0, "GANGWAY");
	sprintf_score (score_deff_get ());
	seg_write_row_center (1, sprintf_buffer);
	seg_sched_transition (&seg_trans_center_out);
	seg_show ();
	task_sleep_sec (2);
	deff_exit ();
}
Beispiel #24
0
void strobe_up_leff (void)
{
	leff_create_peer (gi_cycle_leff);
	lamplist_set_apply_delay (TIME_16MS);
	leff_create_peer (pf_strobe_up_subtask);
	task_sleep (TIME_200MS);
	leff_create_peer (pf_strobe_up_subtask);
	task_sleep_sec (1);
	task_kill_peers ();
	leff_exit ();
}
Beispiel #25
0
void burnin_time_audit_thread (void)
{
	for (;;)
	{
		time_audit_add_sec (&burnin_duration, 1);
#ifdef CONFIG_DMD_OR_ALPHA
		SECTION_VOIDCALL (__test__, window_redraw);
#endif
		task_sleep_sec (1);
	}
}
Beispiel #26
0
void tsm_mode_total_deff (void)
{
	dmd_alloc_low_clean ();
	font_render_string_center (&font_fixed6, 64, 5, "TSM OVER");
	sprintf_score (tsm_mode_total);
	font_render_string_center (&font_fixed6, 64, 16, sprintf_buffer);
	font_render_string_center (&font_var5, 64, 27, "POINTS EARNED FROM MODE");
	dmd_show_low ();
	task_sleep_sec (4);
	deff_exit ();
}
Beispiel #27
0
void loop_deff (void)
{
	seg_alloc_clean ();
	psprintf ("1 LOOP", "%d LOOPS", total_loops);
	seg_write_row_center (0, sprintf_buffer);
	sprintf_score (score_deff_get ());
	seg_write_row_center (1, sprintf_buffer);
	seg_show ();
	task_sleep_sec (2);
	deff_exit ();
}
Beispiel #28
0
void wasteland_start_effect_deff(void) {
	dmd_alloc_pair_clean ();// Clean both pages
	wasteland_animation_display_effect (IMG_WASTELAND_A1_START, IMG_WASTELAND_A1_END);
	wasteland_frame_bitfade_fast(IMG_WASTELAND_A2_START);
	wasteland_animation_display_effect (IMG_WASTELAND_A2_START, IMG_WASTELAND_A2_END);
	wasteland_frame_bitfade_fast(IMG_WASTELAND_A3_START);
	wasteland_animation_display_effect (IMG_WASTELAND_A3_START, IMG_WASTELAND_A3_END);
	wasteland_frame_with_words_display_steel_effect(IMG_WASTELAND_A3_END, DMD_MIDDLE_X, DMD_BIG_CY_Bot, "MULTIBALL");
	task_sleep_sec (1);
		deff_exit ();
}//end of function
Beispiel #29
0
void coin_door_buttons_deff (void)
{
	dmd_alloc_low_clean ();
#if (MACHINE_DMD == 1)
	font_render_string_center (&font_var5, 64, 3, "COIN DOOR IS CLOSED");
#endif
	font_render_string_center (&font_var5, 64, 10, "OPEN COIN DOOR");
	font_render_string_center (&font_var5, 64, 17, "TO USE BUTTONS");
	dmd_show_low ();
	task_sleep_sec (3);
	deff_exit ();
}
Beispiel #30
0
void magnet_hold_balls_task (void)
{
	U8 i;
	/* Limit to 60 seconds */
	for (i = 0; i < 60; i++)
	{
		magnet_reset_hold_timer ();
		task_sleep_sec (1);
	}
	magnet_reset ();
	task_exit ();
}