查看: 179|回复: 0

[新闻] Mameinfo + MAMEUI inifiles 0.200 GIT



发表于 2018-7-12 08:28:24 | 显示全部楼层 |阅读模式

- New Non-Working games: Captain Zodiac, Donkey Kong / Donkey Kong Jr / Mario Bros, Fever Chance and Marbella Vice
- New clones: Air Rescue (World), Apache 3 (rev E), Hayaoshi Quiz Nettou Namahousou (ver 1.2), Led Storm Rally 2011 (US, prototype 12), Pink Sweets: Suicide Club (2017/10/31 SUICIDECLUB VER., bootleg) and Raiden DX (Portugal)
- New PinMAME games: Jokerz! (G-4), Safe Cracker (1.0) and Topaz (Inder)
- New drivers: cpzodiac.cpp and dkmb.cpp
- New devices: sonyiop
- New Cheat.dat: http://www.mamecheat.co.uk/forums/viewtopic.php?f=10&t=12477
- MIPS CPUs: Added basic Emotion Engine support ((MESS) PS2). Added S bit to TLB mapping. Added support for VSUB, VIADD, VSQI, VISWR, VOR, LQ, SQ, MFSA, MTSA, MFHI1, MFLO1, MULT1, DIV1, DIVU1, PEXTLW, PADDUW, PMFHI, PMFLO, PCPYLD, PCPYUD, SQC2 and LQC2 opcodes.
- MIPS R30XX CPUs: Fixed some R3000 bugs, started fleshing out IOP devices in (MESS) Sony PS2.
- Motorola MC68000: Stop the cpu on recursive BERR (Bus error)
- Atari CAGE sound: Minor cleanups. Use device finder. Fixed communication.
- DCS2 Audio Denver: Reinstate hastily removed eat_cycles to audio\dcs.cpp. Fixes DCS2 sound hardware test failed in War: The Final Assault (ID 07027).
- Ensoniq ES5503 sound: Fixed bad playback of synthLAB sampled-attack looped-sustain instruments
- GI SP0256 Narrator Speech Processor: Removed MCFG_SP0256 macro
- Seibu Sound System: Interrupt modernization (audio\seibu.cpp)
- Sound Interface: Added seperated acknowloge case to machine\gen_latch.cpp
- YM3812 OPL2 sound: Synchronized IRQ outputs to prevent lossage
- Cassette tape image: Bug fix for multi-channel reads in cassette_get_samples() (formats\cassimg.cpp). Use the unused "sample_bytes" arg the same way as cassette_put_samples(). Can be used with multi-channel files now. Rename sample_bytes to more descriptive sample_spacing. Added some comments about sample functions and sample_spacing variable.
- ER2055 EAROM (64x8)
  . Eliminated "Atari VG EAROM" in favor of newer ER2055 device (astdelux, bwidow.cpp, centiped.cpp, digdug, redbaron and tempest)
  . Removed spurious address space and added pin diagram
- Floppy: Mostly tiying up and simplifying the i82072 behaviour; the only change that could potentially impact other upd765 users is marking the st0_filled after every interrupt-generating command ends, rather than only the non-data ones. This appears to be correct behaviour, and will only affect systems which actually do a "sense interrupt status" after a command-completion interrupt (like the (MESS) InterPro does). Report valid interrupt sense data after all interrupt-generating commands. Improved i82072 drive busy handling and motor control (machine\upd765.cpp).
- MB3773 Power Supply Monitor: There is no reset input, so resetting the status of the variable tracking the external signal makes no sense. However we should probably restart the timer on all resets (instead of just at start/watchdog timeout), to avoid a watchdog reset if you press F3 at the wrong time.
- NAMCO Custom (machine\namcoic.cpp)
  . Converted ROZ tilemap code mangles into callback. Splitted config for each game when tilemap mangle is different. Reduced duplicates.
  . Fixed Final Lap R title screen
  . Fixed Lucky & Wild graphics
  . Moved metalhawk swap xy function into gfxdecode. Fixed metalhawk zoom.
  . Added C169 wraparound disable bit
- PowerVR 2: Improved color handling. Note: PowerVR2 represents color using two components: A base color and an optional offset color. The base color is combined with the incoming texture sample (if any) according to the fixed-function specified by the tsinstruction in the per-polygon parameters, and then the offset is added to this color (with the exception of alpha; the offset color has an alpha component but it does not appear to ever be used). The base color and offset color can be specified on a per-vertex basis (as either a group of four 8-bit integers or a group of four single-precision floating points) or they can be specified on a per-polygon basis (in floating-point only) and then scaled based on per-vertex scalar values (also floating point).
- SCSI CD-ROM: Added support for CD-ROMs with 512-byte blocks (machine\nscsi_cd.cpp). Older UNIX workstations used SCSI CD-ROM drives with 512-byte logical blocks instead of the now standard 2048. This change makes the block size configurable, and adds logic to translate logical blocks to/from the underlying 2048 byte sectors as needed. Added stub for "prevent/allow medium removal" command.
- SCSI Hard Disk: Minor fix for "inquiry" command (machine\nscsi_hd.cpp)
- Seta SETA001 Sprites: Converted arrays into std::unique_ptr. Minor cleanups (video\seta001.cpp).
- Xicor X2212 256x4 NOVRAM: Eliminated MCFG_X2212 macros from drivers (balsente.cpp, ccastles.cpp, cloud9.cpp, firefox.cpp, foodf.cpp, irobot.cpp, jedi.cpp, quantum.cpp and starwars.cpp) and added pin diagram.
- Z80 SCC Channel
  . Fixed transmit interrupt behavior that was locking up the (MESS) Apple IIgs
  . Clear tranmitter interrupt if a written byte fills the FIFO. Fixes (MESS) Apple IIgs problems without breaking Intergraph.
- atarigt.cpp: Cleanup video. Converted m_expanded_mram into std::unique_ptr and m_is_primrage into bool.
- cischeat.cpp
  . Reworked interrupt generation, fixed attract mode desyncs in Big Run.
  . Fixed Grand Prix Star stick tyre sprite in attract mode bug
- lastduel.cpp: Cleanups. Fixed naming. Added PALETTE_DECODER for palette. Reduced duplicates.
- mappy.cpp: Removed timer_set(). Use timer delegates instead of device_timer.
- metalmx.cpp: Minor cleanup. Reduced duplicates.
- model1/2.cpp
  . Screen indexes have flipped due to device replace instead of remove/add (layout\model1io2.lay)
  . Allow layouts to specify screen tags rather than indices (emu\rendlay.cpp) - makes order of instantiation irrelevant in Model 1 etc.
- mpu4vid.cpp: Added optional second space and associated buffers for attribute RAM
- namconb1.cpp and namcos2.cpp: Simplified tile bitswap
- nmk16.cpp
  . Cleanup duplicates. Moved tilemap ram bankswitching into seperated value. Added save states and for protection values. Reduced unnecessary routines. Implemented sprite limitation. Simplified bit manipulations.
  . Fixed Acrobat Mission palette size related to palette RAM size
  . Added BAD_DUMP for clone Thunder Dragon 3 (bootleg of Thunder Dragon 2) ROMs when not from PCB
- runaway.cpp: Added addressable latch
- seattle.cpp and vegas.cpp
  . Make io member naming consistent
  . Reinstate hastily removed eat_cycles to audio\dcs.cpp. Fixes DCS2 sound hardware test failed in War: The Final Assault.
- sigmab52.cpp: Fixed framerate to 60 Hz
- srmp2.cpp: Minor cleanups
- taito_b.cpp
  . Update/Cleanup driver and video. Moved TC0180VCU functions from into video\tc0180vcu.cpp. Reduced unnecessary gfxdecode (in Nastar schematics, TC0180VCU GFX ROM is 32-bit wide (CH0-31 is connected by data bus)).
  . TC0180VCU: Converted some arrays into required_shared_ptr. Internalized gfxdecode. Added notes
- taito_x.cpp: Split kyustrkr machine_config/address map related to output handler.
- tmmjprd.cpp: Clean-up driver. Make the dead code actually compilable, if not runnable.
- unico.cpp: Variable and namings cleanups. Converted video RAMs into shared_ptrs. Reduced runtime tag lookups. Some ACCESSING_BITS cleanups. Added PALETTE_DECODER for palette.
- usgames.cpp: More specific CPU type
- williams.cpp and wmg.cpp: Removed hard coded service button assignments and map to IPT_SERVICE buttons. IPT_MEMORY_RESET used for high score reset.
- Dig Dug: Use MCFG_DEVCB_RSHIFT for MCU DSW inputs
- Dragon Master: Cleanups. Reduced duplicates. Added PALETTE_DECODER for palette.
- Game Magic: IDE works, basic system is usable now (machine\i82371sb.cpp)
- Iron Horse: Fixed framerate to 61 Hz (ID 04621)
- The Legend of Silkroad: Cleanup duplicates and ACCESSING_BITS. Reduced unused.
- Lucky Girl: Slight improvements to decryption
- Quiz Show: Verified m2 gfx rom
- Shanghai III: Reverted MACHINE_IMPERFECT_GRAPHICS flag for Shanghai III. Not that big of a reason to flag it as such.
- Stepping Stage Special: Added support for YUV422 colors. Clamp YUV422 conversion with std::min/max.
- Treasure Bonus: Added NVRAM, as verified on real hardware.
- Fixed rom names in artmagic.cpp, raiden2.cpp and system1.cpp
- Description changes of Apache 3 (rev F), Apache 3 (Kana Corporation license, rev G), Ferrari F355 Challenge (twin/deluxe, preview) and Safe Cracker (1.8 German sound)
- Renamed (apache3a) to (apache3b) and (arescue) to (arescueu)
  . DEVCB3
    . There are multiple issues with the current device callbacks:
      . They always dispatch through a pointer-to-member
      . Chained callbacks are a linked list so the branch unit can't predict the early
      . There's a runtime decision made on the left/right shift direction
      . There are runtime NULL checks on various objects
      . Binding a lambda isn't practical
      . Arbitrary transformations are not supported
      . When chaining callbacks it isn't clear what the MCFG_DEVCB_ modifiers apply to
      . It isn't possible to just append to a callback in derived configuration
      . The macros need a magic, hidden local called devcb
      . Moving code that uses the magic locals around is error-prone
      . Writing the MCFG_ macros to make a device usable is a pain
      . You can't discover applicable MCFG_ macros with intellisense
      . Macros are not scoped
      . Using an inappropriate macro isn't detected at compile time
      . Lots of other things
    . This changeset overcomes the biggest obstacle to remving MCFG_ macros altogether. Essentially, to allow a devcb to be configured, call .bind() and expose the result (a bind target for the callback). Bind target methods starting with "set" repace the current callbacks; methods starting with "append" append to them. You can't reconfigure a callback after resolving it. There's no need to use a macro matching the handler signatures - use FUNC for everything. Current device is implied if no tag/finder is supplied (no need for explicit this).
    . Lambdas are supported, and the memory space and offset are optional. These kinds of things work: .read_cb().set([this] () { return something; }), .read_cb().set([this] (offs_t offset) { return ~offset; }), .write_cb().set([this] (offs_t offset, u8 data) { m_array[offset] = data; }) and .write_cb().set([this] (int state) { some_var = state; }).
    . Arbitrary transforms are allowed, and they can modify offset/mask for example: .read_cb().set(FUNC(my_state::handler)).transform([] (u8 data) { return bitswap<4>(data, 1, 3, 0, 2); }) and .read_cb().set(m_dev, FUNC(some_device::member)).transform([] (offs_t &offset, u8 data) { offset ^= 3; return data; }).
    . It's possible to stack arbitrary transforms, at the cost of compile time (the whole transform stack gets inlined at compile time). Shifts count as an arbitrary transform, but mask/exor does not.
    . Order of mask/shift/exor now matters. Modifications are applied in the specified order. These are NOT EQUIVALENT: .read_cb().set(FUNC(my_state::handler)).mask(0x06).lshift(2) and .read_cb().set(FUNC(my_state::handler)).lshift(2).mask(0x06).
    . The bit helper no longer reverses its behaviour for read callbacks, and I/O ports are no longer aware of the field mask. Binding a read callback to no-op is not supported - specify a constant. The GND and VCC aliases have been removed intentionally - they're TTL-centric, and were already being abused.
    . Other quirks have been preserved, including write logger only logging when the data is non-zero (quite unhelpful in many of the cases where it's used). Legacy syntax is still supported for simple cases, but will be phased out. New devices should not have MCFG_ macros.
  . Standardized "On"/"Off" items in UI menus. "On" is now consistently to the right of "Off", as with dipswitches.
  . Moved ROM loading macros to romentry.h and removed romload.h from emu.h
  . Backend modernization (emu\emumem.cpp). Ensure split accesses are always done in increasing addresses order (emu\emumem_heu.cpp).
  . Allow layouts to specify screen tags rather than indices (emu\rendlay.cpp) - makes order of instantiation irrelevant in Model 1 etc.
  . Eliminated MCFG_DEVICE_VBLANK_INT and use MCFG_SCREEN_RAW_PARAMS in avalnche.cpp, canyon.cpp, dragrace.cpp, nitedrvr.cpp, skydiver.cpp, sprint2.cpp and tunhunt.cpp
- MAC OS X: Fixed getting unwanted macros and out of discovered "check"
- Compiling
  . Allow passing std::unique_ptr directly to save_pointer and remove now-superfluous .get() in many drivers/devices (emu\save.h and emu\device.h).
  . Privatized member use in drivers D - Z. Fixed Clang build [-Werror,-Wunused-private-field]. Some private -> protected are needed for derived classes.
  . Reduced runtime tag lookups for champbwl.cpp, lastduel.cpp, nmk16.cpp, seattle.cpp, seta.cpp, srmp2.cpp, taito_x.cpp, thedealr.cpp, vegas.cpp, machine\iteagle_fpga.cpp, midwayic.cpp and audio\cage.cpp
  . Eliminated machine().device usage in chihiro.cpp, megazone.cpp and machine\namco_c148.cpp
  . emu.h must be the first thing in a compilation unit and nowhere else, or behaviour becomes inconsistent between MSVC and GCC due to how pre-compiled headers are handled in MAME.
  . Misc cleanup and devcb3 prep. Stuff to make macro removal easier.
  . Fixed building with Clang 6.0.1 and Microsoft Visual Studio 2015
  . Added AppVeyor badge back to README.md (https://ci.appveyor.com/project/startaq/mame)
  . Allow multiple digits in components of Clang version (makefile)
- Debugger: Removed running_machine::device() call in QT debugger (debugger\qt\deviceinformationwindow.cpp)


文件名称:Mameinfo + MAMEUI-inifiles-0200GIT (11th Jul).7z
文件大小:3.44 M

您需要登录后才可以回帖 登录 | 注册


小黑屋|手机版|Archiver|琵琶行论坛 ( 赣ICP备12000882号  

GMT+8, 2018-7-21 00:36 , Processed in 0.059197 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表