summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/esh.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Rename *.c -> *.cpp in our source (nw) Miodrag Milanovic2015-11-081-429/+0
|
* change flags from GAME_ to MACHINE_ David Haywood2015-07-291-3/+3
| | | | this better fits the drivers from MESS (which have always illogically used the GAME_ flags despite not being games) and also fits fine with arcade machines.
* did license settings for OG and Andrew, cleared up OSD part for licenses (nw) Miodrag Milanovic2015-05-091-1/+1
|
* Added known authors to licenses tags (nw) Miodrag Milanovic2015-05-091-1/+1
|
* Added dummy license headers for MAME part (nw) Miodrag Milanovic2015-05-071-0/+2
|
* the rest of // sldh Michaël Banaan Ananas2014-08-101-1/+1
|
* Removed palette_device parameter from gfx draw methods. All draw methods now ↵ Alex W. Jackson2014-03-191-1/+1
| | | | use m_palette (nw)
* fixed laserdisc regression (nw) Miodrag Milanovic2014-03-191-0/+1
|
* Checkpoint 2: Alex W. Jackson2014-03-151-1/+1
| | | | | | gfxdecode devices must now be assigned a palette in MCFG. Added palette devices to several MESS drivers and devices to comply with this requirement. This palette is assigned as a default to the gfx_elements created by the device (but still not used for drawing yet, except in the UI graphics viewer) Tilemaps now have a pointer to a palette device and use that palette for rgb32 drawing, rather than the palette of the screen or bitmap they are drawing to (since rgb32 screens don't have palettes now). When a tilemap is created, it takes its palette from the gfxdecode device it was created with, but you can change a tilemap's palette device with set_palette() at any time (doing this does not mark the tilemap dirty, since all tilemaps use indexed bitmaps internally)
* Moved optional_device<screen_device> m_screen and ↵ Miodrag Milanovic2014-03-051-1/+3
| | | | optional_device<palette_device> m_palette out of driver.* (nw)
* Huge update, palette is now device (nw) Miodrag Milanovic2014-02-271-7/+8
| | | note: Aaron please give more descriptive text for release log I have no more strength :)
* removed space before m_gfxdecode in main trunk(nw) Miodrag Milanovic2014-02-261-1/+1
|
* Switched rgb_t to a class, replacing macros with methods. Mappings are Aaron Giles2014-02-191-2/+2
| | | | | | | | | | | | | | | | | | | as follows: MAKE_RGB(r,g,b) == rgb_t(r,g,b) MAKE_ARGB(a,r,g,b) == rgb_t(a,r,g,b) RGB_ALPHA(data) == data.a() RGB_RED(data) == data.r() RGB_GREEN(data) == data.g() RGB_BLUE(data) == data.b() RGB_BLACK == rgb_t::black RGB_WHITE == rgb_t::white Implicit conversions to/from UINT32 are built in as well as simple addition, subtraction, and scaling (with clamping). As a result of being a class, some stricter typing was needed in a few places but overall not too much.
* moved optional_device<gfxdecode_device> to specific drivers state classes (nw) Miodrag Milanovic2014-02-171-1/+3
|
* Created gfxdecode_device instead of using machine fixed gfxdecode [Miodrag ↵ Miodrag Milanovic2014-02-161-2/+2
| | | | | | | | | | Milanovic] Updated all devices and drivers for using it. out of whatsnew: Note that it is made to work same as before, in some cases it can be more logic to move gfxdevice into subdevice itself then to keep it in main driver.
* Moved drawgfx functions to gfx_element (nw) Miodrag Milanovic2014-02-131-1/+1
|
* More MAME drivers lose their anonymous timers. (nw) Andrew Gardner2013-05-151-4/+18
|
* changed machine().device("maincpu") with m_maincpu in mame tree part (nw) Miodrag Milanovic2013-04-101-3/+3
|
* added m_maincpu where missing in driver classes that are placed in drivers (nw) Miodrag Milanovic2013-04-101-1/+3
|
* Removal of not needed machine().root_device() (nw) Miodrag Milanovic2013-02-131-1/+1
|
* Cleanups and version bumpmame0148 Miodrag Milanovic2013-01-111-10/+10
|
* modernization or timer callbacks part 3 - final (no whatsnew) Miodrag Milanovic2012-09-241-3/+4
|
* INTERRUPT_GEN -> INTERRUPT_GEN_MEMBER (no whatsnew) Miodrag Milanovic2012-09-181-4/+5
|
* changed most of screen.machine() to machine() (no whatsnew) Miodrag Milanovic2012-09-181-1/+1
|
* Modernized screen update calls (no whatsnew) Miodrag Milanovic2012-09-171-8/+8
|
* Massive change, MACHINE_START\RESET, VIDEO_START\RESET and PALETTE_INIT ↵ Miodrag Milanovic2012-09-131-8/+8
| | | | changed to be members of state classes (no whatsnew)
* Clear out remaining global inlines in diexec.h. Aaron Giles2012-09-121-1/+1
|
* Closeout on old macros. Retired cputag_set_input_line Aaron Giles2012-09-121-3/+3
| | | | | | | and cputag_set_input_line_and_vector, replacing them with machine.device("tag")->execute().set_input_line[_and_vector]. [Aaron Giles]
* All driver inits are now member of state classes. Miodrag Milanovic2012-08-101-1/+2
| | | | | Added DECLARE_DRIVER_INIT macro to define it H file, and DRIVER_INIT_MEMBER for member declaration in C files Updated all drivers accordingly (no whatsnew)
* More love to forgotten LD games, nw Angelo Salese2012-08-061-4/+4
|
* Updated GAME and GAMEL with class name per machine used, for future ↵ Miodrag Milanovic2012-08-041-3/+3
| | | | DRIVER_INIT change (no whatsnew)
* Changed device->subregion to device->memregion. Moved Aaron Giles2012-04-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | memory_region management into the memory manager instead of directly in the machine. Hid the global region method; now all regions must be looked up relative to a device. If you're a member function, you can just use memregion("tag") directly. If you're a global function or a device referencing global regions, use machine().root_device().memregion("tag") to look up regions relative to the root. S&R to convert all references: machine([()]*)\.region machine\1\.root_device\(\).subregion Then remove redundant machine().root_device() within src/mame: ([ \t])machine\(\)\.root_device\(\)\. \1 And use state->memregion() if we have a state variable present: (state *= *[^;]+driver_data[^}]+)([^ \t]*)machine[()]*\.root_device\(\)\. \1state-> Finally some cleanup: screen.state-> state-> device->state-> state-> space->state-> state-> And a few hand-tweaks.
* Remove color_prom parameter from PALETTE_INIT. Added code where Aaron Giles2012-04-121-0/+1
| | | | | | | | necessary to fetch the color_prom directly. Made PALETTE_INIT into just another basic callback with an overridable palette_init() in the driver_device, and support for arbitrary member functions via MCFG_PALETTE_INIT_OVERRIDE.
* Validity fixes. Aaron Giles2012-04-111-2/+2
|
* Removed unnecessary target() calls from shared_ptr references. Aaron Giles2012-04-111-5/+5
| | | | | | | | | | | | You still need target() if you want to cast to another pointer size. This should be rare, and in fact fixing these pointed out a few cases where code was missing BYTE/WORD/DWORD_XOR_* macros. I flagged these with: // ERROR: This cast is NOT endian-safe without the use of BYTE/WORD/DWORD_XOR_* macros! For future fixing.
* Added target() on proper places (no whatsnew) Miodrag Milanovic2012-04-111-5/+5
|
* AM_BASE and AM_BASE_SIZE to AM_SHARE by request from Aaron (no whatsnew) Miodrag Milanovic2012-04-111-5/+7
|
* MAME going modern part 3 (no whatsnew) Miodrag Milanovic2012-04-031-17/+19
|
* Some formating cleanup (no whatsnew) Miodrag Milanovic2012-04-021-2/+2
|
* MAME going modern part 2 (no whatsnew) Miodrag Milanovic2012-04-011-6/+6
|
* MAME going modern part 1 (no whatsnew) Miodrag Milanovic2012-03-311-2/+2
| | | | - Added 4th parameter to all address maps - Added missing state classes
* rom label adjustments to match discussed format. (nw) Scott Stone2012-02-211-1/+1
|
* Nearly finished making some individual rom name adjustments to ease ↵ Scott Stone2012-02-191-1/+1
| | | | potential merging issues. (nw)
* Some cleanup of the previous change. Added new template Aaron Giles2012-01-131-1/+1
| | | | | | | | | | device_delegate which wraps a regular delegate and includes a string pointer to a device tag, which can be simply resolved later. Converted the screen_update delegates to to be based on this. Changed the mechanism by which screen formats are auto-deduced. Converted SCREEN_EOF to use these delegates as well, so now there is MCFG_SCREEN_EOF_STATIC/ DRIVER/DEVICE just like MCFG_SCREEN_UPDATE.
* Major bitmap-related changes throughout the system. There are Aaron Giles2012-01-121-12/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | almost certainly some regressions lurking. Let me know if something seems busted. Bitmaps are now strongly typed based on format. bitmap_t still exists as an abstract base class, but it is almost never used. Instead, format-specific bitmap classes are provided: bitmap_ind8 == 8bpp indexed bitmap_ind16 == 16bpp indexed bitmap_ind32 == 32bpp indexed bitmap_ind64 == 64bpp indexed bitmap_rgb32 == 32bpp RGB bitmap_argb32 == 32bpp ARGB bitmap_yuy16 == 16bpp YUY For each format, a generic pix() method is provided which references pixels of the correct type. The old pix8/pix16/pix32/ pix64 methods still exist in the short term, but the only one available is the one that matches the bitmap's pixel size. Note also that the old RGB15 format bitmaps are no longer supported at all. Converted model1, megadriv, and stv drivers away from the RGB15 format bitmaps. New auto_bitmap_<type>_alloc() macros are provided for allocating the appropriate type of bitmap. Screen update functions now must specify the correct bitmap type as their input parameters. For static update functions the SCREEN_UPDATE macro is now replaced with SCREEN_UPDATE_RGB32 and SCREEN_UPDATE_IND16 macros. All existing drivers have been updated to use the correct macros. Screen update functions are now required for all screens; there is no longer any default behavior of copying a "default" bitmap to the screen (in fact the default bitmap has been deprecated). Use one of the following to specify your screen_update callback: MCFG_SCREEN_UPDATE_STATIC(name) - static functions MCFG_SCREEN_UPDATE_DRIVER(class, func) - driver members MCFG_SCREEN_UPDATE_DEVICE(tag, class, func) - device members Because the target bitmap format can now be deduced from the screen update function itself, the MCFG_SCREEN_FORMAT macro is no longer necessary, and has been removed. If you specify a screen update callback that takes a bitmap_ind16, then the screen will be configured to use a 16bpp indexed bitmap, and if you specify a callback that takes a bitmap_rgb32, then a 32bpp RGB bitmap will be provided. Extended the bitmap classes to support wrapping a subregion of another bitmap, and cleaner allocation/resetting. The preferred use of bitmaps now is to define them directly in drivers/devices and use allocate() or wrap() to set them up, rather than allocating them via auto_bitmap_*_alloc(). Several common devices needed overhauls or changes as a result of the above changes: * Reorganized the laserdisc base driver and all the laserdisc drivers as modern C++ devices, cleaning the code up considerably. Merged ldsound device into the laserdsc device since modern devices are flexible enough to handle it. * Reorganized the v9938 device as a modern C++ device. Removed v9938mod.c in favor of template functions in v9938.c directly. * Added independent ind16 and rgb32 callbacks for TMS340x0 devices. * All video devices are now hard-coded to either ind16 or rgb32 bitmaps. The most notable is the mc6845 which is rgb32, and required changes to a number of consumers. * Added screen_update methods to most video devices so they can be directly called via MCFG_SCREEN_UPDATE_DEVICE instead of creating tons of stub functions.
* Bulk conversion of bitmap_t * to bitmap_t & . With this change the Aaron Giles2012-01-021-1/+1
| | | | | | | | parameters for the global SCREEN_UPDATE callback match the parameters for the driver_device version. Added allocate() and deallocate() methods to bitmap_t to permit cleaner handling of bitmaps in drivers and modern devices. [Aaron Giles]
* Bulk converted cliprect * to cliprect & across the system. This makes Aaron Giles2011-12-311-1/+1
| | | | | | | | | | cliprects mandatory everywhere. In general, cliprects were being correctly passed through the video side of most drivers already, so it is mostly a semantic change. Note that with my previous change, bitmaps have cliprects, so if you just want to clip to the bitmap's boundaries, pass bitmap->cliprect() instead of NULL (which is no longer permitted). [Aaron Giles]
* Converted bitmap_t and rectangle into proper classes. Replaced BITMAP_ADDR* Aaron Giles2011-12-311-1/+1
| | | | | | | | macros with bitmap->pix* functions, and moved bitmap_fill() to bitmap->fill() among other similar changes. Bitmap fields now only available via accessors. Replaced sect_rect with &= and union_rect with |= operators for rectangle classes. Some general cleanup as a result of these changes. [Aaron Giles]
* Change 'screen' parameter in SCREEN_UPDATE and SCREEN_EOF callbacks to a Aaron Giles2011-12-291-2/+2
| | | | | | | | | reference. Remove redundant machine parameter from SCREEN_EOF. Remove old vestiges of driver_device video_eof override since it wasn't being used. Update all multi-screen games to use separate functions for each screen (calling into common code where appropriate). [Aaron Giles] (nw: equivalent MESS changes are ready, will send along shortly)
* Collapsed device_config and device_t into one class. Updated all Aaron Giles2011-04-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | existing modern devices and the legacy wrappers to work in this environment. This in general greatly simplifies writing a modern device. [Aaron Giles] General notes: * some more cleanup probably needs to happen behind this change, but I needed to get it in before the next device modernization or import from MESS :) * new template function device_creator which automatically defines the static function that creates the device; use this instead of creating a static_alloc_device_config function * added device_stop() method which is called at around the time the previous device_t's destructor was called; if you auto_free anything, do it here because the machine is gone when the destructor is called * changed the static_set_* calls to pass a device_t & instead of a device_config * * for many devices, the static config structure member names over- lapped the device's names for devcb_* functions; in these cases the members in the interface were renamed to have a _cb suffix * changed the driver_enumerator to only cache 100 machine_configs because caching them all took a ton of memory; fortunately this implementation detail is completely hidden behind the driver_enumerator interface * got rid of the macros for creating derived classes; doing it manually is now clean enough that it isn't worth hiding the details in a macro