AGEMAME

0.134
Maintenance release - see agelist.txt for new games.

0.129
Included all updates from 0.128 to 0.129.


0.128
Included all updates from 0.127 to 0.128.
Removed MegaTouch from system,

Cleaned up Scorpion 2 AWP driver to remove opcode executions.

0.127
Included all updates from 0.126 to 0.127.
Started groundwork on a drastically improved stepper motor system.

Be warned, this could break reel-based games this cycle!

AGEMAME 0.126u4
===============

Improved Maygay M1 handling, and made everything compile again.

AGEMAME 0.126u3
===============

Updated to tagged regions.

Added preliminary support for MV1 (maygayv1.c).

This loads the Screen Play 'screen, but nothing else due to missing sound chip code.

Lamps and reels will also be added later.

AGEMAME 0.126u2
===============

Updated to tag all the devices that need it, which allows compilation.


0.126
Included all updates from 0.125 to 0.126.
Cheat engine disabled, Lucky74 games added.

AGEMAME 0.125u9
===============

Finally removed all traces of deprecated code from AGEMAME drivers.

AGEMAME 0.125u8
===============

Improved code quality to remove reliance on deprecat.h, and attempted to make the permanent
debugger less of a strain on the artwork system.

AGEMAME 0.125u5
===============

New DUART added to Maygay M1, fixes some bugs.

AGEMAME 0.125u4
===============

More IMPACT changes, based on some info from DialTone.

XML still a little broken, but should be all right to use.

AGEMAME 0.125u3
===============

Added the new Coronation Street set, and performed some cleanup.
Otherwise, very little of note.

MPU3 still not ready, but better documented.

AGEMAME 0.125u1
===============

Cleaned up drivers, and started a primitive MPU3 driver, no games as yet.

0.125
Included all updates from 0.124 to 0.125.
Added more support for JPM IMPACT, to the point where it at least starts to load code.
This has resulted in a splitting of the driver, and the addition of some PPI code.


AGEMAME 0.124u4
===============

A maintenance release to allow compilation again.

The 68681 core is not being used as yet, since there's no input port.

Expect issues with sound, as I've not done any special work to incorporate
the AY8913 changes.

AGEMAME 0.124u1
===============

Cleaned up drivers, and included new cobra improvements.
(Beeline is not available, as it requires a disk image)

0.124a

Included all updates from 0.123 to 0.124a.

Following the whole false start with 0.124, the phrase "Quack quack oops" springs to mind.
So, it follows that this release includes the preliminary driver of Give us a Break -
a floppy disk based SWP which is basically snooker based. Please note that, as a preliminary driver,
ROM names are subject to change.

AGEMAME 0.123u1
---------------

Converted scn68681 to new timer method, and added support for new poker games from mainline MAME.

AGEMAME 0.123u3
===============

Removed fake screens from all affected games.

Added better emulation of Maygay M1 DUARTs.

Merged all Cal Omega additions into AGEMAME.

AGEMAME 0.123u4
===============


Made a number of cleanups to the core code, in preparation for the inevitable move to tokenized devices.

Also removed dead bitmap code.

AGEMAME 0.123u5
===============

Further removal of bitmap code, and conversion to the new core standards.

This has reduced the executable size, and fixed some of the VBLANK issues.

AGEMAME 0.123u6
===============


Added support for the new Pot Game.

0.123

AGEMAME 0.122u1/2
-----------------

Changed logging to new format, to ensure compatibility.

AGEMAME 0.122u3
---------------

Added better reel support to gamball, fixed reel drawing code to poll the stepper code less,
XTAL-based timing added to almopst every game, where values are confirmed.

AGEMAME 0.122u4
---------------

Made all the copyright changes official, and removed more phoney video parameters.

AGEMAME 0.122u5
---------------

Added extra Question of Sport set.

AGEMAME 0.122u6
---------------

Further cleanups of some data, and added a few more crystals and CPU cores.

AGEMAME 0.122u7
---------------

Done something I've been meaning to do for some time - remove most of the duplication
between the MAME and AGEMAME versions of the Scorpion 2 drivers. This will improve
a little more over time, once I add a few bits to the MAME driver, but for now
it helps to remove a few bugs caused by maintaining two copies.

Various compilation fixes were also made, as well as adding suppor for more
IGT games.

AGEMAME 0.122u8
===============

Made all the necessary changes to allow compilation, but not any of the optimisations that could result, since most of them
are GFX related.

This has been tested to work with the 'fixed' u8.

0.122
Included all updates from 0.121 to 0.122.

Cleanups to all the AGEMAME source code, and a preliminary assignment of DIL switches for Scorpion 1.
There's still a long way to go, though.

AGEMAME 0.121u2
---------------

Added preliminary support for the 68681 DUART, and a Maygay M1 driver to test it.

Spotlight is added as an M1 test ROM, as it doesn't use sampled sound.

AGEMAME 0.121u3
---------------

Fixes to the M1 driver, and improved documentation of the Scorpion 1 games - work is still to be done
on fixing the coin acceptor.

AGEMAME 0.121u4
---------------

Cleanups of all drivers to remove fake screen information. Also fixed the other IGT poker drivers that
needed a different CPU.

0.121
Included all updates from 0.120 to 0.121.

Atari Ace has fixed the lvpoker issues once and for all, while I start work on Gamball and potentially useful
peripheral emulations. Be aware that all releases after this one may well be unstable, as I genericise as many
of the component emulations as I can.

AGEMAME changes for 0.120u1

The IC24 timer chip which regulates the input strobes had been set up to wait for a timeout
before accepting a reset of the counter. This is totally incorrect, there is a need to write continually
to the timer, as a timeout disables the input multiplexer as a safety measure. With this fixed, the flickering
of screens in Deal 'Em is removed. This does however disable lamping, as the lamp data is changing too quickly
to be perceived.

The crash in AGE32 was traced to an aggressive optimisation made to the reel drawing code. This has been
reversed where necessary, and cleanups made elsewhere to improve the performance.

AGEMAME changes for 0.120u2

The new ACIA code allows for the addition of CTS support to the MPU4 driver, this doesn't do anything as yet.
Visual C compilation has also been fixed.

AGEMAME changes for 0.120u3

I've started work on emulating the Gamball ball mechanism, this will take a lot of patience to sort out.

There's a new layout setup, but that will all be changed eventually.

MSVC compilation fixed in a different way, since core changes broke part of it anyway.

MPU4 video communications have been improved, but they still don't work correctly.
AGEMAME changes for 0.120u4

MPU4 has now been split into three drivers, mpu4awp.c which will run AGEMAME games,
mpu4.c which holds the core system, and mpu4drvr.c which holds the extra elements.

Some ROM names have changed as a result, use a good ROM manager to clean them up.

Cluedo Prod 2 has been added, this is the original release from the codebase we've
emulated - it has a different sound program.

0.120
Included all updates from 0.119 to 0.120.

AGEMAME changes for 0.119u2

David 'Haze' Haywood was able to fix the video problems with Deal 'Em, so that the game screens can now be seen.

I've made a quick pass at implementing the inputs, but they're still not complete. However, it should still be possible
to get a feel for the game.

AGEMAME changes for 0.119u3

The input fixes did not work correctly, as some of them failed validation. I've put the second phase in though,
so everything should now work.

AGEMAME changes for 0.119u4

Added support for the new IGS and IGT poker games from MAME.

0.119
Included all updates from 0.118 to 0.119.
AGEMAME changes for 0.118u1.

Made the few minor alterations required to allow the core to compile (AWPs don't really need tilemaps
in the main)

Since I had a little spare time, I also fixed the last remaining gremlins in the Gamball audio (the
infamous Yamaha chip) - at some point I'll work out all the ball switches, but it makes a nice proof
of concept as it stands.

Characteriser handling has also been rewritten as before the reset command was totally ignored.

AGEMAME changes for 0.118u3.

Time wasn't really on my side this week, so there are a few minor cleanups, but nothing major.

I've noticed an issue with Gamball reel spin alarms, this will need to be tracked down and sorted in the long term.

IMPACT is being reworked to add AWP support.

AGEMAME changes for 0.118u4.

An addition of Vegas Poker courtesy of HIGHWAYMAN, as I continue to probe the full
extent of the MPU4 video system. If anyone could assist with this, I'd appreciate it, as there's still some
IRQ cases that don't seem right.

There's also been a few little optimisations of the AWPvideo system, which should make reel updates a little 
easier on the CPU.

AGEMAME changes for 0.118u5.

Several game additions, as a bribe to get you to move onto the new compile tools:

Time Machine, an MPU4 quiz game (not working) 'timemchn'

Quintoon (2 sets UK), both program number 206, but one is the Datapak version.

Please note:


The new supported set is now the parent 'quintoon', with the older one now quintono. Because the input
mappings are different between the two, you will have problems unless you clear the quintoon.cfg and 
the quintoon.nv file out of the cfg and nvram directories. If you need to keep theme for any reason,
rename them quintono.cfg and quintono.nv, so theyll line up with the new version.

The Datapak version is 'quintond'.

AGEMAME changes for 0.118u6.

Fixed auditing errors caused by 1. a faulty SHA1 program and 2. forgetting that Connect 4 ROMs are loaded
p2 first.
0.118
Included all updates from 0.117 to 0.118.
0.117

Numbering scheme changed for this release, this version equivalent to 0.45.

This release is now designed as a source overlay for MAME versions of equivalent
version number. This should allow a cleaner upgrade path in future, and reduces a number
of headaches due top supporting multiple versions. You must now compile using TARGET=age

i.e "mingw32-make TARGET=age" rather than "mingw32-make -f makefile.age"

Scorpion 4 support has been removed as it never did anything, so The Game and Poleposition are
no longer supported. This may be returned to in the future.

0.44
Included all updates from 0.115 to 0.116.
All efforts have been devoted to correcting the communications between the three boards of the MPU4.
Currently, the PIA improvements made within MAME have made for improvements with the inputs.

0.43
Included all updates from 0.114 to 0.115.
The main focus here has been improving the MPU4 driver, to the point that
inputs now work correctly. This would allow Connect 4 to be playable, but it
seems that there are still issues with the lamping.

0.42
Included all updates from 0.113 to 0.114.
Were you expecting Life, The Universe and Everything?
What you're getting is a generally cleaner codebase, and a promise
to look into improving some of the older drivers in the long run.

0.41
Included all updates from 0.112 to 0.113.
Converted the Scorpion1 and System 85 drivers to Phil's new ACIA code.
Of course, the Cobra platform is now emulated.


0.40
Included all updates from 0.111 to 0.112.
While this commemorates the 10th anniversary of MAME, it is also predicted that
this cycle will include the 3rd anniversary of AGEMAME. I would like to take this
opportunity to thank all those who have contributed to the project, in addition to
the MAME list, I'd like to mention the initial support provided by Smitdogg at
MAMETesters who gave us our first site, to Sourceforge and Tony Friery for the
original MAGE CVS, to Alan (Duplu) at Fruit-Emu who will be providing some space for
one of the new projects that will be announced soon.

There is nothing AGEMAME specific in this release, aside from the fact that MPU4 emulation
is more advanced than in MAME due to the development lag.

0.39
Included all updates from 0.110 to 0.111.
The AWPVid specification is now locked, with a view to a third party layout tool
being developed (see http://agemame.pembo.co.uk for more information).
This is the first release where bug reports are being accepted for the SDL version
'SAGEMAME' - source for this will be made available shortly after SDLMAME, much in the
same way as AGEMAME32 is currently made available.

0.38
Included all updates from 0.109 to 0.110.
Very little by way of improvement to the AGEMAME side, this has largely been
a maintenance release.

0.37
Included all updates from 0.108 to 0.109.
While MPU4 does not function correctly, there is now primitive Yamaha emulation.

VFD code has been rewritten, so that MSC1937 displays are readable.

0.36
Included all updates from 0.107 to 0.108.
AWPVideo now works correctly again - the program itself no longer distinguishes between a game with a DX layout
and a game without one - there is now a default layout built into AGEMAME for each AWP game.

As before, Dr. Who has been set up as an example of the format. I have received reports from a preview release that suggest
that the VFD may not be sufficiently clear as currently drawn, due to limitations of the method I am currently using.
(Currently, the scaling operation is not drawing all the lines correctly).

0.35

Included all updates from 0.106 to 0.107.
AWPSim again revised, into AWPVideo - a series of functions that any driver can access, to  provide a unifrom platform for future simulator development. The original system has now been totally disabled, but as of writing there is no sample simulator layout available (lamping is improving, though).

The system still isn't perfect (Ideally, different video components should be placed on different 'screens', but that will require a rewrite of the AWPVid external components (vacfdisp, bfm_dm01 etc).

AGEMAME is still using a different MPU4 core to regular MAME, while I try to work out some communications issues - when ready, I'll merge it back in.

0.34
Included all updates from 0.105u2 to 0.106.
AWPSim revised into a number of simple functions, so as to minimise the degree of C knowledge required to add support for a particular game. Closer to the release of 0.34, instructions will be provided on site.

0.33
Included all updates from 0.104u1 to 0.105u1, and finally added version 1 of the AWPSim (Amusement With Prize Simulator).
Currently, said simulator only works with Dr Who: The Timelord, as this is the only one of the games I have full
graphics for (thanks to Daysleeper, Tony, Ranting Maniac, Altharic and Re-Animator for their help in this, known or otherwise ;) )

With this release I will also release a support file, bfmdrwho.zip - this should be placed in the 'artwork' subfolder.
You will also need to ensure that 'artwork' is enabled in your INI file, command line or frontend for Dr Who: The Timelord.
If done correctly, you should be able to see a graphical depiction of the machine on your monitor, with the lamps and displays
synchronised to the main program (reels are still the text form, due to an apparent bug in the artwork system.)

Please let me know if there are any apparent glitches in the system, as it does abuse many parts of MAME's artwork system
which were never built to do what they are currently doing.

There have also been a few cleanups internally, to reduce the amount of unused source code that is compiled, as, like MAME,
we are no longer UPX compressing our builds.

0.32
Included all updates from 0.104, and changed the fruit machine drivers to use the 16 segment drawing code (which still
needs a little work, but it's better than it was).

0.31u1 (Built with 0.103u3)
Did some cleanups to minimise duplication of MAME code.

0.31 (Built with 0.103u1)
Removed cardline for technical reasons (although the driver passes MAME submission guidelines, it appears to break when put into AGEMAME).

Made various other miscellaneous changes, for legal reasons.

0.30
Significantly changed handling of AGEMAME's 'simulated display system'. Now it uses the MAME UI calls rather than an external font, so the agemame/font/uifnt.c is obsolete. [David Haywood]

Added all confirmed gambling games made available after 0.29 (Dark Horse, Magic Stick and Card Line).

0.29

Changed documentation for 0.28 ;)

Started work on save state support - since many gambling games will read NVRAM on booting, this is fairly straightforward for some, but other, complex drivers will need more work doing.

As a result, do not expect much by way of progress on this, as in many cases it is a lot of work for very little gain.

That said, Lovely Poker and Pontoon can now save states with no problems.

Added support for payslides in Adder games.

0.28

Added a newer version of Belgian Slots to the Scorpion 2 driver.

There have been no significant changes from 0.27u1, but it is felt that an update is 
necessary for those who don't compile their own (lazy bums ;) )

Due to the instability of 0.101u1, AGEMAME 0.28 is limited to MAME 0.101.

0.27

Significant renaming of Scorpion 2 games and ROMs (you are recommended to audit your sets using a MAME ROM audit tool,
obviously using age.exe as your 'MAME executable')
Dr Who now uses an amended ROMset, rather than the artificially decrypted one we were running.

Changed all AGEMAME inputs to MAME defaults, to allow for better compatibility with MAME in future (a default.cfg file is provided for this release, placing it in your AGEMAME cfg folder will configure MAME's button mappings to the AGEMAME standard.

Added all the relevant updates from 0.99u1 to 0.100 (see whatsnew.txt for those)

This means Forte Card, Jackpot Pool, Muroge Monaco, Witch, Pinball Champ '95, Cuore Uno, Elephant Family and Royal Card are all now included here too (grazie, Roberto and ta, Dave!).

Added new AGEMAME specific games; Top Poker, Luvvly Jubbly, Club Public Enemy No.1, Club Grandslam, Club Attraction. (Re-Animator)

Added better support for MPU4 Video, but it still doesn't work

To better test this, three variants of The Crystal Maze, The Mating Game, Skill Trek and Turn Over are all included.
Incidentally, if anyone feels an urge to add the transmit support to MESS's mc6850 core, this would help a lot.
(anonymous).



0.26u2

A raft of changes by Re-Animator:

bfm_sc1.c

	- memory leak in function 'decode_sc1' solved
	- added MDRV_VIDEO_STOP( generic_fruitmachine ) to solve another memory leak.

bfm_sc2.c

	- memory leak in function 'decode_mainrom' solved
	- WRITE_HANDLER( reel12_w ) ,WRITE_HANDLER( reel34_w ) and WRITE_HANDLER( reel56_w ) changed
	  reels were swapped
	- added custom inputs for 'bfmdrwho' and 'cpeno1'
	- added MDRV_VIDEO_STOP( adder2   ) to solve another memory leak.
	- added MDRV_VIDEO_STOP( bfm_dm01 ) to solve another memory leak.
	- added MDRV_VIDEO_STOP( generic_fruitmachine ) to solve another memory leak.
	- upd7759 sound is working !!!

bfmsys85.c

	- added MDRV_VIDEO_STOP( generic_fruitmachine ) to solve a memory leak.

agemame\vidhrdw
===============

bfm_adr2.c
	
	- added VIDEO_STOP( adder2 ) to solve a memory leak

bfm_dm01.c
	
	dotmatrix is updated in a bitmap
	and is now displayed on the screen

	also solved a memory leak by adding a VIDEO_STOP( bfm_dm01 ) function

genfmvid.c

	added 'VIDEO_STOP( generic_fruitmachine )' to solve memory leaks
[Re-Animator]

Also changed some Scorpion 2 game names and ROMnames, probably best to check your sets with an auditing tool for this release.
Changed a few more Scorpion 2 inputs, including one DIL switch error. [El Condor]

0.26u1

Since the changes to 99u1 borked all the CFG files, it made sense to take the opportunity to rationalise the input handling of the various games, in particular the Scorpion 2 Video titles which had many inconsistencies, including a debug mode which may not have been accessible to the operator (I've left it in though, press 'X' in many Scorpion 2 games to activate it.
This, coupled with a minor alteration to the autopayout systems of Scorpion 2 and Tehkan titles are the only AGEMAME specific changes.
At this point I remind you that the game-specific CFG files (not default.cfg or anything controller specific) are no longer valid, and it is best to delete them and have AGEMAME recreate them from scratch. Also, it is worth reviewing the input menus for each game, as some buttons have changed to better match the original control panels.

0.26

Added preliminary hopper simulation to some games, and added another variant of the MPU4 Video system to the driver.

0.25

Mainly a sync release, so no new games. But, most of the problems with the new system have been resolved, mainly by renaming the executable to age.exe from mamea.exe.

If you want to compile from an existing MAME source, you can, but it is imperative that you rename the src/inptport.h file to something else, as otherwise the compiler will try to use it with the AGE input ports, and get confused.
Regrettably, we do not know of a way to fix this.


0.23

All change for this release, as we change name, location and license.

If you want to keep old MAGE settings, simply rename mage.ini to mamea.ini.

You may notice a slight change to our source delivery system, this is to remove excess strain from our server, and to 
highlight our derivative status. Essentially, the new source ZIPs must be applied over a normal MAME source, and to compile,
type mingw32-make -f makefile.age at the command prompt, rather than just mingw32-make.

During the transition period Peter Trauner contacted the old site offering an old MESS driver which ran the Fun World video poker games (All those previously in the intgames.c
driver). This has been merged with the work by Curt Coder to make a working driver for 
all the games running on this hardware, bar igpoker, which appears to be a slightly 
different PCB type.

Unfortunately, we have no colour references to correct the palette handling, but the games do appear to be playable.

In order to use them, and to remove the false bug reports we are likely to receive, please read the following notes 
before playing:
	
	- It takes 48 seconds for the Fun World (bonuscrd/poker4/poker8) games to boot up
	  after the initial screen is displayed!!!
	- The default DIP switch settings MUST be used when first booting up the games
	  to allow them to complete the NVRAM initialization.
	- jollycrd/jollypkr: To initialise the NVRAM, Start game, press and hold Service1 & Service2, press
	  reset (F3), release Service1 & 2 and press reset (F3) again. Now the NVRAM
	  has been initialized.

Some ROMsets have had minor changes, these are:
bfmqtnd, gcr, oldtimer, paradice, pokio, ponttehk, sltbgpo, starspnr.

The use of a tool such as ClrMAME Pro can fix these (mostly name and case related), but magiccrd has been totally rebuilt,
and is therefore not fixable.


Version numbers relate to the documentation drivers (marked as MAGE)

0.21

Updated to 95 core, including improved CD image support.
Readded the missing YM2413 Reset in Scorpion 2 - should fix any hanging synth notes on any games in that driver.
Miscellaneous input cleanups, and reclassification of some games as not working (El Condor)
Removed SEGA pontoon, due to extreme likelihood of never being able to get it running, ponttehk name remains unchanged 
though.
barquest.c merged in with mpu4.c, but still crashes on execution.

0.20

Curt Coder and Tomasz Slanina cleaned up lvpoker.c and vroulet.c respectively.
This was merged with the total sound and input rewrite to make MAGE 0.20.

NOTE: The new sound core is experimental - if any games are broken, I need to know so I can fix them.
Apparently the YM2413 in Scorpion 2 is broken, but I don't know why.
EC's ADDENDUM: After an input error was discovered, 0.20 was rereleased - this amended version had a fixed YM2413, as
the problem was traced to a direct YM2413 call, which worked before, but really shouldn't have.

0.19u1

Added neogeo support - not working perfectly, but a start (Thanks Shin Emu Kikaku!).
More Scorpion 2 Video games added, namely two Belgian versions of Slots, that pay tokens and coins (Re-Animator)
Re-Animator has also improved mpu4 support, but there are still issues with IRQs and display timing (sdrawkcab deyalpsid 
gnieb si gnihtyreve, or to put it another way, everything is being displayed backwards)


0.19

Added Merlin's Money Maze, as it is a UK SWP.
At present, there are no plans to include Mahjong gambling games, as this simply duplicates the effort of others, and would
pose problems under the current maintenance schedule.
Other generic cleanups to match current core.

0.18u1

This has the potential to be one of the biggest releases we've put together - Re-Animator has been able to obtain
more BFM Scorpion 2 Video ROMs for inclusion, and has reworked the relevant drivers to fit.
The roll-call of games will make interesting reading, but ideally we need to find more ROM dumps from this hardware
to complete the set. Supported as a result of this release are:

Club Public Enemy No.1 (Not Working) (cpeno1)
Every Second Counts (Not Working) (Based on the semi-popular BBC Quiz hosted by Paul Daniels, it could do with a lot of 
magic to get it going)
Golden Crown (gcr)(A fruit machine where you pick what symbols appear on each reel)
Paradice (paradice) (An interesting Dutch puzzler, based on the 'Magic Square' maths problem)
Pokio (pokio)(A dutch poker game with a Quintoon style twist)
Pyramid (pyramid) (match pairs and move up the pyramid)
Quintoon (bfmqntn, bfmqtnd and bfmqtnd2) (UK SWP with revised sound and Dutch, non-gambling rules)
Slots (slotsnl) (Like gcr, only more complex)

The driver also supports other prototypes, but at the request of the companies involved we have disabled them. Without 
their support, very little of this release would have been possible so please, respect their wishes and do not reenable 
the games.

You will notice that the majority of these games do not appear to pay out, and have a high score table instead.
However, given the nature of the Scorpion 2 emulation,it is unlikely that these games will be considered for MAME,
as most sets have payout hardware attached, even if it's unused.

0.18

Managed to finally get together the new tools, and get them working reliably enough to process MAGE code.
In the process, I found a few minor issues in MAGE-specific drivers, which I've managed to shut up for now.
Adding new games has proven problematic in recent times (I can't do this alone!), but a SEGA title arrived just on deadline.
It probably will never work, as it requires more than one machine connected, but since when did MAGE games have to work ;).
It's another pontoon title, and it means that the current game 'pontoon' has been renamed to 'ponttekh', representing
Pontoon (Tekhan).

0.17cvs

As part of the bid to optimise the program, MAGE is planning to switch to a new, more common set of Windows-based compile 
tools (other OS's should continue as per their maintainer's wishes). There isn't much space to deal with the changes here,
but the files in question are listed on an external site, in the downloads section of MAGENET, under 'Compile Utilities'.

In the interim, some error messages have been turned off (they've actually been off in MAGE compiles for some time), but
eventually the fixes should come in and stabilise the program (the drivers which fail full compilation have been fixed in 
some way, but the corrected functions may not give the correct results (it's difficult to tell, since said functions are 
unused).

It should also be noted that the Visual C extension support has been radically reworked, in order to be fully compliant
with the new compiler regime. Things should still be fairly self-explanatory however.

Keeping things up to date with MAME core, not much else to report.
Some friendly soul (Lawrence Gold) has reworked the core to allow an easier fork from MAME source.
As it stands, it means I can now update the source from a basic diff, rather than manually, which should lower 
turnaround time.

Generic CPU updates of little concern to the project in the short term, but useful nonetheless.

Windows Debugger Updates
------------------------

Fixed some compile errors [Nathan Woods]

Misc updates [Aaron Giles]
* Added a "PC" register to the I386 core so that it should work in the new debugger
* Cleaned up stepping code
* Now refresh the display and all debugger windows after each step while stepping
* When running with the debugger window open (F5 or 'go'), now update the debugger views
4 times per second
* Can now break into the debugger even if you are focused on a debugger window
* Memory/disasm windows now come up with the currently active CPU selected by default
* added a new command: focus <cpunum>, which is equivalent to ignoring all 
other CPUs
* changed ignore and observe to support multiple parameters so you can say "ignore 2,3,4"
* changed ignore so that you are not allowed to ignore the last CPU
* fixed ignore behavior so that other CPUs are truly ignored
* fixed register window so that change hilights are maintained during scrolling and updates
* changed debug memory accessors so they don't log on invalid memory accesses
* tweaked the help text to indicate that help <command> works
* added a new text attribute DCA_CURRENT, which is separate from DCA_SELECTED -- the main
visible difference is that the memory view editing cursor is now hilighted red instead of
yellow

In-line memory editing is now supported. To do this, I added a generic 
cursor concept to the view system. Each view can handle it however they 
want. Right now only the memory view supports a cursor. [Aaron Giles]

Click in the memory view to place the cursor. Type over nibbles with 0-F, or 
use the arrow keys to navigate around. Tab cycles between the edit box and 
the memory editor. [Aaron Giles]

updated psx core to show more registers [smf]


0.16u1
MAGE is now a PinMAME licensed work - this allows for better compatibility with future MAME work (see below)

New Windows Debugger from MAME - developers, please test.

[Curt Coder]
cherrym.c
- use the original PRG512 program rom, as the board really has a 64k eprom 
for it
- I have a screenshot of the original game but can't work out how to use the 
color proms correctly :( background should be black etc.
- some dip switches figured out

lucky8.c
- fix startup crashing
- some dip switches figured out
- added the two proms that were mistakenly commented out


0.16
Updated core (MAME 88), should fix some compiler hangups.
Slightly better graphics system has been inherited.

Barquest (Crystal Maze) gfx are improved, but not perfect by any means.

Core specific details:

Discrete sound changes [Derrick Renaud]

	Discrete Sound Changes
	======================
	* Continued cleanup of code to make it more readable

	New Discrete Modules Added
	==========================
	* DISCRETE_NOTE - counter circuit used to create tones/music.
	* DISCRETE_INTEGRATE - various op amp integration (ramp) circuits.
	* DISCRETE_OP_AMP_TRIG_VCA - Did not know what to call this. :-)  Basically it
	is a programable voltage controlled amp.  But uses only an on/off trigger.  It
	has resistors to select the rise/fall times.  Also it is not a true VCA.  It
	actually adjusts amplitude by clipping more/less off the bottom of the input
	signal.  But it is a common circuit.
	
	Game Driver Changes
	===================
	* polaris - complete sound rewrite to use new component value code.  Hooked up
	watchdog timer.

New watchdog functionality [Derrick Renaud]
	
	Core Changes
	============
	Changed watchdog to allow it to start at machine run start.  If not used, the
	previous watchdog functionality is retained.  Only define 1 of the 2 watchdogs
	per game.  If both are defined then  MDRV_WATCHDOG_VBLANK_INIT will be used
	only.
	
	* MDRV_WATCHDOG_VBLANK_INIT(watch_count)- Initializes the watchdog in
	MACHINE_DRIVER_.  watch_count is the # of vertical blanking intervals before a
	forced reset.  If the time is unkown then you can use these defaults:
	DEFAULT_60HZ_3S_VBLANK_WATCHDOG or DEFAULT_30HZ_3S_VBLANK_WATCHDOG
	
	* MDRV_WATCHDOG_TIME_INIT(time)- Initializes the watchdog in MACHINE_DRIVER_.
	time is the time in seconds before a forced reset.
	
	New function to enable/disable the watchdog in game.
	watchdog_enable(0 or 1) - used to 0=disable or !0=enable.
	
	Made a macro that calculates the pulse time of a 74LS122 or LS123.
	TIME_OF_74LS123(r,c)
	r is in Ohms.  c is in Farads.
	c must be greater then 1000pF to use this function


Added runtime option to disable validity checks [Derrick Renaud]

	Added run time option:
	-[no]skip_validitychecks
	    Forces MAGE to skip doing the code validity checks. The default is
	    OFF (-noskip_validitychecks).
	This new option will default to doing the test and force you to confirm you
	do not want to use it.  This way users can test their submissions easily and
	then speed things up when confirmed ok.
	
	NOTE: DO NOT disable the checks when submitting code, or incure the wrath of the maintainer.

Input Port System Update [Aaron Giles]
	PORT_INCLUDE() works the same as before.

	PORT_MODIFY("tag") allows you to modify any given input port by specifying 
	its tag.

	Any PORT_BIT() entries that you put after a PORT_MODIFY will nuke any 
	matching entries in the previous definition, allowing you to overwrite them 
	with new stuff.
	
	I also added a few new functions:
	
	readinputportbytag_safe() takes a tag and a default value. If the tag is not 
	found, the default value is returned.
	
	port_tag_to_handler8()
	port_tag_to_handler16()
	port_tag_to_handler32() -- these 3 new functions take a tag string, find the 
	input port, and return the appropriate handler. They can be used in AM_READ, 
	so instead of:
	
	  AM_RANGE(0x00, 0x00) AM_READ(input_port_1_r)
	
	You can use
	
	  AM_RANGE(0x00, 0x00) AM_READ(port_tag_to_handler8("MyPortName"))

Memory system changes / fixes [Aaron Giles]
	* added explicit casting to the memory handler width when computing the 
	shifted data/mask values for read/write handlers -- this should in theory 
	fix R. Belmont's 64-bit issues

	* added memory_install_read/write8/16/32/64_matchmask_handler functions to 
	allow dynamic installation of match/mask (AM_SPACE-style) memory ranges --  
	this should satisfy Frank P's request for the astrocade driver
	
	* changed masking behavior for match/mask pairs so that an AM_SPACE with an 
	AM_MASK does not expand the explicitly-specified mask value -- this should 
	fix dwidel's problem getting Pac-Man accurate
	
	* changed dynamic bank assignment to always assign a bank if you have 
	explicitly specified a mask value via AM_MASK -- this should allow mirroring 
	via AM_MASK if you want to, though AM_MIRROR is still preferred.
	

More changes [Derrick Renaud]

	Core Changes
	============
	Fixed some last remaining issues with the new watchdog.  The watchdog would
	not remain disabled after a watchdog_enable(0) in some conditions.

	Added a new function to change CPU clock speed in game.  The current scaling
	factor will still apply.  eg. If you force the CPU to change clock to 1MHz
	while the scaling is at 50%, the effective CPU speed will be 500kHz.  Then
	reading the clock speed will give 1MHz, because clock scaling is transparent
	to the driver.

	/* Returns the current CPU's actual unscaled running clock speed */
	int cpunum_get_clock(int cpunum);

	/* Sets the current CPU's clock speed and then adjusts for scaling */
	void cpunum_set_clock(int cpunum, int clock);


0.15u2

Fixed ROMsets in the new games.
Patched version: merged Curt Coder's Tehkan tilemap fix to enable correct graphics in lvpoker.

0.15u1

Drivers now support MAME 0.86 architecture.
With the build maintainer off MAME duty for the forseeable future, MAGE work goes on in earnest.
Another line-by-line check revealed a few glitches, which have been corrected.
Added a large number of preliminary drivers by Curt Coder (everything new is his), who has also tidied up the lvpoker 
driver, so it can use the tilemap system.

Note that anyone wishing to continue working on the barquest hardware, should change the game name 'cmazeswp3'to 'cmzeswp3', 
there is a maximum of 8 characters per internal name.

Also, it is now looking likely that Quintoon is using the wrong sample ROMs, and that the Troutman audit set does not 
include them either. If anyone is in possession of a Quintoon PCB, or knows where to find the real sample ROMs, contact me.
Our project is soon to opt in to the Sourceforge donation program, we intend to use any money collected to purchase 
technical documents to assist with further work.

0.15

Drivers added to MAME 0.85u1
As a result of recent developments with the core, MAGE will now be distributed as a single compressed program (no DLL)
This is because of a source rewrite, which should enable porting to other formats, such as Mac OS and Unix (Please email 
El Condor if you wish to assist with this, as all current developers use Windows).

MPU4 has been reintroduced, after advice to the effect that the MPU4 has been declared 'dead' by the original manufacturer,
and that no actual boards have been produced for a considerable time.
However, care will still be taken to avoid damaging any remaining industries using second-hand units.

MAGE is proud to announce a major breakthrough - The BFM 'Adder' video board is now working with near-perfect CPU 
synchronisation. This video hardware was used for a number of games, but again, many are being sold/developed by BFM
satellite operations - discussions are taking place with contacts to determine future availability (Don't hold your breath).

Re-Animator has made many further changes (his descriptions are included):

drivers:
    - bfm_dm01.c,    small cleanup, this driver is not used anyway, it will
probably move to video hardware once working

    - bfm_sc1.c,    - the watchdog timer is now emulated, so if the
'backdoor' is closed, the machine will reset instead of crashing
                    - the roms are now decoded in the emulator, so you
have to use different roms (the same as on a real machine)

    - bfm_sc2.c,    - updated multiplexed inputs
                    - added watchdog timer emulation, same as in
bfm_sc1.c
                    - adder hopper simulation (needed for future
belgian games)
                    - added some logging for electro mechanical
meters
                    - updated NEC sound chip interface code, uPD7759
now works including bank switching !!
                    - emulated coin lockouts
                    - emulated pay slides
                    - the roms are now decoded in the emulator, so
you have to use different roms (the same as on a real machine)
                    - added communication with 'adder2' video board
                     new game: bfmqntn BFM quintoon is now working !!
(Not two versions after all, the stake is changed via a DIP switch.)

    - bfm_sc4.c,    - small update started with SIM07 emulation
    - starspnr.c    - new driver for ACE starspinner
                            doesn't work.
                            I don't have a lot of experience with Z80 maybe
someone else can take this over.
                            I tried to decode the GFX roms, but it looks
like the the gfx hardware is NOT character based.
                            because the charset changes from
resolution(format) at a weird address.
                            So the video hardware is probaly pixel based.
machine:
    - mmtr.c    - 'int Mechmtr_update(int id, long cycles, int state)' now
returns 1 if a the meter ticked
vidhrdw:
    - bfm_adder2.c    , BFM adder2 video board emulation

Recoded all the drivers to use the new input system - should be fun in future, as all the INI files are now XML.
Incidentally, this means that any existing .cfg files should be deleted.
This has tightened up the inputs in Tehkan hardware games (pontoon, lvpoker).

New Games supported or promoted from GAME_NOT_WORKING status:
-------------------------------------------------------------
bfmqntn BFM Quintoon (Re-Animator)

New Non-Working games / clones supported:
----------------------------------------
starspnr ACE Starspinner (Re-Animator)
bfmfocus Focus (Re-Animator)

Games removed:
--------------
stablkjk Status Blackjack (Current driver is totally incompatible with new core, needs a total rewrite)

0.14
Continued to build Barquest driver, based on new information and a known good dump. The SAA1099 problem was traced to
an incorrect bus connection, which will be solved once emulation is more complete.

Also, renamed vidhrdw/pontoon.c to vidhrdw/lvpoker.c , and cleaned up lvpoker driver to include more options and better
input arrangements.

Moved distribution to Sourceforge.

0.13u2
Barquest hardware test driver (Dox) - at the moment all it does is dump the video ram (Every time sound is added, it 
crashes - there must be something odd about SAA1099)
Added Royal Casino (Curt Coder, input cleanups by El Condor)

0.13u1
MPU4 deleted on legal advice
0.13
Some new features added this time round, namely that all of Re-Animator's drivers have been updated in some form or another.
   bfm_sc1.c
	- fixed compiler warnings
	- merged separate read and write memorymaps to one single memorymap
   bfm_sc2.c
	- merged separate read and write memorymaps to one single memorymap
other Scorpion work too
   bfm_sys85.c 
	- merged separate read and write memorymaps to one single memorymap
   mpu4.c
	- update comment on memory map
	- added PSG AY8910 interface
	- added PTM6840 interface (PTM6840 emulation is not finished)
	- connected the emulated alpha display control lines to the 
	  display emulation.
          The display is now working !!
	- started with LAMP and LED multiplexers
          this can only work if the timer interrupts are working
          which needs the PTM6840 emulation !!
	- gamecard pia now uses the alternate mapping
          (probably wrong, but otherwise the software locks up waiting for the 
           unemulated OKI soundchip
	- added 50Hz signal.
machine:
  added a new module ptm6840, for emulating the motorola MC6840 PTM
  this does not work yet, 
  This module is very important for MPU4 emulation !!!
      ptm6840.c 
      ptm6840.h  

The main DLL is now compressed with UPX to reduce footprints, if there are any load problems, let us know.

0.12u3
Another mini overhaul, updated to MAME Plus! 0.81u9, and fixed the graphics scaling features.

0.12u2
Experimental dev-sync release, everything in a state of flux.

0.12u1
As I sorted through yet another breakage due to a core change, I realised that there was an easier way of doing this.
BUT has assisted me greatly in an overhaul of MAME Plus! and MAGE to automate everything.
As a consequence, everything is now built automatically depending on the target definition. Config.def now contains all
the extras.

0.12
Switched to the MAME Plus compilation system, described in the html page provided. Note that warnings are to be expected,
and do not constitute a problem - MAME code is not actually designed to be studied at the level of pedantry I use.

Lovely Cards has been removed - it is not a gambling game (If you still want it, it's in MAME), its gambling equivalent 
Lovely Poker is still present as the new parent.
Basically this has been a housekeeping release, with all the new MAME code (including CD support) added. New features 
have been added.

0.11
Everything up to date, core at version 0.80u1, new MAME Plus code in place.
You may have noticed a slight change in distribution, namely that every part of the main MAGE code is in one dll, with the 
different builds available as two interfaces. This is designed to reduce the amount of time needed to build a new 
distribution, and also to reduce the amount of bandwidth and disk space needed for either version - you can run both 
versions in the same directory, from the same dll.

The UI code is now a modified MAME Plus core, with the graphical touches added back in - and some new ones too - everything
is made that little bit more bulletproof.
Meanwhile, the preliminary drivers are still being constructed, with MPU4 now part of the selection (not working).

0.10u2
Now the build contains the new coinmaster driver too, though like I say, it doesn't work properly.


0.10u1 

Now things get interesting... MAGE now starts to move away from the normal MAME core.
The internal user interface is the more advanced FX version (with VFD coloured text), the core is now at MAME .80, and 
there's more...
Thanks to Re-Animator, a preliminary simulation system is now included, for lamps, displays and reels.
No games work fully with it yet, but eventually BFM support will be added (I've tried to add MPU4 to the same system, 
but it still needs lots of testing).
Working drivers now have their memory maps merged, non working drivers remain in the old manner.
Also, pontoon.c games (pontoon,lvcards,lvpoker) have been reanalysed, it appears that lvcards may not be a gambling game 
- this will be checked in due course.
NOTE to porters - all drivers with bfm in their filenames, the new machines and coinmstr.c and mpu4.c are part of the new
system, all of them are considered unstable, and are included here solely for the benefit of the developers.

0.10

After a series of pre-releases, this should be considered the first stable version. After double checking the license. the 
build can be named without the MAME version number, so this has been adopted.
A full audit of every file was completed, and now SHA1 values are computed for all games, not just those from the 
non-updated drivers.
ROM sizes and names were also altered to match their logical equivalents, it is recommended that you check your files 
against the DAT issued prior to this release.
The frequencies of the Z80 processors in the IGS games have been amended to closer match their apparent original values
(The games ran on 1989 Konami boards, through the 'audio' CPU).
Pontoon now has a more realistic hopper setting, and will now pay out semi-automatically.
The MAGE code now uses the entirety of the MAME 0.79u4 library, with the timer improvements that that implies.
The team are currently having troubles with Playmark Roulette, it is believed that either the dump, or the hardware 
information is incorrect - we would be pleased if anyone possessing the board contacts us with more information.


0.7902
Fixed minor Lucky Poker ROM loading bug, still doesn't display correct tiles though, so the most likely culprit has been 
flagged.
Also corrected ROM naming of Lucky Today PROM, so that the best known dump is included.

0.7901

MAGE project started, source forked from MAME v79, and comprised of all the existing gambling drivers permitted under the
MAME license. In order to stabilise the build, some drivers have been merged/updated by El Condor.
Two new games have been partially coded, but have some severe issues,
described below.

New Games supported or promoted from GAME_NOT_WORKING status:
-------------------------------------------------------------

Champion Skill (with Ability)[Mirko Buffoni]
Golden Star[Mirko Buffoni]
Pontoon (Tehkan) [Zsolt Vasvari]
Lucky Cards [Uki, merged with Pontoon]
Super Derby [Haze]
Lucky Today [Unknown, converted to non-clone status]

New Clones supported or promoted from GAME_NOT_WORKING status:
--------------------------------------------------------------
Champion Skill (with Ability, Poker and Symbols)[Mirko Buffoni]
Golden Star (Blue Version)[Mirko Buffoni]
Lucky Poker [Uki, merged with Pontoon]

New Non-Working games / clones supported
----------------------------------------
Roulette (Playmark) [El Condor, based on Super Derby] (Graphics loading issues)
Blackjack (Status) [El Condor, hooked up to Status Triv II] (Should be Triv I or earlier, but shows some graphics, documentation only)

