linkrock |
2007-07-20 11:23 |
新的Mameinfo0117u1又出来了,分享一下[s:276] 0.117u1
- NOTE: The first major change in this release is the input system. The way that the OS-specific layer communicates with the core about input devices has changed substantially, allowing a lot of the tricky functionality to be handled automatically by the core code. For the Windows build specifically, this marks a shift in behavior: on Windows XP and later, both keyboard and mouse now use the raw input APIs, which allow support for multiple keyboards and mice. A second big change is an experimental one. A new built-in user interface is provided for selecting a game. This interface is intended to be minimal and will not serve to replace a true frontend. However, it does provide a better first experience for those unfamiliar with MAME and is useful for launching a game when you can't remember the exact driver name. Make sure you test things out and report any strangeness over at MAME Testers. - New Working games: Monza GP and Sliver - New Non-Working games: Balloon & Balloon and 2x Gals Panic (EXPRO-02 PCB) - New clones: Battle Garegga - Type 2 (Europe / USA / Japan / Asia) (Sat Mar 2 1996) and 2x Space Dragon (Moon Cresta bootleg) - New drivers: expro02.c, ghosteo.c and sandscrp.c - New BIOS files: Added Multi Amenity Cassette System 2 BIOS (I'Max 1995) - V30 CPU: Added more opcode decryption to Gussun Oyoyo (Risky Challenge clone) - Discrete sound: Added two inverter oscillators supporting enable and mixing in signals to discrete.h / disc_wav.c - KANEKO PANDORA . Fixed some problems in the Pandora emulation which improves the sprites in Djboy . Moved Sand Scorpion and Gals Panic over to use the Pandora emulation - CD-ROM/Hard Disk: Fixed crash in CHD code if reading beyond the end of the file - Timer system . Added new function timer_call_after_resynch(), which effectively sets a zero-duration timer for resynchronization. Replaced instances of zero-duration timers in the code with this more descriptive call. . Defined new macro TIMER_CALLBACK, which should be used to wrap timer callbacks. Added a running_machine * parameter to timer callbacks. Updated all existing timer callbacks to use the new macro. - neodrvr.c . BIOS only driver 'neogeo' no longer crashes . Cleaned up memory banking code to use memory_set_bank() instead of memory_set_bank_ptr() . Fixed LEDs - toaplan2.c . Fixed sound CPU communications in the Raizing games. This is educated guesswork, but it's more complete and probably more correct than what was there before, and doesn't rely on excessive use of cpu_yield(). . Added more information about the Raizing sets to the comments in the driver, and corrected some errors. . Fixed battleg0113u4red and battleg0116u1ora - vicdual.c: Added discrete sound to Head On and clones, Space Attack / Head On, Head On 2 and Invinco / Head On 2 - Batrider: Fixed crash (batrider0114red) - Battle Garegga: Reorganized the Battle Garegga sets in a more sensible fashion - Break Thru: Fixed Upright/Cocktail mode (brkthru091u1gra) - Burger Time (Cassette): Fixed input port typo (cbtime0117red) - Change Lanes: Fixed a few bugs in the video emulation - DJ Boy: Improved sprites emulation - Kamikaze: Astro Invader is now a clone of Kamikaze (Leijac Corporation 1979) - Monza GP . Updated the driver into a somewhat playable state . There are still some graphics problems . LEDs still need to be hooked up for score/time-remaining display . Fixed Z80 CPU1/2 clock speeds, raster orientation, palettesize and visible area. Fixed cpu2 rom loading. - Sliver: Added fake rom with decompressed images. Changed region gfx1/2 to user1/2 and visible area. - Truxton 2: Replaced byteswapped M68K program ROM with correct one - Dipswitch fixes in Monza GP and Sliver - Description changes of "Circus / Acrobat TV", "Cluster Buster / Graplop", "Missile X / Guided Missile", "Rootin' Tootin' / La-Pa-Pa (Cassette)", "Space Invaders / Space Invaders M" and "Tornado Baseball / Ball Park" - MAME . Added experimental new minimal game selection user interface. This interface can be accessed if MAME is started with no parameters, or via the main menu by choosing "Select a New Game". This interface allows you to select a game driver by typing in the name of the game. As you type, MAME's fuzzy name matching code will list the top 15 selections that match. The interface will only display games that it finds in your rompath. . Added "empty" driver which is used to host the game selection screen when no valid game is selected . Changed behavior in the Windows build so that double-clicking on MAME brings up the new game selection interface . Added new routines mame_openpath(), mame_readpath(), and mame_closepath() for iterating over all files in a path specification, including support for multiple paths. . Changed driver_get_approx_matches() and driver_get_count() APIs to work on arbitrary driver lists rather than being hard-coded to the static driver list. Renamed the functions from driver_get_* to driver_list_get_*. . Added support for frame update callbacks, similar to pause and exit callbacks but called at the same time as osd_update(). . Changed osd_init() to no longer return a value. OSD initialization should now rely on fatalerror() to report fatal initialization problems. . Added new function mame_schedule_new_driver() which allows for a new driver to be queued after a hard reset . Removed the NOT_A_DRIVER flag which was overloaded to mean two different things. There are now two new flags: GAME_IS_BIOS_ROOT indicates that a particular driver represents a BIOS rather than a full game. And GAME_NO_STANDALONE indicates that the given driver should not be listed or permitted to execute on its own. For MAME, most BIOSes are executable on their own, so they have the GAME_IS_BIOS_ROOT flag set but not the GAME_NO_STANDALONE flag. . Fixed bug in screenless systems . Changed audit interfaces to take a game_driver * instead of a game index . Other MAMETesters Bugs fixed: debbuger+psx_0117ora, hotpinbl0117gra - Input port: Reworked input system to push more features into the core. Cleaned up architecture to properly separate dependencies. Please note that this change only addresses the lower layer of input handling. The upper layer (i.e., input port handling at the driver layer) remains the same. * Removed the concept of os_code from the system. Now all codes are defined via a set of macros in input.h. Each code is a 32-bit value that encodes a device class, device index, item class, item modifier, and item ID. * Removed OSD functions osd_get_code_list() and osd_get_code_value(). Instead, the OSD layer during osd_init() must register one or more devices and the input items attached to each device via two new functions input_device_add() and input_device_item_add(). * Separated input sequence code into new module inputseq.c * Moved support for the following options into the core: -mouse, -joystick, -lightgun, -steadykey, -offscreen_reload, -joy_deadzone, -joy_saturation, -paddle_device, -adstick_device, -pedal_device, -dial_device, -trackball_device, -lightgun_device, -positional_device, -mouse_device. The OSD layer should simply register all devices at osd_init() time and allow the core to enable/disable them according to the options. * Added two new options: -multikeyboard and -multimouse. By default, both options are OFF. When OFF, the core will combine all keyboard or mouse input into a single keyboard or mouse device. When ON, these options instruct the core to keep inputs for each keyboard and/or mouse independent. * Added new option: -joystick_map. This option allows for a 9x9 grid to be specified which controls analog-to-digital mapping of joystick inputs. * Changed the Windows implementation of input handling to fully support the raw input interfaces for keyboard and mouse. DirectInput is still used for all joystick inputs, as well as for keyboard and mouse inputs on pre-Windows XP systems. This allows for multiple keyboards and mice to be supported. Also changed keyboard and mouse behavior to use non-exclusive mode in DirectInput, and to keep the devices alive during pause for more consistent input handling. * Broke windows.txt into config.txt, which contains all common core-supported options and commmands, and windows.txt, which now only lists Windows-specific additions. |
|