MAME/0.36 Part 1

From GamerWiki

Jump to: navigation, search

A warts and all look through the history of MAME as described by the MAME Dev team themselves through their releases.

Contents

MAME 0.36b1 "Allegro from hell"

Released: 1999-07-19

New games supported

New clones supported

These drivers have new or improved SOUND

  • Added "Get Ready!" speech to Grobda. [Zsolt Vasvari]

These drivers have improved GRAPHICS

  • Fixed bad tiles in some CPS1 games. [Paul Leaman]
  • Fixed sprite flipping in Xevious. [Nicola Salmoria]
  • Improved sprite colors in Great Swordman. [Jarek Parchanski, Charlie Miltenberger]
  • Sprite-sprite collision detection and other improvements in the Taito SJ games. This fixes Bio Attack. Wild Western is now fully playable. [Zsolt Vasvari]
  • Fixed Mega Zone high score display. [Chris Hardy]

Other drivers changes

  • Major improvements to the System 16 driver, most games are working now. Many still lack sound though. [Andrew Prime]
  • Fixed controls and graphics in Commando (Sega), which is now fully playable. This also fixes diagonal shots in Bosconian. Jungler shots are broken though. [Nicola Salmoria]

Changes to the main program

  • New digital YM3812/YM3526 emulator (in the DOS version, use -noym3812opl to enable it). It doesn't support the rhythm section yet, but is overall better than the old one. [Tatsuyuki Satoh]
  • [DOS] Triple buffer support in tweaked VGA modes. Warning: this is slower than standard tweaked modes. [Brian Lewis]
  • [DOS] If you are using a HotRod, use the -hotrod switch to adjust the default keyboard settings. [Nicola Salmoria]

Source

  • [DOS] Compiled with Allegro WIP 3.9.23. IMPORTANT: there is a bug in Allegro's new keyboard hangling, which will prevent numeric pad keys from working properly when used together with ctrl and alt. Until it is fixed in the main Allegro distribution, you will have to replace the source file allegro\src\misc\pckeys.c with the provided one, and recompile Allegro. [Nicola Salmoria]
The names for the -joy parameter are
psxlpt1
psxlpt2
psxlpt3
n64lpt1
n64lpt2
n64lpt3
wingwarrior
[Nicola Salmoria]
  • Rewritten the OS dependant keyboard interface. A rewrite of the koystick interface will follow. The OS dependant code now only has to provide four functions:
osd_get_key_list()
osd_is_key_pressed()
osd_customize_inputport_defaults() [optional]
osd_wait_keypress() [optional]
everything else is handled by the main core. [Nicola Salmoria]
  • Took the gfx drawing functions out of common.c into the new dragfx.c. In preparation for further changes to the data structures, abstracted the low level data copying and used macros to generate 8-bit and 16-bit versions. [Nicola Salmoria]

MAME 0.36b2 "Comic book beta"

Released: 1999-08-08

New games supported

New clones supported

These drivers have improved GRAPHICS

  • Fixed sprites in Contra. [Phil Stroffolino]
  • Fixed sprite colors in Xybots. [Aaron Giles]

These drivers have new or improved SOUND

  • 053260 emulation in Punk Shot. [Ernesto Corvi]
  • Most System 16 games have sound. [Andrew Prime]
  • Support for new samples in Q*Bert and Reactor. [Fabrice Frances]

Other drivers changes

  • Hacked protection in Wild Western, fixed bonus game, added second button to jump onto the train. [Zsolt Vasvari]
  • Various fixes to System 16 games. [Andrew Prime]

Changes to the main program

  • Further improved the YM3812 emulator, especially the rhythm section (check Snow Bros!). [Tatsuyuki Satoh]
  • [DOS] -noym3812opl is now the default (this won't have effect unless you delete mame.cfg). [Nicola Salmoria]
  • Fixed a bug in the T-11 emulation which caused APB not to work and the end of race results in Super Sprint to contain garbage. [Aaron Giles]

Source

  • Rewritten the OS dependant joystick interface, it's like the keyboard interface now. Also a few function renames, and osd_wait_keypress() must now return a keycode. [Nicola Salmoria]
  • [DOS] The above should remove all limitations on number of axis and buttons, so e.g. joypads with multiple sticks should work. Changes to the analog devices handling will follow. [Nicola Salmoria]
  • Konami 052001/053248 CPU emulation, used by many games. [Ernesto Corvi, Manuel Abadia]
  • Konami 053260 sound chip emulation. [Ernesto Corvi]
  • Sega PCM and RFC68 sound emulators, used by System 16. [Hiromitsu Shioya]
  • Moved the profiler into the core. The OS dependant code need only provide a osd_cycles() inline function/macro in osinline.h, returning a counter. The function must be as low overhead as possible since it is called thousands of times per second when the profiler is active. The counter should be as precise as possible, to provide accurate measurements; the ideal unit is the number of CPU cycles, e.g. as returned by the Pentium instruction RDTSC.
The profiler display is handled by the core, so the OS code only has to make the usual profiler_mark() calls to profile different sections of the code (PROFILER_BLIT, PROFILER_SOUND and so on).
Note: to avoid conflicts, the OS code must do the check for the "show fps" key this way, otherwise input will be lost:
if (!keyboard_pressed(KEYCODE_LSHIFT) && !keyboard_pressed(KEYCODE_RSHIFT)
&& !keyboard_pressed(KEYCODE_LCONTROL) && !keyboard_pressed(KEYCODE_RCONTROL)
&& input_ui_pressed(IPT_UI_SHOW_FPS))
[Nicola Salmoria]
  • [DOS] The -profiler switch is no longer needed to enable the profiler, it is automatically turned on and off when you hit Shift+F11. [Nicola Salmoria]

MAME 0.36b3 "More Konami"

Released: 1999-08-22

New games supported

New clones supported

These drivers have improved GRAPHICS

  • Fixed the background in Led Storm. [Bryan McPhail]
  • Added the zooming/rotating layer to Ajax. [Nicola Salmoria]

These drivers have new or improved SOUND

  • Added support for external volume control to the K007232 and fixed Aliens, Ajax etc. [Nicola Salmoria]

Other drivers changes

Changes to the main program

  • Changed the UPD7759 emulator to support two chips ('88 Games needed this) and fixed a bug in the ADPCM decoding. [Ernesto Corvi]

Source

  • The gfxdata field of the GfxElement structure is no longer a osd_bitmap *; it is instead a simple unsigned char *, pointing to a continuous stream of pixel data. The new line_modulo and char_modulo fields are helpers to find the offset in the array. [Nicola Salmoria]
  • Updated the 68000 C core. [Karl Stenerud]

MAME 0.36b4 "Namco System 1"

Released: 1999-09-04

New games supported

New clones supported

These drivers have improved GRAPHICS

Other drivers changes

  • Improved the protection workaround in Sunset Riders. [Ernesto Corvi]
  • Protection workaround in Thunder Cross - still not perfect. [Ernesto Corvi]
  • Several fixes and improvmeents to the System 16 games. [Andrew Prime]
  • Fixed cocktail mode in several games. [Chad Hendrickson]

Changes to the main program

  • Fixed a 68000 "bug" (actually an undocumented feature of the cpu) that caused the timer to roll over from 00 to 99 in KOF98. [Darren Olafson]
  • Fixed a Konami CPU bug which caused problems with Parodius. [Ernesto Corvi]
  • [DOS] Changed the tweked VGA modes definitions to be more compatible. It is suggested to delete mame.cfg to get rid of the obsolete tweak parameters. Remember to set tweak = yes after doing so. [Brian Lewis]
  • Screen shots can be saved while the game is paused. [Phil Hopely]
  • You can single step while the game is paused, press Shift+P to advance to next frame. [Phil Hopely]

Source

  • New PORT_SERVICE() macro, use it instead of the long declaration needed for the service mode dip switch. [Nicola Salmoria]

MAME 0.36b5 "Bally/Sente"

Released: 1999-09-18

New games supported

New clones supported

These drivers have improved GRAPHICS

These drivers have new or improved SOUND

  • Improved sound in the Exidy 440 games. [Aaron Giles]

Other drivers changes

  • Extracted all the data from the Heavy Barrel microcontroller, so all special weapons and powerups appear correctly. Also a lot of other fixes to Data East games. [Bryan McPhail]
  • Fixed steering wheel in Speed Freak. [Mathis Rosenhauer]
  • The Cinematronics driver now can handle games with backdrop + overlay. The pngs have to be renamed:
backdrop: drivername + b.png
overlay: drivername + o.png
[Mathis Rosenhauer]

Source

  • New input type IPT_PEDAL. [Aaron Giles]

MAME 0.36b6 "M72/M92"

Released: 1999-09-29

New games supported

New clones supported

These drivers have improved GRAPHICS

  • Fixed priorities and scroll offset in the Toaplan games. [suz]

These drivers have new or improved SOUND

  • Samples and DAC support in Space Panic. [Mike Coates]

Other drivers changes

  • Gun support in Terminator 2. You must use the calibration screen to calibrate the gun. When it asks the shoot the upper left corner, move the mouse towards (0,0), the middle is (128, 128) and the lower right corner is obviously (255, 255). If you have problems, delete hi/term2.hi. [Zsolt Vasvari]
  • Simulated the protection in Renegade. [Phil Stroffolino]

Source

  • Fixed bug in the 6800 CMPX instructions. [Jess Askey]
  • Changed the 6821 PIA interface. [Aaron Giles]
  • New NEC CPU cores. [Oliver Bergmann]

MAME 0.36b7 "More M72"

Released: 1999-10-17

New games supported

New clones supported

These drivers have improved GRAPHICS

  • More fixes in the Toaplan games. [Satoshi Suzuki]

These drivers have new or improved SOUND

  • Fixed YM2151 sound board support for Joust 2. [Aaron Giles]
  • Completed samples support in Space Panic. [Mike Coates]

Other drivers changes

Changes to the main program

  • [DOS] The new Allegro library supports the Gravis GrIP devices, use -joy grip or -joy grip4 to enable.

Source

  • [DOS] Now compiled with Allegro 3.9.26 WIP.
  • Several improvements to FM sound emulators. This also fixes crashes in some Jaleco Mega System 1 games. [Tatsuyuki Satoh]
  • Improvements to the other YM2151 emulator too. [Jarek Burczynski]
  • VIDEO_UPDATE_BEFORE_VBLANK is now the default. If you want your driver to redraw the screen after vblank, use VIDEO_UPDATE_AFTER_VBLANK.
  • Some improvements to the Z80 emulator. [Juergen Buchmueller]
  • Some fixes to HD63701 IRQ handling, and support for ICI (Input Capture Interrupt). [Tatsuyuki Satoh]
  • Improvements to the 34010 emulation. [Aaron Giles]
  • New function findmemorychunk() that lets you look up a chunk of memory and get its start/end addresses, and its base. This can be used (carefully!) by drivers that wish to access memory directly without going through the readmem/writemem accessors (e.g., blitters). [Aaron Giles]
  • Replaced cpu_reset() with cpu_set_reset_line().
cpu_set_reset_line(num,PULSE_LINE) is equivalent to the old cpu_reset().
ASSERT_LINE resets the cpu and halts it. CLEAR_LINE restarts it.
This avoids the need to call cpu_halt() in most cases. [Nicola Salmoria]

MAME 0.36b8 "Namco System 2 / Konami Twin16"

Released: 1999-10-30

Another clause had to be added to the license. Check it in readme.txt (at the end of VII. Derivative Works).

New games supported

New clones supported

These drivers have improved GRAPHICS

  • Fixed priorities in wndrmomo and genpeitd. [E. Watanabe]
  • Fixed sprite Y offset in the Simpsons dreamland level. Apologies for taking so long, I couldn't find the time to play it that far and hadn't realized I just had to use the attract mode of the Japanese version. [Nicola Salmoria]

These drivers have new or improved SOUND

  • CVSD sound in Mouse Trap. [Dan Boris, Aaron Giles]

Changes to the main program

  • [DOS] Changed the autoframeskip code, making it less anxious to increase frameskip as soon as speed drops below 100%. Let's see if this makes things better or worse. [Nicola Salmoria]
  • [DOS] The mouse buttons are no longer aliases for joystick buttons, they are independently recognized. They are still considered "joystick" inputs though, so if you want to use them you have to redefine the controls in the Joystick menu. This is a minor annoyance that was needed to allow interfacing a Discs of Tron controller to the mouse port (spinner + up and down switches) while still using joystick buttons 1 and 2 for fire and deflect. [Nicola Salmoria]
  • [DOS] Support for ZIPped input files (-playback) and artwork. Well, PNG won't compress very well, but I added it anyway ;) [Juergen Buchmueller]

Source

  • Finally fixed the CMPX instruction in the 680x core. On the 6800 it does not affect the C flag, on the others (6803, 63701) it does. [Tatsuyuki Satoh]
  • Fixes to the x86 asm 68k core. [Mike Coates]
  • Added vh_eof_callback to the MachineDriver structure. See bionicc, cps1, lastduel for usage examples. [Nicola Salmoria]
  • Cleaned up the 6809 and Konami-2 emulations. [Juergen Buchmueller]
  • C140 emulation. [Phil Stroffolino]

MAME 0.36b9 "Soccer beta"

Released: 1999-11-13

Important: due to changes in the palette system, there might be games that had correct colors before, and wrong now. Please let us know if you find any.

New games supported

New clones supported

These drivers have improved GRAPHICS

Other drivers changes

Changes to the main program

  • 16 bit support in the tilemap manager, so the Namco System 2 games no longer require -depth 8. [Phil Stroffolino]
  • [DOS] Changed the -depth option behaviour, now it can be either 8, 16, or auto. The default is auto, which uses the color depth appropriate for the game. 8 forces use of a 256 colors display (faster but less accurate), 16 forces use of a 16-bit display (not suggested, doesn't work with all games).
MAKE SURE TO SET depth = auto IN MAME.CFG, OR YOU'LL USE 16-BIT IN ALL GAMES.
  • Fixed a few bugs in the NEC CPU core that caused problems in Hook, Gunforce, Lethal Thunder and maybe others. [Bryan McPhail, Nao]
  • Several changes and improvements to the TMS34010 emulation and to the Williams games using CVSD sound. [Aaron Giles]

Source

  • [DOS] Now compiled with Allegro 3.9.27 WIP.
  • Replaced MachineDriver->video_attributes VIDEO_SUPPORTS_16BIT with GameDriver->flags GAME_REQUIRES_16BIT.
Added color_depth to struct RunningMachine and struct GameOptions. OS dependant code may set it to force a specific depth.
Added depth parameter to osd_create_display(). The OS dependant code MUST respect it - if it has special requirements, it must set the GameOptions flag beforehand.
  • Calling palette_recalc() is now *MANDATORY* in all drivers that modify the palette. The palette will not be updated otherwise.
  • Removed adpcm_sample_list, palette and colortable from struct GameDriver. Changed char *color_prom to int prom_memory_region.
  • Updated the TMS9900 emulator. [Raphael Nabet]

MAME 0.36b9.1 "More TMS34010 fixes"

Released: 1999-11-14

The license had to be changed again (VII. Derivative Works).

Other drivers changes

  • Fixed a few bugs in the TMS34010 games. [Aaron Giles]

Other Versions


Personal tools