diff --git a/android-project/app/src/main/AndroidManifest.xml b/android-project/app/src/main/AndroidManifest.xml index 765e2a0788be6..37320df98a98c 100644 --- a/android-project/app/src/main/AndroidManifest.xml +++ b/android-project/app/src/main/AndroidManifest.xml @@ -4,8 +4,8 @@ --> diff --git a/docs/source/conf.py b/docs/source/conf.py index c498499145f18..63dd0bfed6a07 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -63,9 +63,9 @@ # built documents. # # The short X.Y version. -version = '0.267' +version = '0.268' # The full version, including alpha/beta/rc tags. -release = '0.267' +release = '0.268' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/hash/fp1100_cass.xml b/hash/fp1100_cass.xml index 7d013f63be444..3e8e0efe8c94f 100644 --- a/hash/fp1100_cass.xml +++ b/hash/fp1100_cass.xml @@ -10,7 +10,7 @@ TODO: --> - Alien No Gyakushu + Alien no Gyakushū 1983? Compac @@ -37,7 +37,7 @@ RUN WIDTH 40 LOADM "CAS0:",R ]]> - + diff --git a/hash/hikara.xml b/hash/hikara.xml index 2f898f2374bc8..e6874b25ce2dc 100644 --- a/hash/hikara.xml +++ b/hash/hikara.xml @@ -51,24 +51,24 @@ license:CC0-1.0 * Best Hit Collection Volume 3: J-Pop 3 BH0801003 Grey * Best Hit Collection Volume 4: Anime Song 1 BH0802001 Deep Pink * Best Hit Collection Volume 5: Anime Song 2 BH0802002 Yellow - Best Hit Collection Volume 6: Kid's Songs 1 BH0803001 Green + * Best Hit Collection Volume 6: Kid's Songs 1 BH0803001 Green * Best Hit Collection Volume 7 (no subtitle) BH0904001 Blue * Best Hit Collection Volume 8 (no subtitle) BH0904002 Orange * Pocket Monsters Special -none- Yellow * Ciao Special CC0907001 Translucent Pink - came with the 2009/06 issue of the Ciao (ちゃお) manga - 2 User Cartridge (5 Capacity) n/a Translucent Grey/White - 1 User Cartridge (10 Capacity) n/a Translucent Pink - 1 User Cartridge (20 Capacity) n/a Translucent Blue + 4 User Cartridge (5 Capacity) n/a Translucent Grey/White + 2 User Cartridge (10 Capacity) n/a Translucent Pink + 2 User Cartridge (20 Capacity) n/a Translucent Blue --> + キューティーハニー 倖田來未 Cutie Honey Kōda Kumi + KissHug aiko KissHug aiko + さくらんぼ 大塚愛 Sakuranbo Ōtsuka Ai + Dream Fighter Perfume Dream Fighter Perfume + ポリリズム Perfume Polyrhythm Perfume --> Hi-kara 5-song capacity user cartridge (used, with 5 songs) (Japan) 2008 @@ -81,12 +81,12 @@ license:CC0-1.0 + 崖の上のポニョ 藤岡藤巻と大橋のぞみ Gake no Ue no Ponyo Fujioka Fujimaki & Ōhashi Nozomi + タンタンターン! MilkyWay Tan Tan Tān! MilkyWay + ハートのエースが出てこない キャンディーズ Heart no Ace ga Detekonai Candies + プリキュア5、スマイル go go! 工藤真由 PreCure 5, Smile Go Go! Kudō Mari --> - Hi-kara 5-song capacity user cartridge (used, with 4 songs) (Japan) + Hi-kara 5-song capacity user cartridge (used, with 4 songs, set 1) (Japan) 2008 Takara Tomy @@ -97,18 +97,48 @@ license:CC0-1.0 + 崖の上のポニョ 藤岡藤巻と大橋のぞみ Gake no Ue no Ponyo Fujioka Fujimaki & Ōhashi Nozomi + キセキ GReeeeN Kiseki GReeeeN + タッチ 岩崎良美 TOUCH Iwasaki Yoshimi + キューティーハニー 倖田來未 Cutie Honey Kōda Kumi --> + + Hi-kara 5-song capacity user cartridge (used, with 4 songs, set 2) (Japan) + 2008 + Takara Tomy + + + + + + + + + + Hi-kara 5-song capacity user cartridge (used, with 2 songs) (Japan) + 2008 + Takara Tomy + + + + + + + + - Hi-kara 10-song capacity user cartridge (used, with 10 songs) (Japan) + Hi-kara 10-song capacity user cartridge (used, with 10 songs, set 1) (Japan) 2008 Takara Tomy @@ -119,28 +149,49 @@ license:CC0-1.0 + 陽は、また昇る アラジン Hi wa, Mata Noboru Aladdin + ポリリズム Perfume Polyrhythm Perfume + 世界がひとつになるまで Ya-Ya-yah Sekai ga Hitotsu ni Naromade Ya-Ya-yah + 亜麻色の髪の乙女 島谷ひとみ Amairo no Kami no Otome Shimatani Hitomi + サボテンの花 チューリップ Saboten no Hana TULIP + 涙そうそう 川りみ Nada Sōsō Natsukawa Rimi + 侍戦隊シンケンジャー サイキックラバー(Project.R) Samurai Sentai Shinkenger PSYCHIC LOVER (Project.R) + Journey through the Decade Gackt Journey through the Decade Gackt + PEACH 大塚愛 PEACH Ōtsuka Ai --> + + Hi-kara 10-song capacity user cartridge (used, with 10 songs, set 2) (Japan) + 2008 + Takara Tomy + + + + + + + + - Hi-kara 20-song capacity user cartridge (used, with 20 songs) (Japan) + Hi-kara 20-song capacity user cartridge (used, with 20 songs, set 1) (Japan) 2008 Takara Tomy @@ -150,6 +201,38 @@ license:CC0-1.0 + + + Hi-kara 20-song capacity user cartridge (used, with 20 songs, set 2) (Japan) + 2008 + Takara Tomy + + + + + + + Best Hit Collection Volume 1: J-Pop 1 (Japan) 2008 @@ -210,7 +293,17 @@ license:CC0-1.0 - + + Best Hit Collection Volume 6: Kids' Song 1 + 2008 + Takara Tomy + + + + + + + Best Hit Collection Volume 7 diff --git a/hash/ibm5170_cdrom.xml b/hash/ibm5170_cdrom.xml index 666a43ac6fb23..a138b03bc4dbd 100644 --- a/hash/ibm5170_cdrom.xml +++ b/hash/ibm5170_cdrom.xml @@ -7354,7 +7354,7 @@ Wave Studio v3.12 - + The UltraSound CD diff --git a/hash/megaduck.xml b/hash/megaduck.xml index 92c3372618c0e..c4bb43e0f6e61 100644 --- a/hash/megaduck.xml +++ b/hash/megaduck.xml @@ -112,7 +112,7 @@ license:CC0-1.0 - + Bilder Lexikon @@ -124,7 +124,7 @@ license:CC0-1.0 - + Captain Knick Knack diff --git a/hash/spectrum_cass.xml b/hash/spectrum_cass.xml index 41f6708b2ea52..6778d86690d92 100644 --- a/hash/spectrum_cass.xml +++ b/hash/spectrum_cass.xml @@ -164427,7 +164427,7 @@ Side B - Game 1: Cauldron II: The Pumpkin Strikes Back (Palace Software) Side B - Game 2: Quazatron (Hewson Consultants) Side B - Game 3: Strike Force Cobra (Piranha) ]]> - + diff --git a/makefile b/makefile index 402491e9fa36c..e1aca38c037b2 100644 --- a/makefile +++ b/makefile @@ -1578,7 +1578,7 @@ endif ifeq (posix,$(SHELLTYPE)) $(GENDIR)/version.cpp: makefile $(GENDIR)/git_desc | $(GEN_FOLDERS) - @echo '#define BARE_BUILD_VERSION "0.267"' > $@ + @echo '#define BARE_BUILD_VERSION "0.268"' > $@ @echo '#define BARE_VCS_REVISION "$(NEW_GIT_VERSION)"' >> $@ @echo 'extern const char bare_build_version[];' >> $@ @echo 'extern const char bare_vcs_revision[];' >> $@ @@ -1588,7 +1588,7 @@ $(GENDIR)/version.cpp: makefile $(GENDIR)/git_desc | $(GEN_FOLDERS) @echo 'const char build_version[] = BARE_BUILD_VERSION "W (" BARE_VCS_REVISION ")";' >> $@ else $(GENDIR)/version.cpp: makefile $(GENDIR)/git_desc | $(GEN_FOLDERS) - @echo #define BARE_BUILD_VERSION "0.267" > $@ + @echo #define BARE_BUILD_VERSION "0.268" > $@ @echo #define BARE_VCS_REVISION "$(NEW_GIT_VERSION)" >> $@ @echo extern const char bare_build_version[]; >> $@ @echo extern const char bare_vcs_revision[]; >> $@ diff --git a/scripts/src/sound.lua b/scripts/src/sound.lua index 848f564909983..431783ccb7460 100644 --- a/scripts/src/sound.lua +++ b/scripts/src/sound.lua @@ -235,20 +235,6 @@ if (SOUNDS["ES1373"]~=null) then } end ---------------------------------------------------- --- Data East custom sound chips ---@src/devices/sound/bsmt2000.h,SOUNDS["BSMT2000"] = true ---------------------------------------------------- - -if (SOUNDS["BSMT2000"]~=null) then - files { - MAME_DIR .. "src/devices/sound/bsmt2000.cpp", - MAME_DIR .. "src/devices/sound/bsmt2000.h", - } -end - - - --------------------------------------------------- -- Ensoniq 5503 (Apple IIgs) --@src/devices/sound/es5503.h,SOUNDS["ES5503"] = true @@ -262,7 +248,6 @@ if (SOUNDS["ES5503"]~=null) then end - --------------------------------------------------- -- Ensoniq 5505/5506 --@src/devices/sound/es5506.h,SOUNDS["ES5505"] = true @@ -289,6 +274,20 @@ if (SOUNDS["ESQPUMP"]~=null) then end +--------------------------------------------------- +-- Data East custom sound chips +--@src/devices/sound/bsmt2000.h,SOUNDS["BSMT2000"] = true +--------------------------------------------------- + +if (SOUNDS["BSMT2000"]~=null) then + files { + MAME_DIR .. "src/devices/sound/bsmt2000.cpp", + MAME_DIR .. "src/devices/sound/bsmt2000.h", + } +end + + + --------------------------------------------------- -- Excellent Systems ADPCM sound chip --@src/devices/sound/es8712.h,SOUNDS["ES8712"] = true @@ -1624,26 +1623,26 @@ if (SOUNDS["XT446"]~=null) then end --------------------------------------------------- --- Roland LP-based sample players ---@src/devices/sound/roland_lp.h,SOUNDS["ROLANDLP"] = true +-- Roland GP-based sample players +--@src/devices/sound/roland_gp.h,SOUNDS["ROLANDGP"] = true --------------------------------------------------- -if (SOUNDS["ROLANDLP"]~=null) then +if (SOUNDS["ROLANDGP"]~=null) then files { - MAME_DIR .. "src/devices/sound/roland_lp.cpp", - MAME_DIR .. "src/devices/sound/roland_lp.h", + MAME_DIR .. "src/devices/sound/roland_gp.cpp", + MAME_DIR .. "src/devices/sound/roland_gp.h", } end --------------------------------------------------- --- Roland GP-based sample players ---@src/devices/sound/roland_gp.h,SOUNDS["ROLANDGP"] = true +-- Roland LP-based sample players +--@src/devices/sound/roland_lp.h,SOUNDS["ROLANDLP"] = true --------------------------------------------------- -if (SOUNDS["ROLANDGP"]~=null) then +if (SOUNDS["ROLANDLP"]~=null) then files { - MAME_DIR .. "src/devices/sound/roland_gp.cpp", - MAME_DIR .. "src/devices/sound/roland_gp.h", + MAME_DIR .. "src/devices/sound/roland_lp.cpp", + MAME_DIR .. "src/devices/sound/roland_lp.h", } end diff --git a/src/devices/bus/hp_dio/hp98620.cpp b/src/devices/bus/hp_dio/hp98620.cpp index 0e0be50d21622..bde9a5f78a7cb 100644 --- a/src/devices/bus/hp_dio/hp98620.cpp +++ b/src/devices/bus/hp_dio/hp98620.cpp @@ -37,7 +37,6 @@ class dio16_98620_device : void irq_w(int state); - int m_icount; private: static constexpr int REG0_RESET_ARM_INT = 0x00; @@ -104,9 +103,10 @@ class dio16_98620_device : void update_ctrl(const int channel, const uint16_t data, const bool is_1tq4); bool m_installed_io; + int m_icount; uint8_t m_control; uint8_t m_data; - bool m_irq_state; + bool m_irq_state; struct dma_regs { uint32_t address = 0; @@ -139,8 +139,8 @@ dio16_98620_device::dio16_98620_device(const machine_config &mconfig, device_typ device_t{mconfig, type, tag, owner, clock}, device_execute_interface{mconfig, *this}, device_dio16_card_interface{mconfig, *this}, - m_icount{0}, m_installed_io{false}, + m_icount{0}, m_control{0}, m_data{0}, m_irq_state{false}, @@ -439,8 +439,9 @@ bool dio16_98620_device::dma_transfer(int channel) if (!m_dmar[channel]) return false; - LOG("dma_transfer %s: tc %d/%d\n", m_regs[channel].dma_out ? "out" : "in", - m_regs[channel].tc, m_regs[channel].subcount); + LOG("dma_transfer %s: tc %d/%d\n", + m_regs[channel].dma_out ? "out" : "in", + m_regs[channel].tc, m_regs[channel].subcount); if (m_regs[channel].dma_out) { dmack_w_out(channel, program_space().read_byte(m_regs[channel].address++)); diff --git a/src/devices/bus/ieee488/hp9133.cpp b/src/devices/bus/ieee488/hp9133.cpp index bc2b1ff9b7237..bad7213407ef5 100644 --- a/src/devices/bus/ieee488/hp9133.cpp +++ b/src/devices/bus/ieee488/hp9133.cpp @@ -28,7 +28,7 @@ namespace { class hp9133_device : public device_t, - public device_ieee488_interface + public device_ieee488_interface { public: // construction/destruction @@ -534,11 +534,11 @@ void hp9133_device::io1_w(uint8_t data) // 0 - Fault LED# m_head = (data >> 2) & 7; LOG("%s: %02x Head %d %s%s%s%s\n", __func__, - data, m_head, - (data & IO1_W_BRDY) ? "BRDY " : "", - (data & IO1_W_WDRESET_N) ? "" : "HDCRESET ", - (data & IO1_W_DS1) ? "ACTIVE " : "", - (data & IO1_W_FLT_N) ? "" : "FAULT "); + data, m_head, + (data & IO1_W_BRDY) ? "BRDY " : "", + (data & IO1_W_WDRESET_N) ? "" : "HDCRESET ", + (data & IO1_W_DS1) ? "ACTIVE " : "", + (data & IO1_W_FLT_N) ? "" : "FAULT "); if (!(data & IO1_W_WDRESET_N)) m_hdc->reset(); m_hdc->buffer_ready(data & IO1_W_BRDY); @@ -590,8 +590,8 @@ void hp9133_device::io3_w(uint8_t data) m_intsel = data & IO3_W_INTSEL_MASK; LOG("%s: %02x = INTSEL %d, INT %d DMA %d DMA start %d DMA ACK %s\n", __func__, - data, m_intsel, m_intenable, m_dmaenable, BIT(data, 4), - m_dmaack_switch ? "GPIB" : "FDC"); + data, m_intsel, m_intenable, m_dmaenable, BIT(data, 4), + m_dmaack_switch ? "GPIB" : "FDC"); update_intsel(); if (m_fast) m_fast_timer->adjust(attotime::from_usec(1000)); @@ -713,7 +713,7 @@ void hp9133_device::hdc_readwrite_sector(bool write) const auto &info = m_harddisk->get_info(); lba = (m_hdc_cylinder * info.heads + m_head) * info.sectors + sector; LOG("%s: %s cyl %4d, head %d, sector %2d lba %8d\n", __func__, - write ? "WRITE" : "READ ", m_hdc_cylinder, m_head, sector, lba); + write ? "WRITE" : "READ ", m_hdc_cylinder, m_head, sector, lba); if (write) { m_harddisk->write(lba, m_dma_ram); } else { diff --git a/src/devices/bus/mc10/mcx128.cpp b/src/devices/bus/mc10/mcx128.cpp index 67edd39a198ad..f486f6c19e523 100644 --- a/src/devices/bus/mc10/mcx128.cpp +++ b/src/devices/bus/mc10/mcx128.cpp @@ -53,7 +53,7 @@ ROM_START(mcx128) ROMX_LOAD("mcx128bas.rom", 0x0000, 0x4000, CRC(11202e4b) SHA1(36c30d0f198a1bffee88ef29d92f2401447a91f4), ROM_BIOS(0)) ROM_SYSTEM_BIOS(1, "alice", "Darren Atkinson's MCX-128 cartridge for Alice") - ROMX_LOAD("alice128bas.rom", 0x0000, 0x4000, CRC(a737544a) SHA1(c8fd92705fc42deb6a0ffac6274e27fd61ecd4cc), ROM_BIOS(1)) + ROMX_LOAD("alice128bas.rom", 0x0000, 0x4000, CRC(a737544a) SHA1(c8fd92705fc42deb6a0ffac6274e27fd61ecd4cc), ROM_BIOS(1)) ROM_END //************************************************************************** diff --git a/src/devices/cpu/z80/r800.cpp b/src/devices/cpu/z80/r800.cpp index f02fba758e20b..c5279a44a33ed 100644 --- a/src/devices/cpu/z80/r800.cpp +++ b/src/devices/cpu/z80/r800.cpp @@ -48,9 +48,9 @@ DEFINE_DEVICE_TYPE(R800, r800_device, "r800", "ASCII R800") r800_device::r800_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : z80_device(mconfig, R800, tag, owner, clock) { - z80_set_m1_cycles(1); - z80_set_memrq_cycles(1); - z80_set_iorq_cycles(1); + z80_set_m1_cycles(1); + z80_set_memrq_cycles(1); + z80_set_iorq_cycles(1); } std::unique_ptr r800_device::create_disassembler() diff --git a/src/devices/sound/imaadpcm.cpp b/src/devices/sound/imaadpcm.cpp index 0b1e2255e6395..cd6f08166a386 100644 --- a/src/devices/sound/imaadpcm.cpp +++ b/src/devices/sound/imaadpcm.cpp @@ -116,7 +116,7 @@ void ima_adpcm_state::compute_tables() // compute the step value int stepval = std::min(floor(16.0 * pow(11.0 / 10.0, (double)step)), 32767.); - // manual correction of some early values + // manual correction of some early values if (step == -5 || step == -4) stepval++; diff --git a/src/devices/sound/roland_gp.h b/src/devices/sound/roland_gp.h index 0d0bf3a9a915b..06023f8579151 100644 --- a/src/devices/sound/roland_gp.h +++ b/src/devices/sound/roland_gp.h @@ -1,7 +1,7 @@ // license:BSD-3-Clause // copyright-holders:giulioz -#ifndef MAME_SOUND_ROLANDGP_H -#define MAME_SOUND_ROLANDGP_H +#ifndef MAME_SOUND_ROLAND_GP_H +#define MAME_SOUND_ROLAND_GP_H #pragma once @@ -10,6 +10,8 @@ class tc6116_device : public device_t, public device_sound_interface, public device_rom_interface<23> { public: + static constexpr feature_type unemulated_features() { return feature::SOUND; } + tc6116_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); auto int_callback() { return m_int_callback.bind(); } @@ -74,11 +76,11 @@ class tc6116_device : public device_t, public device_sound_interface, public dev uint32_t m_clock; // clock uint32_t m_rate; // sample rate (usually 32000 Hz) - sound_stream* m_stream; // stream handle + sound_stream *m_stream; // stream handle pcm_channel m_chns[NUM_CHANNELS]; // channel memory [[maybe_unused]] uint8_t m_sel_chn; // selected channel }; DECLARE_DEVICE_TYPE(TC6116, tc6116_device) -#endif // MAME_SOUND_ROLANDGP_H +#endif // MAME_SOUND_ROLAND_GP_H diff --git a/src/devices/sound/roland_lp.h b/src/devices/sound/roland_lp.h index 24db843fd36b9..200c8f29206a1 100644 --- a/src/devices/sound/roland_lp.h +++ b/src/devices/sound/roland_lp.h @@ -1,7 +1,7 @@ // license:BSD-3-Clause // copyright-holders:Valley Bell -#ifndef MAME_SOUND_ROLANDLP_H -#define MAME_SOUND_ROLANDLP_H +#ifndef MAME_SOUND_ROLAND_LP_H +#define MAME_SOUND_ROLAND_LP_H #pragma once @@ -66,4 +66,4 @@ class mb87419_mb87420_device : public device_t, public device_sound_interface, p DECLARE_DEVICE_TYPE(MB87419_MB87420, mb87419_mb87420_device) -#endif // MAME_SOUND_ROLANDLP_H +#endif // MAME_SOUND_ROLAND_LP_H diff --git a/src/frontend/mame/ui/selmenu.cpp b/src/frontend/mame/ui/selmenu.cpp index ef91b49f4c0fe..bd88504c833d9 100644 --- a/src/frontend/mame/ui/selmenu.cpp +++ b/src/frontend/mame/ui/selmenu.cpp @@ -1923,7 +1923,11 @@ bool menu_select_launch::handle_keys(u32 flags, int &iptkey) if (exclusive_input_pressed(iptkey, IPT_UI_CANCEL, 0)) { - if (!m_search.empty()) + if (m_ui_error) + { + // dismiss error + } + else if (!m_search.empty()) { // escape pressed with non-empty search text clears it m_search.clear(); @@ -1945,7 +1949,12 @@ bool menu_select_launch::handle_keys(u32 flags, int &iptkey) // accept left/right keys as-is with repeat if (exclusive_input_pressed(iptkey, IPT_UI_LEFT, (flags & PROCESS_LR_REPEAT) ? 6 : 0)) { - if (m_focus == focused_menu::RIGHTTOP) + if (m_ui_error) + { + // dismiss error + return false; + } + else if (m_focus == focused_menu::RIGHTTOP) { // Swap the right panel and swallow it iptkey = IPT_INVALID; @@ -1976,7 +1985,12 @@ bool menu_select_launch::handle_keys(u32 flags, int &iptkey) // swallow left/right keys if they are not appropriate if (exclusive_input_pressed(iptkey, IPT_UI_RIGHT, (flags & PROCESS_LR_REPEAT) ? 6 : 0)) { - if (m_focus == focused_menu::RIGHTTOP) + if (m_ui_error) + { + // dismiss error + return false; + } + else if (m_focus == focused_menu::RIGHTTOP) { // Swap the right panel and swallow it iptkey = IPT_INVALID; diff --git a/src/mame/apple/macquadra700.cpp b/src/mame/apple/macquadra700.cpp index 31a9f52b9eb41..d001cacf13cf7 100644 --- a/src/mame/apple/macquadra700.cpp +++ b/src/mame/apple/macquadra700.cpp @@ -830,7 +830,7 @@ void eclipse_state::via2_out_b_q900(u8 data) SOFTWARE_LIST(config, "hdd_list").set_original("mac_hdd"); SOFTWARE_LIST(config, "cd_list").set_original("mac_cdrom").set_filter("MC68040"); - // SOFTWARE_LIST(config, "cd_apple_dev").set_original("apple_devcd"); + //SOFTWARE_LIST(config, "cd_apple_dev").set_original("apple_devcd"); SOFTWARE_LIST(config, "flop_mac35_orig").set_original("mac_flop_orig"); SOFTWARE_LIST(config, "flop_mac35_clean").set_original("mac_flop_clcracked"); SOFTWARE_LIST(config, "flop35_list").set_original("mac_flop"); diff --git a/src/mame/casio/pv1000.cpp b/src/mame/casio/pv1000.cpp index 9732c58742d7d..7892c2706d2a4 100644 --- a/src/mame/casio/pv1000.cpp +++ b/src/mame/casio/pv1000.cpp @@ -490,8 +490,9 @@ void pv1000_state::pv1000(machine_config &config) // Note that this value is overridden by the user's pv1000.cfg, if present. // 206px x 48/35(PAR) / 4/3(DAR) = 212sl - m_screen->set_default_position(216/206.0,0, //216 px in storage aspect; cropped to 206 px - 244/212.0,0); //244 sl in storage aspect; cropped to 212 sl + m_screen->set_default_position( + 216/206.0, 0, //216 px in storage aspect; cropped to 206 px + 244/212.0, 0); //244 sl in storage aspect; cropped to 212 sl m_screen->set_screen_update(FUNC(pv1000_state::screen_update_pv1000)); m_screen->set_palette(m_palette); diff --git a/src/mame/heathzenith/h8.cpp b/src/mame/heathzenith/h8.cpp index 25aea75c1d0e8..243fe3d279f05 100644 --- a/src/mame/heathzenith/h8.cpp +++ b/src/mame/heathzenith/h8.cpp @@ -454,5 +454,5 @@ ROM_END /* Driver */ -/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS, INIT COMPANY FULLNAME FLAGS */ +// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS, INIT COMPANY FULLNAME FLAGS COMP( 1977, h8, 0, 0, h8, h8, h8_state, empty_init, "Heath Company", "Heathkit H8 Digital Computer", MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/heathzenith/mms77316_fdc.cpp b/src/mame/heathzenith/mms77316_fdc.cpp index c4804d2ebf8c6..c978791e3ee1c 100644 --- a/src/mame/heathzenith/mms77316_fdc.cpp +++ b/src/mame/heathzenith/mms77316_fdc.cpp @@ -4,9 +4,9 @@ Magnolia Microsystems 77316 DD soft-sectored floppy controller - Supported upto 8 floppy drives - - 4 8" drives - - 4 5.25" drives + Supported upto 8 floppy drives + - 4 8" drives + - 4 5.25" drives ****************************************************************************/ diff --git a/src/mame/heathzenith/z29.cpp b/src/mame/heathzenith/z29.cpp index 9aa72786d82ef..9ec3d6e1fab71 100644 --- a/src/mame/heathzenith/z29.cpp +++ b/src/mame/heathzenith/z29.cpp @@ -76,7 +76,7 @@ void z29_state::keyin_w(int state) /** * Port 1 (based on ROM listing) - * + * * bit 0 - KB output line * bit 1 - KB input line * bit 2 - 0 = normal video 1 = suppressed @@ -93,7 +93,7 @@ u8 z29_state::p1_r() /** * Port 3 (based on ROM listing) - * + * * bit 1 - predefined serial port transmit pin * bit 4 - 0 = clear memory 1 = DMA CRTC * bit 5 - Clear to Send diff --git a/src/mame/hegenerglaser/brikett.cpp b/src/mame/hegenerglaser/brikett.cpp index 85d0b5e996b0f..f17d594bf1820 100644 --- a/src/mame/hegenerglaser/brikett.cpp +++ b/src/mame/hegenerglaser/brikett.cpp @@ -200,13 +200,13 @@ INPUT_CHANGED_MEMBER(brikett_state::change_cpu_freq) if (newval & 8) { /* - 3rd hardware model has 2 XTALs, it will increase CPU voltage (and speed) - when running on mains power, the 3.579545MHz XTAL is still used for IRQ. + 3rd hardware model has 2 XTALs, it will increase CPU voltage (and speed) + when running on mains power, the 3.579545MHz XTAL is still used for IRQ. - Mephisto III could be fitted with a 12MHz XTAL instead of 6.144MHz and - a newer CDP1805CE CPU by Hobby Computer Centrale on request. (It is - unexpected that the 1805 accepts such a high overclock, but tests show - that it is indeed twice faster) + Mephisto III could be fitted with a 12MHz XTAL instead of 6.144MHz and + a newer CDP1805CE CPU by Hobby Computer Centrale on request. (It is + unexpected that the 1805 accepts such a high overclock, but tests show + that it is indeed twice faster) */ static const XTAL freq[3] = { 3.579545_MHz_XTAL, 6.144_MHz_XTAL, 12_MHz_XTAL }; m_maincpu->set_unscaled_clock(freq[(newval & 3) % 3]); diff --git a/src/mame/hp/hp98x6.cpp b/src/mame/hp/hp98x6.cpp index a066eacd3e1dd..62131e52d42d1 100644 --- a/src/mame/hp/hp98x6.cpp +++ b/src/mame/hp/hp98x6.cpp @@ -143,6 +143,13 @@ class hp98x6_base_state : public driver_device virtual void machine_start() override; virtual void machine_reset() override; + void hp98x6_base(machine_config &mconfig, unsigned dot_clock, int char_width); + virtual void cpu_mem_map(address_map &map); + void diag_led_w(uint8_t data); + virtual void cpu_reset_w(int state); + void hpib_irq_w(int state); + void upi_irq7_w(int state); + required_device m_cpu; required_device m_ram; required_device m_crtc; @@ -154,13 +161,6 @@ class hp98x6_base_state : public driver_device // Character generator required_region_ptr m_chargen; - void hp98x6_base(machine_config &mconfig, unsigned dot_clock, int char_width); - virtual void cpu_mem_map(address_map &map); - void diag_led_w(uint8_t data); - virtual void cpu_reset_w(int state); - void hpib_irq_w(int state); - void upi_irq7_w(int state); - bool m_hsync_en; bool m_graphic_en; bool m_hpib_irq; @@ -843,17 +843,6 @@ class hp9826_36_state : public hp98x6_base_state virtual void machine_reset() override; virtual void device_post_load() override; - required_device m_fdc; - required_device m_drive0; - optional_device m_drive1; - required_device_array m_ss; - required_device m_fdc_timer; - required_ioport m_sw1; - required_ioport m_sys_ctrl_sw; - - // ID PROM - required_region_ptr m_idprom; - TIMER_DEVICE_CALLBACK_MEMBER(fdc_ram_io); void hp9826_36(machine_config &mconfig, unsigned dot_clock, int char_width); @@ -876,6 +865,17 @@ class hp9826_36_state : public hp98x6_base_state void hpib_w(offs_t offset, uint8_t data); uint16_t id_prom_r(offs_t offset); + required_device m_fdc; + required_device m_drive0; + optional_device m_drive1; + required_device_array m_ss; + required_device m_fdc_timer; + required_ioport m_sw1; + required_ioport m_sys_ctrl_sw; + + // ID PROM + required_region_ptr m_idprom; + uint8_t m_floppy_ctrl; uint8_t m_floppy_buffer[256]; uint8_t m_buffer_addr; @@ -919,6 +919,8 @@ void hp9826_36_state::machine_reset() void hp9826_36_state::device_post_load() { + hp98x6_base_state::device_post_load(); + m_curr_floppy = nullptr; // Bring m_curr_floppy in synch floppy_update_sel(); @@ -1437,8 +1439,6 @@ class hp9836_state : public hp9826_36_state static inline constexpr unsigned TEXT_VRAM_SIZE = 2048; static inline constexpr unsigned GRAPHIC_VRAM_SIZE = 16384; - required_ioport m_frame_rate_sw; - virtual void cpu_mem_map(address_map &map) override; uint16_t text_r(offs_t offset, uint16_t mem_mask); void text_w(offs_t offset, uint16_t data, uint16_t mem_mask); @@ -1447,6 +1447,8 @@ class hp9836_state : public hp9826_36_state MC6845_UPDATE_ROW(crtc_update_row); + required_ioport m_frame_rate_sw; + uint16_t m_text_vram[TEXT_VRAM_SIZE]; uint16_t m_graphic_vram[GRAPHIC_VRAM_SIZE]; bool m_60hz; @@ -1789,9 +1791,6 @@ class hp9836c_state : public hp9826_36_state static inline constexpr unsigned TEXT_VRAM_SIZE = 2048; static inline constexpr unsigned GRAPHIC_VRAM_SIZE = 131072; - required_ioport m_frame_rate_sw; - memory_share_creator m_clut; - virtual void cpu_mem_map(address_map &map) override; uint16_t text_r(offs_t offset, uint16_t mem_mask); void text_w(offs_t offset, uint16_t data, uint16_t mem_mask); @@ -1800,6 +1799,9 @@ class hp9836c_state : public hp9826_36_state MC6845_UPDATE_ROW(crtc_update_row); + required_ioport m_frame_rate_sw; + memory_share_creator m_clut; + uint16_t m_text_vram[TEXT_VRAM_SIZE]; uint16_t m_graphic_vram[GRAPHIC_VRAM_SIZE]; bool m_60hz; diff --git a/src/mame/igs/igs009.cpp b/src/mame/igs/igs009.cpp index f1fd46e304b7b..14892ed72d0b6 100644 --- a/src/mame/igs/igs009.cpp +++ b/src/mame/igs/igs009.cpp @@ -816,7 +816,7 @@ void igs009_state::gp98(machine_config &config) Original IGS. For amusement. */ -ROM_START( jingbell ) +ROM_START( jbell157us ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "27c512_v157_us.u44", 0x00000, 0x10000, CRC(37f95b60) SHA1(db2022802ce553ce7a0e8403408f3194b2f10007) ) @@ -841,7 +841,7 @@ ROM_END Original IGS. For amusement. */ -ROM_START( jingbella ) +ROM_START( jbell155ue ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "27c512_v155.u44", 0x00000, 0x10000, CRC(0813d12b) SHA1(4c35b656d1e54619bbfd26cbc017eba336e6abda) ) @@ -866,7 +866,7 @@ ROM_END Original IGS. For amusement. */ -ROM_START( jingbellb ) +ROM_START( jbell153ue ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "27c512_v153.u44", 0x00000, 0x10000, CRC(fd3bc092) SHA1(a92dc9bc15d7a4816887d66d46cea925d230c5b8) ) @@ -891,7 +891,7 @@ ROM_END Original IGS. For amusement. */ -ROM_START( jingbellc ) +ROM_START( jbell141ue ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "27c512_v141.u44", 0x00000, 0x10000, CRC(6997a903) SHA1(991508d85e55a3c6f811070352e06ae6bf65cc2e) ) @@ -949,7 +949,7 @@ Italy, V133I ***************************************************************************/ -ROM_START( jingbelli ) +ROM_START( jbell133i ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "jinglev133i.u44", 0x00000, 0x10000, CRC(df60dc39) SHA1(ff57afd50c045b621395353fdc50ffd1e1b65e9e) ) @@ -1149,12 +1149,12 @@ ROM_END } // anonymous namespace -// YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS -GAME( 1997, jingbell, 0, jingbell, jingbell, igs009_state, init_jingbell, ROT0, "IGS", "Jingle Bell (US, V157US)", MACHINE_SUPPORTS_SAVE ) -GAME( 1997, jingbella, jingbell, jingbell, jingbell, igs009_state, init_jingbell, ROT0, "IGS", "Jingle Bell (EU, V155UE)", MACHINE_SUPPORTS_SAVE ) // Shows V154UE in test mode! -GAME( 1997, jingbellb, jingbell, jingbell, jingbell, igs009_state, init_jingbell, ROT0, "IGS", "Jingle Bell (EU, V153UE)", MACHINE_SUPPORTS_SAVE ) -GAME( 1995, jingbellc, jingbell, jingbell, jingbell, igs009_state, init_jingbelli, ROT0, "IGS", "Jingle Bell (EU, V141UE)", MACHINE_SUPPORTS_SAVE ) -GAME( 1995?, jingbelli, jingbell, jingbell, jingbell, igs009_state, init_jingbelli, ROT0, "IGS", "Jingle Bell (Italy, V133I)", MACHINE_SUPPORTS_SAVE ) -GAME( 1995?, animalhjb, jingbell, jingbell, jingbell, igs009_state, init_animalhjb, ROT0, "bootleg", "Animal House (bootleg of Jingle Bell)", MACHINE_SUPPORTS_SAVE ) -GAME( 1998, gp98, 0, gp98, jingbell, igs009_state, empty_init, ROT0, "Romtec Co. Ltd", "Grand Prix '98 (V100K, set 1)", MACHINE_SUPPORTS_SAVE ) -GAME( 1998, gp98a, gp98, gp98, jingbell, igs009_state, empty_init, ROT0, "Romtec Co. Ltd", "Grand Prix '98 (V100K, set 2)", MACHINE_SUPPORTS_SAVE ) // "V100K JINGLEBELL" string on program ROM +// YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS +GAME( 1997, jbell157us, jbell, jingbell, jingbell, igs009_state, init_jingbell, ROT0, "IGS", "Jingle Bell (US, V157US)", MACHINE_SUPPORTS_SAVE ) +GAME( 1997, jbell155ue, jbell, jingbell, jingbell, igs009_state, init_jingbell, ROT0, "IGS", "Jingle Bell (EU, V155UE)", MACHINE_SUPPORTS_SAVE ) // Shows V154UE in test mode! +GAME( 1997, jbell153ue, jbell, jingbell, jingbell, igs009_state, init_jingbell, ROT0, "IGS", "Jingle Bell (EU, V153UE)", MACHINE_SUPPORTS_SAVE ) +GAME( 1995, jbell141ue, jbell, jingbell, jingbell, igs009_state, init_jingbelli, ROT0, "IGS", "Jingle Bell (EU, V141UE)", MACHINE_SUPPORTS_SAVE ) +GAME( 1995?, jbell133i, jbell, jingbell, jingbell, igs009_state, init_jingbelli, ROT0, "IGS", "Jingle Bell (Italy, V133I)", MACHINE_SUPPORTS_SAVE ) +GAME( 1995?, animalhjb, jbell, jingbell, jingbell, igs009_state, init_animalhjb, ROT0, "bootleg", "Animal House (bootleg of Jingle Bell)", MACHINE_SUPPORTS_SAVE ) +GAME( 1998, gp98, 0, gp98, jingbell, igs009_state, empty_init, ROT0, "Romtec Co. Ltd", "Grand Prix '98 (V100K, set 1)", MACHINE_SUPPORTS_SAVE ) +GAME( 1998, gp98a, gp98, gp98, jingbell, igs009_state, empty_init, ROT0, "Romtec Co. Ltd", "Grand Prix '98 (V100K, set 2)", MACHINE_SUPPORTS_SAVE ) // "V100K JINGLEBELL" string on program ROM diff --git a/src/mame/igs/spoker.cpp b/src/mame/igs/spoker.cpp index c30ca99507894..e8a4da614331e 100644 --- a/src/mame/igs/spoker.cpp +++ b/src/mame/igs/spoker.cpp @@ -1239,7 +1239,7 @@ ROM_START( spk100 ) // no labels on the ROMs ROM_LOAD( "u38", 0x0000, 0x40000, CRC(33e6089d) SHA1(cd1ad01e92c18bbeab3fe3ea9152f8b0a3eb1b29) ) ROM_END -ROM_START( jb200us ) // IGS PCB-0308-01, same as the US Super Poker sets +ROM_START( jbell ) // IGS PCB-0308-01, same as the US Super Poker sets ROM_REGION( 0x20000, "maincpu", 0 ) ROM_LOAD( "jingle_v200us.u27", 0x00000, 0x10000, CRC(831782cb) SHA1(8e903569a0cd34222a7e5fd3e9ab21bf00802bb3) ) // 27C512 ROM_LOAD( "jingle_v200us_7.u26", 0x10000, 0x10000, CRC(3160f443) SHA1(2930359961a618cbe356a7f9c8fd63bacba2a6b0) ) // 27C512, 1ST AND 2ND HALF IDENTICAL @@ -1501,4 +1501,4 @@ GAME( 1993?, spk114it, spk306us, spoker, spk114it, spoker_state, init_spk11 GAME( 1996, spk102ua, spk306us, spokeru, spoker, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v102UA)", MACHINE_SUPPORTS_SAVE ) GAME( 1996, spk100, spk306us, spoker, spk114it, spoker_state, init_spk100, ROT0, "IGS", "Super Poker (v100)", MACHINE_SUPPORTS_SAVE ) GAME( 1993?, 3super8, 0, _3super8, 3super8, spoker_state, init_3super8, ROT0, "", "3 Super 8 (Italy)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) //roms are badly dumped -GAME( 1997, jb200us, 0, jb, jb, jb_state, init_spokeru, ROT0, "IGS", "Jingle Bell (v200US)", MACHINE_SUPPORTS_SAVE ) +GAME( 1997, jbell, 0, jb, jb, jb_state, init_spokeru, ROT0, "IGS", "Jingle Bell (v200US)", MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/konami/viper.cpp b/src/mame/konami/viper.cpp index 9c5446b688e57..e4c9771e86aec 100644 --- a/src/mame/konami/viper.cpp +++ b/src/mame/konami/viper.cpp @@ -94,7 +94,7 @@ \- sscopex/sogeki desyncs during gameplay intro, leaves heavy trails in gameplay; - ppp2nd: hangs when selecting game mode from service (manages to save); - wcombatj: gets stuck on network check; - - thrild2c: bad CF dump (blue screens because of it); + - thrild2c: bad CF dump (blue screens because of it); - all games needs to be verified against factory settings (game options, coin options & sound options often don't match "green colored" defaults) diff --git a/src/mame/layout/h8.lay b/src/mame/layout/h8.lay index b571a4cc4b522..7938c80a790a5 100644 --- a/src/mame/layout/h8.lay +++ b/src/mame/layout/h8.lay @@ -179,124 +179,98 @@ license:CC0-1.0 - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - - - - - - - - - - - - - - + - - - - - - - - + + + + + + + + + + - - + + + - + - + - + - + - + - + - + - - - - - - - + - - - - - + + + + - + - - + - + - - - - - - - - + - + - + diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 37b9ae54fc4c5..20997b08c2537 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -20149,11 +20149,11 @@ wcherry // bootleg animalhjb // bootleg gp98 // (c) 1998 gp98a // (c) 1998 -jingbell // (c) 1997 -jingbella // (c) 1997 -jingbellb // (c) 1997 -jingbellc // (c) 1995 -jingbelli // (c) 1995? +jbell133i // (c) 1995? +jbell141ue // (c) 1995 +jbell153ue // (c) 1997 +jbell155ue // (c) 1997 +jbell157us // (c) 1997 @source:igs/igs011.cpp dbc // (c) 199? @@ -20476,7 +20476,7 @@ kov3hd101 @source:igs/spoker.cpp 3super8 // unknown -jb200us // (c) 1997 IGS +jbell // (c) 1997 IGS spk100 // (c) 1996 IGS spk102ua // (c) 1996 IGS spk114it // (c) 199? IGS diff --git a/src/mame/nichibutsu/cclimber_v.cpp b/src/mame/nichibutsu/cclimber_v.cpp index b37fa2f567d78..e933ffdda5b6e 100644 --- a/src/mame/nichibutsu/cclimber_v.cpp +++ b/src/mame/nichibutsu/cclimber_v.cpp @@ -643,16 +643,15 @@ uint32_t cclimber_state::screen_update_cclimber(screen_device &screen, bitmap_in bitmap.fill(0, cliprect); draw_playfield(screen, bitmap, cliprect); - // draw the "big sprite" under the regular sprites - if ((m_bigsprite_control[0] & 0x01)) + if (m_bigsprite_control[0] & 0x01) { + // draw the "big sprite" under the regular sprites cclimber_draw_bigsprite(screen, bitmap, cliprect); cclimber_draw_sprites(bitmap, cliprect, m_gfxdecode->gfx(1)); } - - // draw the "big sprite" over the regular sprites else { + // draw the "big sprite" over the regular sprites cclimber_draw_sprites(bitmap, cliprect, m_gfxdecode->gfx(1)); cclimber_draw_bigsprite(screen, bitmap, cliprect); } @@ -675,16 +674,15 @@ uint32_t yamato_state::screen_update_yamato(screen_device &screen, bitmap_ind16 draw_playfield(screen, bitmap, cliprect); - // draw the "big sprite" under the regular sprites - if ((m_bigsprite_control[0] & 0x01)) + if (m_bigsprite_control[0] & 0x01) { + // draw the "big sprite" under the regular sprites cclimber_draw_bigsprite(screen, bitmap, cliprect); toprollr_draw_sprites(bitmap, cliprect, m_gfxdecode->gfx(1)); } - - // draw the "big sprite" over the regular sprites else { + // draw the "big sprite" over the regular sprites toprollr_draw_sprites(bitmap, cliprect, m_gfxdecode->gfx(1)); cclimber_draw_bigsprite(screen, bitmap, cliprect); } @@ -728,16 +726,15 @@ uint32_t swimmer_state::screen_update_swimmer(screen_device &screen, bitmap_ind1 draw_playfield(screen, bitmap, cliprect); - // draw the "big sprite" under the regular sprites - if ((m_bigsprite_control[0] & 0x01)) + if (m_bigsprite_control[0] & 0x01) { + // draw the "big sprite" under the regular sprites cclimber_draw_bigsprite(screen, bitmap, cliprect); swimmer_draw_sprites(bitmap, cliprect, m_gfxdecode->gfx(1)); } - - // draw the "big sprite" over the regular sprites else { + // draw the "big sprite" over the regular sprites swimmer_draw_sprites(bitmap, cliprect, m_gfxdecode->gfx(1)); cclimber_draw_bigsprite(screen, bitmap, cliprect); } @@ -760,16 +757,15 @@ uint32_t toprollr_state::screen_update_toprollr(screen_device &screen, bitmap_in m_bg_tilemap->mark_all_dirty(); m_bg_tilemap->draw(screen, bitmap, scroll_area_clip, 0, 0); - // draw the "big sprite" over the regular sprites - if ((m_bigsprite_control[1] & 0x20)) + if (m_bigsprite_control[1] & 0x20) { + // draw the "big sprite" over the regular sprites toprollr_draw_sprites(bitmap, scroll_area_clip, m_gfxdecode->gfx(1)); toprollr_draw_bigsprite(screen, bitmap, scroll_area_clip); } - - // draw the "big sprite" under the regular sprites else { + // draw the "big sprite" under the regular sprites toprollr_draw_bigsprite(screen, bitmap, scroll_area_clip); toprollr_draw_sprites(bitmap, scroll_area_clip, m_gfxdecode->gfx(1)); } diff --git a/src/mame/nmk/nmk16.cpp b/src/mame/nmk/nmk16.cpp index 491cc89689f51..171ec04f2ca29 100644 --- a/src/mame/nmk/nmk16.cpp +++ b/src/mame/nmk/nmk16.cpp @@ -3994,22 +3994,22 @@ void nmk16_state::machine_reset() This hardware relies on two counters and the contents of two PROMs for the timing signals generation. The counters are implemented inside NMK902 custom chip (except tharrier) for all "low-res" games and are used to address the entries on each PROM in a sequential way. On "mid-res" and "hi-res" games, one of the counters is - implemented outside the custom chip, due to they decided to boost up the horizontal resolution, and the initial + implemented outside the custom chip, due to they decided to boost up the horizontal resolution, and the initial configuration is hardwired inside the chip. - "Horizontal" signals, such as HBlank, HSync... are generated using one of the counters and a 256x4bit PROM, and each step on the counter takes 2 pixel clock cycles: - For "low-res" games the counter starts on 0x40 and goes to 0xFF having 192 steps. As each step is 2 px, the total - H-size is 384px wide. PROM entries from 0x00 to 0x39 address are never used. + H-size is 384px wide. PROM entries from 0x00 to 0x39 address are never used. - For "mid-res" games the counter starts on 0x20 and goes to 0xFF having 224 steps. As each step is 2 px, the total - H-size is 448px wide. PROM entries from 0x00 to 0x19 address are never used. + H-size is 448px wide. PROM entries from 0x00 to 0x19 address are never used. - For "hi-res" games the counter starts on 0x00 and goes to 0xFF having 256 steps. As each step is 2 px, the total - H-size is 512px wide. All PROM entries are used. + H-size is 512px wide. All PROM entries are used. - "Vertical" signals, such as VBlank, Interrupt requests... are generated using the other counter and a 256x8bit PROM, and each step on the counter takes 2 scanlines. - In this case, for all games the counter starts on 0x75 and goes to 0xFF having 139 steps. As each step is 2 lines, - the total V-size is 278 lines high. PROM entries from 0x00 address to 0x74 are never used. + the total V-size is 278 lines high. PROM entries from 0x00 address to 0x74 are never used. Going into more detail: @@ -4022,7 +4022,7 @@ void nmk16_state::machine_reset() 1 --x- HSYNC (active low) 2 -x-- HBLANK (active low) 3 x--- unused on almost all games (only used in gunnail and raphero, purpose unknown) - + Considering that and looking at the contents of the PROMs, the horizontal timings are below: - For "low-res" (6MHz pixel clock): @@ -4034,8 +4034,8 @@ void nmk16_state::machine_reset() | 'start of line' (pixel 0) Each line: ( 6MHz / 384 pixels per line ) = 15625Hz = 64 usec - - + + - For "mid-res" (7MHz pixel clock): 0........59..........................................................................380...400...416....447 /LINE-END (2 px): ----------------------------------------------------------------------------------------------------------X @@ -4054,7 +4054,7 @@ void nmk16_state::machine_reset() HBLANK (28 + 100 px): XXXXXX-------------------------------------------384-wide-------------------------XXXXXXXXXXXXXXXXXXXXXXXXX // HBlank ends 28 pixels after 'start of line' ^ | - 'start of line' (pixel 0) + 'start of line' (pixel 0) Each line: ( 8MHz / 512 pixels per line ) = 15625Hz = 64 usec @@ -4149,16 +4149,16 @@ void nmk16_state::set_screen_hires(machine_config &config) - IRQ1: - At 68 and 196 scanlines on most games - - 'tharrier' only at 146 scanline - - 'vandyke', 'bioship' and 'blkheart' only at 102 scanline (also 'ddealer' outside this driver). - 'vandyke' permanently inhibits it by software. - - 'powerins' only at 16 scanline (looks like it's always inhibited by software) + - 'tharrier' only at 146 scanline + - 'vandyke', 'bioship' and 'blkheart' only at 102 scanline (also 'ddealer' outside this driver). + 'vandyke' permanently inhibits it by software. + - 'powerins' only at 16 scanline (looks like it's always inhibited by software) - IRQ2: - At 16 scanline on most games (VBIN = end of VBLANK = start of active video) - - 'tdragon', 'macross2', 'tdragon2' and 'raphero' lack it - - 'tharrier' at 54 scanline - - 'powerins' at 128 scanline (looks like it's always inhibited by software) + - 'tdragon', 'macross2', 'tdragon2' and 'raphero' lack it + - 'tharrier' at 54 scanline + - 'powerins' at 128 scanline (looks like it's always inhibited by software) - IRQ3: - Only triggered by 'powerins' at 90 and 166 scanlines (looks like it's always inhibited by software) @@ -4168,10 +4168,10 @@ void nmk16_state::set_screen_hires(machine_config &config) */ TIMER_DEVICE_CALLBACK_MEMBER(nmk16_state::nmk16_scanline) { -// constexpr int SPRDMA_INDEX = 0; // not used in emulation TODO: check if it could be used to trigger the sprite DMA instead of setting it 4 lines after VBOUT -// constexpr int VSYNC_INDEX = 1; // not used in emulation -// constexpr int VBLANK_INDEX = 2; // not used in emulation -// constexpr int NOT_USED = 3; // not used in emulation +// constexpr int SPRDMA_INDEX = 0; // not used in emulation TODO: check if it could be used to trigger the sprite DMA instead of setting it 4 lines after VBOUT +// constexpr int VSYNC_INDEX = 1; // not used in emulation +// constexpr int VBLANK_INDEX = 2; // not used in emulation +// constexpr int NOT_USED = 3; // not used in emulation constexpr int IPL0_INDEX = 4; constexpr int IPL1_INDEX = 5; constexpr int IPL2_INDEX = 6; @@ -4252,7 +4252,7 @@ LV4 LV2 LV1 LV1 - VBlank = 54 lines * 64 usec = 3456 usec - Active = 224 lines * 64 usec = 14336 usec - IRQ1 gap = 128 lines * 64 usec = 8192 usec - + The following code is used for bootleg, Afega, Comad and NMK games that PROMs are still undumped, on which the interrupt triggering cannot be relied on the PROMs contents. */ diff --git a/src/mame/nokia/mikromikko2.cpp b/src/mame/nokia/mikromikko2.cpp index e513a188bea5c..cf6739f1c6579 100644 --- a/src/mame/nokia/mikromikko2.cpp +++ b/src/mame/nokia/mikromikko2.cpp @@ -33,14 +33,14 @@ */ /* - - TODO: - - DMA - - floppy - - SASI - - video - - keyboard + TODO: + + - DMA + - floppy + - SASI + - video + - keyboard */ @@ -79,7 +79,7 @@ uint8_t mm2_state::status_r(offs_t offset) uint8_t data = 0x80; data |= !m_rs232a->dsr_r() << 4; - + return data; } @@ -169,8 +169,8 @@ uint8_t mm2_state::dmac_mem_r(offs_t offset) if (WORD_ALIGNED(offset)) { return mem[offset >> 1] & 0xff; - } - else + } + else { return mem[offset >> 1] >> 8; } @@ -180,11 +180,11 @@ void mm2_state::dmac_mem_w(offs_t offset, uint8_t data) { uint16_t *mem = (uint16_t *)m_maincpu->space(AS_PROGRAM).get_write_ptr(m_dma_hi << 15); uint16_t value = mem[offset >> 1]; - - if (WORD_ALIGNED(offset)) + + if (WORD_ALIGNED(offset)) { mem[offset >> 1] = (value & 0xff00) | data; - } + } else { mem[offset >> 1] = data << 8 | (value & 0xff); @@ -376,12 +376,12 @@ void mm2_state::mm2(machine_config &config) m_mpsc->out_txdb_callback().set(m_rs232b, FUNC(rs232_port_device::write_txd)); m_mpsc->out_rtsb_callback().set(m_rs232b, FUNC(rs232_port_device::write_rts)); m_mpsc->out_int_callback().set(m_pic, FUNC(pic8259_device::ir1_w)); - + RS232_PORT(config, m_rs232a, default_rs232_devices, nullptr); m_rs232a->rxd_handler().set(m_mpsc, FUNC(z80dart_device::rxa_w)); m_rs232a->dcd_handler().set(m_mpsc, FUNC(z80dart_device::dcda_w)); m_rs232a->cts_handler().set(m_mpsc, FUNC(z80dart_device::ctsa_w)); - + RS232_PORT(config, m_rs232b, default_rs232_devices, "terminal"); m_rs232b->rxd_handler().set(m_mpsc, FUNC(z80dart_device::rxb_w)); m_rs232b->cts_handler().set(m_mpsc, FUNC(z80dart_device::ctsb_w)); diff --git a/src/mame/nokia/mikromikko2.h b/src/mame/nokia/mikromikko2.h index 576d0614d2a6d..51c5b77c7e3ff 100644 --- a/src/mame/nokia/mikromikko2.h +++ b/src/mame/nokia/mikromikko2.h @@ -103,7 +103,7 @@ class mm2_state : public driver_device void update_pic_ir0() { m_pic->ir0_w(m_ir0); } void ir0_w(int state) { if (state) { m_ir0 = ASSERT_LINE; update_pic_ir0(); } } void tcl_w(offs_t offset, uint8_t data) { m_ir0 = CLEAR_LINE; update_pic_ir0(); } - + void update_pic_ir5() { m_pic->ir5_w(m_vpac_int || m_sio_rxrdy || m_sio_txrdy); } void vpac_int_w(int state) { m_vpac_int = state; update_pic_ir5(); } void sio_rxrdy_w(int state) { m_sio_rxrdy = state; update_pic_ir5(); } diff --git a/src/mame/seibu/goal92.cpp b/src/mame/seibu/goal92.cpp index fa5c7ec4cf41e..4361204b9ca62 100644 --- a/src/mame/seibu/goal92.cpp +++ b/src/mame/seibu/goal92.cpp @@ -338,7 +338,7 @@ void goal92_state::sound_map(address_map &map) } static INPUT_PORTS_START( goal92 ) - + PORT_START("DSW1") PORT_DIPNAME( 0x0007, 0x0007, "Coin 1 (3)" ) PORT_DIPLOCATION("SW1:1,2,3") PORT_DIPSETTING( 0x0000, DEF_STR( 4C_1C ) ) @@ -363,7 +363,7 @@ static INPUT_PORTS_START( goal92 ) PORT_DIPSETTING( 0x0000, "x2" ) // NOTE: It should be the screen flip DIP, but isn't working - PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:8") + PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:8") PORT_DIPSETTING( 0x2000, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) diff --git a/src/mame/skeleton/webtouchone.cpp b/src/mame/skeleton/webtouchone.cpp index b1f80f2aede8d..6406bccd0edb3 100644 --- a/src/mame/skeleton/webtouchone.cpp +++ b/src/mame/skeleton/webtouchone.cpp @@ -24,7 +24,7 @@ | | | |74HC4053||74HC4053| |__| | | |____________| ___ _______ | | _______ 34119->| | |MC3403| | - | 74AHCT574 |__| | + | 74AHCT574 |__| | | ____________ ____________ | | |KM416S4030CT| |KM416S4030CT| | | |____________| |____________| | @@ -35,7 +35,7 @@ | Xtal | | |74HCT541 | | | 32.768 MHz | | |_________| | | |____________| | - | | + | | | _______ | | 3BN62121AAAF KAZZA 01 |ST 324| | |___________________________________________________________________| diff --git a/src/mame/taito/buggychl.cpp b/src/mame/taito/buggychl.cpp index bf164b4c43431..0741c167a36eb 100644 --- a/src/mame/taito/buggychl.cpp +++ b/src/mame/taito/buggychl.cpp @@ -240,13 +240,13 @@ void buggychl_state::sprite_lookup_w(offs_t offset, uint8_t data) void buggychl_state::ctrl_w(uint8_t data) { - // bit0 = VINV - // bit1 = HINV - // bit2 = /SN3OFF - // bit3 = SKY OFF - // bit4 = OJMODE - // bit6 = lockout - // bit7 = lamp + // bit0 = VINV + // bit1 = HINV + // bit2 = /SN3OFF + // bit3 = SKY OFF + // bit4 = OJMODE + // bit6 = lockout + // bit7 = lamp flip_screen_y_set(data & 0x01); flip_screen_x_set(data & 0x02); diff --git a/src/mame/trs/gime.cpp b/src/mame/trs/gime.cpp index da6eba56a63bd..e98ee1a1e08bc 100644 --- a/src/mame/trs/gime.cpp +++ b/src/mame/trs/gime.cpp @@ -79,7 +79,7 @@ POP*STAR PILOT: Timer is synchronized with scanlines. - Cloud Kingdoms: 512K bank switch on scanline. + Cloud Kingdoms: 512K bank switch on scanline. **********************************************************************/ diff --git a/src/osd/modules/debugger/qt/mainwindow.cpp b/src/osd/modules/debugger/qt/mainwindow.cpp index dba5d18b9ac21..ac4540bd6388c 100644 --- a/src/osd/modules/debugger/qt/mainwindow.cpp +++ b/src/osd/modules/debugger/qt/mainwindow.cpp @@ -463,8 +463,9 @@ void MainWindow::debugActClose() void MainWindow::debuggerExit() { + // this isn't called from a Qt event loop, so close() will leak the window object m_exiting = true; - close(); + delete this; } diff --git a/src/osd/modules/debugger/qt/windowqt.cpp b/src/osd/modules/debugger/qt/windowqt.cpp index 783c5a2439332..cd0998fab862a 100644 --- a/src/osd/modules/debugger/qt/windowqt.cpp +++ b/src/osd/modules/debugger/qt/windowqt.cpp @@ -251,7 +251,8 @@ void WindowQt::debugActQuit() void WindowQt::debuggerExit() { - close(); + // this isn't called from a Qt event loop, so close() will leak the window object + delete this; }