static void init() { int i; DARNIT_INPUT_MAP map; d_init("pewpewtris", "pewpewtris", NULL); d_fs_mount_self(); d_fs_mount("music.ldi"); d_fs_mount("sounds.ldi"); config_init(); ppt.ui.offset_x = 288; ppt.ui.offset_y = 0; for (i = 0; i < 180; ppt.tile_lookup[i++] = -1); ppt.block = d_render_tilesheet_load("res/block.png", 24, 24, DARNIT_PFORMAT_RGB5A1); ppt.tile = d_render_tile_new(10 * 18, ppt.block); ppt.bbox = d_bbox_new(180); d_bbox_set_indexkey(ppt.bbox); ppt.tm = d_tilemap_new(0xFFF, ppt.block, 0xFFF, 10, 18); ppt.request_new = 0; ppt.font = d_font_load("res/font.ttf", 28, 256, 256); ui_init(); bullet_init(30); highscore_init(); state_init(); music_init(); ppt.ui.play_background = d_map_load("res/playfield_background.ldmz"); ppt.ui.menu_background = d_map_load("res/mainmenu_background.ldmz"); ppt.ui.highscore_background = d_map_load("res/highscore_background.ldmz"); /* Re-map B to space */ if (!(d_platform_get().platform & DARNIT_PLATFORM_PANDORA)) { map = d_keymapping_get(); map.b = TPW_KEY_SPACE; d_keymapping_set(map); } block_particle_init(); /* FIXME: Remove */ ppt.fps = d_text_surface_new(ppt.font, 6, 1000, 0, 0); }
//------------------------------------------------------------------------ int notmain ( void ) { malloc_init((void *) HEAP_START); music_init(); create_process(processus_A, 128); create_process(processus_A, 128); create_process(play_music, 2048); create_process(processus_B, 128); create_process(processus_B, 128); start_sched(); return(0); }
//------------------------------------------------------------------------ int notmain ( void ) { hw_init(); music_init(); /* hw_init(); */ /* led_init(); */ /* switch_init(); */ /* play_music(); */ create_ctx(processus_A, NULL, 128); create_ctx(processus_A, NULL, 128); create_ctx(play_music, NULL, 2048); create_ctx(processus_B, NULL, 128); create_ctx(processus_B, NULL, 128); start_sched(); return(0); }
void interface_init (int argc, char *argv[]) { g_message ("Interface init"); // GTK initialisieren g_message ("\tGTK init"); gtk_init(&argc, &argv); ui = NULL; mainwindow = NULL; vbox_placeholder = NULL; keyboard = NULL; vbox_tractasono = NULL; actual_entry = NULL; module.music = NULL; module.radio = NULL; module.server = NULL; module.import = NULL; module.settings = NULL; module.fullscreen = NULL; module.disc = NULL; module.previous = NULL; // Das Interface laden GString* buildfile = g_string_new(g_get_current_dir()); buildfile = g_string_append(buildfile, "/data/tractasono.ui"); if (g_file_test(buildfile->str, G_FILE_TEST_EXISTS) == FALSE) { buildfile = g_string_assign(buildfile, INSTALLED_GLADE); } if (g_file_test(buildfile->str, G_FILE_TEST_EXISTS) == FALSE) { g_warning ("Die Glade Datei konnte nicht geladen werden!"); exit (0); } GError* error = NULL; ui = gtk_builder_new(); if (!gtk_builder_add_from_file (ui, buildfile->str, &error)) { g_error ("Couldn't load builder file: %s", error->message); g_error_free (error); } // Verbinde die Signale automatisch mit dem Interface gtk_builder_connect_signals (ui, NULL); // Hauptfenster holen mainwindow = interface_get_widget ("window_main"); // Icon setzen const gchar* icon = INSTALLED_ICON; if (g_file_test(icon, G_FILE_TEST_EXISTS) == TRUE) { gtk_window_set_icon_from_file (GTK_WINDOW (mainwindow), icon, NULL); } // Placeholder holen vbox_placeholder = interface_get_widget ("vbox_placeholder"); // Tractasono Root holen vbox_tractasono = interface_get_widget ("vbox_tractasono"); // Die einzelnen Windows laden und referenzieren module.music = g_object_ref (interface_get_widget ("modul_music")); module.disc = g_object_ref (interface_get_widget ("vbox_disc")); module.server = g_object_ref (interface_get_widget ("servermodul")); module.settings = g_object_ref (interface_get_widget ("vbox_settings")); module.radio = g_object_ref (interface_get_widget ("radiomodul")); module.fullscreen = g_object_ref (interface_get_widget ("eventbox_fullscreen")); // Keyboard laden GtkWidget *vbox_placeholder_keyboard = NULL; vbox_placeholder_keyboard = interface_get_widget ("vbox_placeholder_keyboard"); keyboard = interface_get_widget ("alignment_keyboard"); gtk_widget_reparent(keyboard, vbox_placeholder_keyboard); gtk_widget_hide(keyboard); // Progressbar laden progress = GTK_PROGRESS_BAR( interface_get_widget ("range_song")); // LCD GtkWidget *lcdspace; lcdspace = interface_get_widget ("lcdbox"); lcd = lcd_new (); gtk_container_add (GTK_CONTAINER (lcdspace), GTK_WIDGET (lcd)); // LCD Text initial setzen gchar *title = db_settings_get_text ("LCD", "StartText"); lcd_set_title (LCD (lcd), title); // Widget anzeigen gtk_widget_show (GTK_WIDGET (lcd)); // Einzelne GUI Module initialisieren disc_init (); radio_init (); music_init (); //server_init (); settings_init (); fullscreen_init (); // Musik von Anfang an anzeigen interface_show_module(module.music); }
int main(void) { music_init(); music_play(3); u16 delay_mod = 4; u16 col_inc_cnt = 0; setup(); reset_demo: hint_val = 3; col = 0; col_off = 0; phrase_num = 0; scroll_off = 0; dscroll = 0; term_pos = 0; term_scrolling = 0; sprites_dma_simple(); term_pos = 0; VDP_setHInterrupt(0); VDP_clearPlan(VDP_PLAN_A, 0); VDP_clearPlan(VDP_PLAN_B, 0); // Greyscale palette for text VDP_setPaletteColor(0,0x000); VDP_setPaletteColor(1,0x444); VDP_setPaletteColor(2,0x888); VDP_setPaletteColor(3,0xEEE); VDP_setScreenWidth256(); bios_boot_demo(); VDP_setScreenWidth320(); VDP_clearPlan(VDP_PLAN_A, 0); VDP_clearPlan(VDP_PLAN_B, 0); awful_put_logo(8, 2); startup_stretch(); VDP_setVerticalScroll(PLAN_A, 252); VDP_setVerticalScroll(PLAN_B, 252); VDP_setHIntCounter(hint_val); SYS_setHIntCallback((_voidCallback *)h_int); volatile u8 p1 = pad_read(0); sprites_init(); col_puts40(8,0,"Computer Science House"); // Initialize background stars star stars[NUM_STARS]; u16 i = 0; for (i = 0; i < NUM_STARS; i++) { stars[i].x = i * 5; stars[i].y = 128 + i * 8; stars[i].speed = (i % 7) + 1; stars[i].offset = (3 * i) % 4; stars[i].size = (i % 4 == 0) ? ('.' + COL_FONT_VRAM_OFFSET) : (128 + '.' + COL_FONT_VRAM_OFFSET); } print_phrase(8); u16 delay = 0; u8 dir = 0; VDP_setHInterrupt(1); for (;;) { delay++; if (col_inc_cnt == 0) { col_inc_cnt = hint_val; col_off += 0x002; } else { col_inc_cnt--; } if (delay == 512) { if (phrase_num == 8) { phrase_num = 0; VDP_setHInterrupt(0); sprite_set(0, 0, 0, 0, 0, 0); sprites_dma_simple(); while (vbl_wait) { __asm__("nop"); } vbl_wait = 1; goto reset_demo; } hint_val++; if (hint_val == 10) { hint_val = 3; } delay_mod = delay_mod >> 1; if (delay_mod == 0) { delay_mod = delay_mod = 4; } VDP_setHIntCounter(hint_val); VDP_setHInterrupt(0); print_phrase(phrase_num); VDP_setHInterrupt(1); phrase_num++; delay = 0; } process_stars(&stars); while (vbl_wait) { __asm__("nop"); } VDP_setHInterrupt(0); VDP_setPaletteColor(14,palette[col]); col = col_off; vbl_wait = 1; sprites_dma_simple(); VDP_setHInterrupt(1); } return 0; }
/** * @brief Initializes the sound subsystem. * * @return 0 on success. */ int sound_init (void) { int ret; /* See if sound is disabled. */ if (conf.nosound) { sound_disabled = 1; music_disabled = 1; } /* Parse conf. */ if (sound_disabled && music_disabled) return 0; /* Choose sound system. */ if ((sound_sys_init == NULL) && (conf.sound_backend != NULL) && (strcmp(conf.sound_backend,"openal")==0)) { #if USE_OPENAL /* * OpenAL Sound. */ /* Creation. */ sound_sys_init = sound_al_init; sound_sys_exit = sound_al_exit; /* Sound Creation. */ sound_sys_load = sound_al_load; sound_sys_free = sound_al_free; /* Sound settings. */ sound_sys_volume = sound_al_volume; sound_sys_getVolume = sound_al_getVolume; sound_sys_getVolumeLog = sound_al_getVolumeLog; /* Sound playing. */ sound_sys_play = sound_al_play; sound_sys_playPos = sound_al_playPos; sound_sys_updatePos = sound_al_updatePos; sound_sys_updateVoice = sound_al_updateVoice; /* Sound management. */ sound_sys_update = sound_al_update; sound_sys_stop = sound_al_stop; sound_sys_pause = sound_al_pause; sound_sys_resume = sound_al_resume; sound_sys_setSpeed = sound_al_setSpeed; /* Listener. */ sound_sys_updateListener = sound_al_updateListener; /* Groups. */ sound_sys_createGroup = sound_al_createGroup; sound_sys_playGroup = sound_al_playGroup; sound_sys_stopGroup = sound_al_stopGroup; sound_sys_pauseGroup = sound_al_pauseGroup; sound_sys_resumeGroup = sound_al_resumeGroup; /* Env. */ sound_sys_env = sound_al_env; #else /* USE_OPENAL */ WARN("OpenAL support not compiled in!"); #endif /* USE_OPENAL */ } if ((sound_sys_init == NULL) && (conf.sound_backend != NULL) && (strcmp(conf.sound_backend,"sdlmix")==0)) { #if USE_SDLMIX /* * SDL_mixer Sound. */ /* Creation. */ sound_sys_init = sound_mix_init; sound_sys_exit = sound_mix_exit; /* Sound Creation. */ sound_sys_load = sound_mix_load; sound_sys_free = sound_mix_free; /* Sound settings. */ sound_sys_volume = sound_mix_volume; sound_sys_getVolume = sound_mix_getVolume; sound_sys_getVolumeLog = sound_mix_getVolume; /* Sound playing. */ sound_sys_play = sound_mix_play; sound_sys_playPos = sound_mix_playPos; sound_sys_updatePos = sound_mix_updatePos; sound_sys_updateVoice = sound_mix_updateVoice; /* Sound management. */ sound_sys_update = sound_mix_update; sound_sys_stop = sound_mix_stop; sound_sys_pause = sound_mix_pause; sound_sys_resume = sound_mix_resume; sound_sys_setSpeed = sound_mix_setSpeed; /* Listener. */ sound_sys_updateListener = sound_mix_updateListener; /* Groups. */ sound_sys_createGroup = sound_mix_createGroup; sound_sys_playGroup = sound_mix_playGroup; sound_sys_stopGroup = sound_mix_stopGroup; sound_sys_pauseGroup = sound_mix_pauseGroup; sound_sys_resumeGroup = sound_mix_resumeGroup; /* Env. */ sound_sys_env = sound_mix_env; #else /* USE_SDLMIX */ WARN("SDL_mixer support not compiled in!"); #endif /* USE_SDLMIX */ } if (sound_sys_init == NULL) { WARN("Unknown/Unavailable sound backend '%s'.", conf.sound_backend); sound_disabled = 1; WARN("Sound disabled."); music_disabled = 1; return 0; } /* Initialize sound backend. */ ret = sound_sys_init(); if (ret != 0) { sound_disabled = 1; music_disabled = 1; WARN("Sound disabled."); return ret; } /* Create voice lock. */ voice_mutex = SDL_CreateMutex(); if (voice_mutex == NULL) { WARN("Unable to create voice mutex."); } /* Load available sounds. */ ret = sound_makeList(); if (ret != 0) return ret; /* Initialize music. */ ret = music_init(); if (ret != 0) { music_disabled = 1; WARN("Music disabled."); } /* Set volume. */ if ((conf.sound > 1.) || (conf.sound < 0.)) WARN("Sound has invalid value, clamping to [0:1]."); sound_volume(conf.sound); /* Initialized. */ sound_initialized = 1; return 0; }
uint32_t Game::run() { //This is a main game //Quit flag bool quit = false; //The frame rate regulator Timer fps; ih_init(); music_init(); world_init(); //SOME SORT OF MENU SHOULD BE HERE //Constructor calls etc Player *player = new Player(); center_camera((player->get_x() + PLAYER_WIDTH/2), (player->get_y() + PLAYER_HEIGTH/2)); show_message(); //BOX FOR TEST world_generate(); //main loop while(quit == false) { //Start the frame timer fps.start(); //While there's events to handle while( SDL_PollEvent( &event ) ) { handle_events(player); //If the user has Xed out the window if( event.type == SDL_QUIT ) { //Quit the program quit = true; } } music_play(); //MOVES player->move(); player->center(); //CLS ih_clear_screen(); //DRAWING //hide cursor SDL_ShowCursor(0); apply_cursor(); player->draw(); start_over(); while(get_curr()) { get_curr()->draw(); traverse(); } ih_update(); //Cap the frame rate if( fps.get_ticks() < 1000 / FRAMES_PER_SECOND ) { SDL_Delay( ( 1000 / FRAMES_PER_SECOND ) - fps.get_ticks() ); } } delete player; world_finit(); music_finit(); ih_cleanup(); return 0; }
int main (int argc, char **argv) { #ifdef USE_GCONF GConfClient *gconf; #endif char *dir; struct sigaction action; sigset_t sigset; main_status = QUARK_STARTING; /* initialize the locale */ if (!setlocale(LC_ALL, "")) g_warning("Couldn't set locale from environment.\n"); bindtextdomain(PACKAGE_NAME, LOCALEDIR); bind_textdomain_codeset(PACKAGE_NAME, "UTF-8"); textdomain(PACKAGE_NAME); /* set up signal handler */ sigemptyset (&sigset); action.sa_handler = signal_handler; action.sa_mask = sigset; action.sa_flags = SA_NOCLDSTOP; sigaction (SIGTERM, &action, (struct sigaction *) NULL); sigaction (SIGINT, &action, (struct sigaction *) NULL); sigaction (SIGHUP, &action, (struct sigaction *) NULL); g_type_init (); gnome_vfs_init (); #ifdef USE_GCONF gconf = gconf_client_get_default (); gconf_client_add_dir (gconf, QUARK_GCONF_ROOT, GCONF_CLIENT_PRELOAD_RECURSIVE, NULL); gconf_client_notify_add (gconf, QUARK_GCONF_ROOT, config_changed, NULL, NULL, NULL); #endif /* make the directory we use in ~ */ dir = g_build_filename (g_get_home_dir(), ".quark", NULL); mkdir (dir, S_IRWXU|S_IRWXG|S_IRWXO); g_free (dir); loop = g_main_loop_new (NULL, FALSE); if (!fifo_open ()) { g_critical("failed to open fifo"); return 1; } music_init (); g_static_mutex_lock (&main_mutex); playlist_init (); #ifdef USE_GCONF config_load (gconf); #endif main_status = QUARK_RUNNING; g_static_mutex_unlock (&main_mutex); g_main_loop_run (loop); g_static_mutex_lock (&main_mutex); main_status = QUARK_EXITING; #ifdef USE_GCONF config_save (gconf); #endif playlist_destroy (); g_static_mutex_unlock (&main_mutex); music_destroy (); fifo_destroy (); g_main_loop_unref (loop); #ifdef USE_GCONF g_object_unref (G_OBJECT (gconf)); #endif gnome_vfs_shutdown (); return 0; }
int main (int argc, char *argv[]) { if (sdl_init () != 0) return 1; if (textures_init ()) return 1; if (audio_init ()) { fprintf (stderr, "Error loading SFX: %s\n", SDL_GetError()); return 1; } if (music_init ()) { fprintf (stderr, "Error loading SFX: %s\n", SDL_GetError()); return 1; } if (config_load ()) { fprintf (stderr, "Error loading config\n"); } hiscore_init (); //gamestate = GAME_DEMO; running = 1; while (running) { sdl_read_input (); if (!paused) { SDL_SetRenderDrawColor(renderer, 0, 0, 0, 0); if (gamestate != GAME_OVER) SDL_RenderClear (renderer); switch (gamestate) { case GAME_DEMO: draw_test (); break; case GAME_RUNNING: game_loop (); break; case GAME_AMODE: default: amode_loop (); break; case GAME_OVER: gameover_loop (); break; case GAME_HSENTRY: hsentry_loop (); break; case GAME_CONFIG: case GAME_CONFIG_INPUT: config_loop (); break; case GAME_SELECT_RECORD: playback_loop (); break; } } SDL_RenderPresent (renderer); } hiscore_save (); sdl_close (); return 0; }