void chfix(int dx) { if (!fixmode) { int value; switch (whatfix) { case FIX_FRAME: value = (conf.frame += dx); break; case FIX_LINE: value = (conf.t_line += dx); break; case FIX_PAPER: value = (conf.paper += dx); break; case FIX_NOPAPER: value = (conf.nopaper ^= dx?1:0); break; case FIX_HWNC: value = (comp.pEFF7 ^= dx?EFF7_HWMC:0)? 1 : 0; break; } video_timing_tables(); apply_sound(); // t/frame affects AY engine! sprintf(statusline, fix_titles[whatfix], value); statcnt=50; if (dx) conf.ula_preset = -1; return; } if (fixmode != 1) return; dx = (dx > 0) ? 1 : ((dx < 0) ? -1 : 0); *statusline = 0; statcnt = 50; switch (whatsnd) { case 0: conf.sound.ay_stereo = (conf.sound.ay_stereo+dx+num_aystereo) % num_aystereo; sprintf(statusline, "Stereo preset: %s", aystereo[conf.sound.ay_stereo]); break; case 1: if (dx) conf.sound.ay_samples ^= 1; sprintf(statusline, "Digital Soundchip: %s", conf.sound.ay_samples? "yes" : "no"); break; case 2: conf.sound.ay_vols = (conf.sound.ay_vols+num_ayvols+dx) % num_ayvols; sprintf(statusline, "Chip Table: %s", ayvols[conf.sound.ay_vols]); break; case 3: conf.pal = (conf.pal+dx); if (conf.pal == conf.num_pals) conf.pal = 0; if (conf.pal == -1) conf.pal = conf.num_pals-1; sprintf(statusline, "Palette: %s", pals[conf.pal].name); video_color_tables(); return; } apply_sound(); }
/** * @brief Applies the data in the GUI to the entity. */ void EditEntityDialog::apply() { apply_simple_booleans(); apply_simple_integers(); apply_simple_strings(); apply_behavior(); apply_breed(); apply_damage_on_enemies(); apply_destination(); apply_destination_map(); apply_direction(); apply_font(); apply_ground(); apply_layer(); apply_maximum_moves(); apply_model(); apply_name(); apply_opening_method(); apply_rank(); apply_savegame_variable(); apply_size(); apply_sound(); apply_sprite(); apply_subtype(); apply_transition(); apply_treasure(); apply_type(); apply_weight(); apply_xy(); }
void reset(ROM_MODE mode) { comp.pEFF7 &= conf.EFF7_mask; comp.pEFF7 |= EFF7_GIGASCREEN; // [vv] disable turbo { conf.frame = frametime; cpu.SetTpi(conf.frame); // if ((conf.mem_model == MM_PENTAGON)&&(comp.pEFF7 & EFF7_GIGASCREEN))conf.frame = 71680; //removed 0.37 apply_sound(); } //Alone Coder 0.36.4 comp.t_states = 0; comp.frame_counter = 0; comp.p7FFD = comp.pDFFD = comp.pFDFD = comp.p1FFD = 0; comp.p7EFD = comp.p78FD = comp.p7AFD = comp.p7CFD = comp.gmx_config = comp.gmx_magic_shift = 0; comp.pLSY256 = 0; comp.ulaplus_mode=0; comp.ulaplus_reg=0; tsinit(); if (conf.mem_model == MM_TSL) set_clk(); // turbo 2x (7MHz) for TS-Conf else turbo(1); // turbo 1x (3.5MHz) for all other clones if (conf.mem_model == MM_LSY256) mode = RM_SYS; switch (mode) { case RM_SYS: {comp.ts.memconf = 4; break;} case RM_DOS: {comp.ts.memconf = 0; break;} case RM_128: {comp.ts.memconf = 0; break;} case RM_SOS: {comp.ts.memconf = 0; break;} } comp.p00 = comp.p80FD = 0; // quorum comp.pBF = 0; // ATM3 comp.pBE = 0; // ATM3 if (conf.mem_model == MM_ATM710 || conf.mem_model == MM_ATM3) { switch(mode) { case RM_DOS: // Запрет палитры, запрет cpm, включение диспетчера памяти // Включение механической клавиатуры, разрешение кадровых прерываний set_atm_FF77(0x4000 | 0x200 | 0x100, 0x80 | 0x40 | 0x20 | 3); comp.pFFF7[0] = 0x100 | 1; // trdos comp.pFFF7[1] = 0x200 | 5; // ram 5 comp.pFFF7[2] = 0x200 | 2; // ram 2 comp.pFFF7[3] = 0x200; // ram 0 comp.pFFF7[4] = 0x100 | 1; // trdos comp.pFFF7[5] = 0x200 | 5; // ram 5 comp.pFFF7[6] = 0x200 | 2; // ram 2 comp.pFFF7[7] = 0x200; // ram 0 break; default: set_atm_FF77(0,0); } } if (conf.mem_model == MM_ATM450) { switch(mode) { case RM_DOS: set_atm_aFE(0x80|0x60); comp.aFB = 0; break; default: set_atm_aFE(0x80); comp.aFB = 0x80; } } comp.flags = 0; comp.active_ay = 0; cpu.reset(); reset_tape(); reset_sound(); #ifdef MOD_VID_VD comp.vdbase = 0; comp.pVD = 0; #endif load_spec_colors(); comp.ide_hi_byte_r = 0; comp.ide_hi_byte_w = 0; comp.ide_hi_byte_w1 = 0; hdd.reset(); input.atm51.reset(); input.buffer.Enable(false); if ((!conf.trdos_present && mode == RM_DOS) || (!conf.cache && mode == RM_CACHE)) mode = RM_SOS; set_mode(mode); }
void reset(ROM_MODE mode) { comp.pEFF7 &= conf.EFF7_mask; comp.pEFF7 |= EFF7_GIGASCREEN; // [vv] disable turbo { conf.frame = frametime; cpu.SetTpi(conf.frame); // if ((conf.mem_model == MM_PENTAGON)&&(comp.pEFF7 & EFF7_GIGASCREEN))conf.frame = 71680; //removed 0.37 apply_sound(); } //Alone Coder 0.36.4 comp.t_states = 0; comp.frame_counter = 0; comp.p7FFD = comp.pDFFD = comp.pFDFD = comp.p1FFD = 0; comp.p7EFD = 0; comp.p00 = comp.p80FD = 0; // quorum comp.pBF = 0; // ATM3 comp.pBE = 0; // ATM3 comp.igrosoft.pF1 = 0; comp.igrosoft.pF9 = 2; if (conf.mem_model == MM_ATM710 || conf.mem_model == MM_ATM3) { switch(mode) { case RM_DOS: // Запрет палитры, запрет cpm, включение диспетчера памяти // Включение механической клавиатуры, разрешение кадровых прерываний set_atm_FF77(0x4000 | 0x200 | 0x100, 0x80 | 0x40 | 0x20 | 3); comp.pFFF7[0] = 0x100 | 1; // trdos comp.pFFF7[1] = 0x200 | 5; // ram 5 comp.pFFF7[2] = 0x200 | 2; // ram 2 comp.pFFF7[3] = 0x200; // ram 0 comp.pFFF7[4] = 0x100 | 1; // trdos comp.pFFF7[5] = 0x200 | 5; // ram 5 comp.pFFF7[6] = 0x200 | 2; // ram 2 comp.pFFF7[7] = 0x200; // ram 0 break; default: set_atm_FF77(0,0); } } if (conf.mem_model == MM_ATM450) { switch(mode) { case RM_DOS: set_atm_aFE(0x80|0x60); comp.aFB = 0; break; default: set_atm_aFE(0x80); comp.aFB = 0x80; } } comp.flags = 0; comp.active_ay = 0; cpu.reset(); reset_tape(); ay[0].reset(); ay[1].reset(); Saa1099.reset(); if (conf.sound.ay_scheme == AY_SCHEME_CHRV) { out(0xfffd,0xff); //0.36.7 //printf("tfmstatuson0=%d\n",tfmstatuson0); };//Alone Coder #ifdef MOD_GS if (conf.sound.gsreset) reset_gs(); #endif #ifdef MOD_VID_VD comp.vdbase = 0; comp.pVD = 0; #endif if (conf.mem_model == MM_ATM450 || conf.mem_model == MM_ATM710 || conf.mem_model == MM_ATM3 || conf.mem_model == MM_PROFI) load_spec_colors(); comp.ide_hi_byte_r = 0; comp.ide_hi_byte_w = 0; comp.ide_hi_byte_w1 = 0; hdd.reset(); input.atm51.reset(); if ((!conf.trdos_present && mode == RM_DOS) || (!conf.cache && mode == RM_CACHE)) mode = RM_SOS; set_mode(mode); }