A lot of sets were added. Also System 903/905 diag ROMs.
Submitted the driver at this point because it's growing as a monster.
Parent/clone relationship for official games is not defined yet.
Changes:
- Renamed the driver to calomega.c.
- Extended the driver to support all the other Cal Omega systems.
- Switched to XTAL def.
- Fixed CPU & sound clocks based on official diagrams.
- Replaced the AY-8910 with AY-8912 to match the real hardware.
- Unified some memory maps.
- Splitted machine in sys903 and sys905.
- Fixed memory map offsets for sys905.
- Added support to the following games:
Game 7.6 (Arcade Poker)
Game 7.9 (Arcade Poker)
Game 9.4 (Keno)
Game 12.5 (Bingo)
Game 12.7 (Keno)
Game 12.8 (Arcade Game)
Game 13.4 (Nudge Bingo)
Game 14.5 (Pixels)
Game 15.7 (Double-Draw Poker)
Game 15.9 (Wild Double-Up)
Game 16.4 (Keno)
Game 16.8 (Keno)
Game 17.2 (Double Double Poker)
Game 17.51 (Gaming Draw Poker)
Game 17.6 (Nudge Bingo)
Game 18.1 (Nudge Bingo)
Game 18.3 (Pixels)
Game 18.5 (Pixels)
Game 18.6 (Pixels)
Game 20.4 (Super Blackjack)
Game 20.8 (Winner's Choice)
Game 22.7 (Amusement Poker, d/d)
Game 23.6 (Hotline)
Game 23.9 (Gaming Draw Poker) --> EX gdrawpkr.
Game 24.6 (Hotline)
Game 27.2 (Keno, amusement)
Game 27.2 (Keno, gaming)
System 903 Diag.PROM
System 905 Diag.PROM
Jackpot Joker Poker (set 1)
Jackpot Joker Poker (set 2)
SSI Poker (v2.4)
SSI Poker (v3.0)
SSI Poker (v4.0)
- Added a list of official/unofficial games, and their states.
- Fixed a bug introduced when extended the color PROM region to eliminate colortable lenght.
- Other changes/fixes.
- Updated technical notes.
constructors to tokenized lists. For the most part
this is a non-invasive change, except for those drivers
using MDRV_WATCHDOG_TIME_INIT. In order to allow for
tokenization of attotimes, a set of new macros is
provided called UINT64_ATTOTIME_IN_x() which follows the
same pattern as ATTOTIME_IN_x() but packs the attotime
down into a single 64-bit value for easier tokenization.
Separated MDRV_DEVICE_CONFIG_DATA into 32-bit and 64-bit
versions. Added floating-point versions with configurable
resolutions.
Fixed several errors in the machine drivers which were
caught by the additional checks now done in the machine
config detokenization code.
Converted speakers into devices. Machine->config no
longer houses an array of speakers; instead they are
iterated through using the new macros (defined in sound.h)
speaker_output_first() and speaker_output_next(). Updated
all relevant code to do this.
Improved game info display with multiple screens. Fixed
bug which caused all screens to display equally.
Added typedefs for all the machine config callback
functions at the top of driver.h.
* flip_screen_x and flip_screen_y made static
* add flip_screen_x_get() and flip_screen_y_get()
* change writes to flip_screen_x from last commit to flip_screen_set_no_update()
* added save state calls for flip_screen_x and flip_screen_y
* add "int flip_screen_get(void)"
* define flip_screen flip_screen_get()
* clean up drivers with collisions
* mark write accesses to flip_screen_x with FIXME
tokenizing data structures, as currently used by the input
port system. Redid the input port tokenization to be more
compact and make use of the new macros.
- I still left drawgfx.c as is, the only piece of code that used any of the functions in drawgfx
was s2636.c -- everything else uses 8-bit bitmaps as a replacement for a two dimensional array
- Moved some variable declerations so that they are only visible where they are actually used
Note that the diff is large only because I removed a level of indentation from a huge chunk of code.
I could do that because the case it was checking for was already caught by one of the asserts added.
- resnet conversion - colors are now signficantly less saturated because of the 1K pull-ups.
This is noticable in the agent's coat and the sky color, for example. As far as I can tell this
correct from the schematics.
- Added bitmap palette selection based on the 128H line. Not sure where this is actually used in
the game
* verinfo: New syntax.
verinfo now uses the following syntax: verinfo.exe -b windows|winui|mess.
Does not depend on compile time defines any longer.
* makefile will include - if it exists - src/osd/$(CROSS_BUILD_OSD)/build.mak.
This was necessary to enable cross builds for winui. winui adds mkhelp to build tools and the rules for mkhelp thus had to be moved outside src/osd/winui/winui.mak
* Tested on Linux 64bit, Linux 32bit, Windows 32bit mingw, Windows 32bit MSVC
* Cross build environment to be posted to the list
ALL DRIVERS MUST NOW EXPLICITLY DECLARE THEIR SCREENS.
Read on for more detail....
Added device tag as a parameter to the start function for devices.
Updated MC6845 to accept this tag.
Added new functions for iterating through the device list and
counting devices of a given type. Updated search and iteration
functions to accept DEVICE_TYPE_WILDCARD to work across all
devices.
Added new macro MDRV_DEVICE_CONFIG_DATA() which is used to set a
single item in an inline data structure.
Removed the per-screen palette_base. This was an idea that never
really worked out, nor have we really needed it.
Defined a new device type VIDEO_SCREEN. Currently this has no
live functionality, but merely serves as a placeholder/identifier
for video screens. Eventually some of the screen management code
may move into the start/stop/reset functions.
Changed MDRV_SCREEN_* macros to build up VIDEO_SCREEN devices
rather than storing values in the screen[] array.
Changed MDRV_SCREEN_ADD to specify a screen type (RASTER, VECTOR,
LCD for the moment).
Removed the older VIDEO_TYPE_RASTER and VIDEO_TYPE_VECTOR; this
information is now determined by walking the screen list.
Removed the screen[] array from machine_config. Modified all code
referencing Machine->config->screen[] and changed it to iterate
over the devices using the new video_screen_first() and
video_screen_next() functions.
(The next step will be to add video_* functions that accept a tag
instead of screen index, and then move systems over to always
referencing screens by tag instead of index.)
Removed implicit screen #0. This means that ALL DRIVERS MUST
EXPLICITLY DECLARE THEIR SCREENS. Updated all drivers to do
so. While there, grouped all MDRV_SCREEN_* parameters together.
Also removed unnecessary VIDEO_TYPE_RASTER and VIDEO_TYPE_VECTOR.
Also removed VBLANK and bitmap format information from vector
games. This was painful and very tedious.
Changed game information to display info about all screens.