Sent: Friday, July 10, 2009 11:02 AM
To: Aaron Giles; Angelo Salese
Subject: Otenami Haiken Final (V2.07JC)
Note, I've talked this one through with him, and this is correct. Taito
sold this on a 64Mb CF card, it *requires* the V2 bios which is where CF
card support was added (it might be the reason the V2 bios exists) The
supported bios is dumped from the PCB, I know we have the actual upgrade
kit, but afaik MAME can't upgrade it properly. Only the new game uses
this bios, as it's actually a less featured bios aside from the CF support.
New Games added
--------------------
Otenami Haiken Final (V2.07JC) [Joerg Hartenberger]
Other changes
--------------
- Added flashv2.u30 (v2 bios) to the taitogn driver [Joerg Hartenberger]
- Added IDE Lock mechanism to the IDE Driver in MAME, so games on gnet
v2 bios are working correct now (idectrl.c / idectrl.h) & taitogn.c
[Joerg Hartenberger]
result, you will need a full recompile with this change, since the
bitmap formats enum was altered.
Introduced new feature -burnin, which can be used to generate a PNG
that represents the overall brightness seen during the course of
running a game. This PNG can be used as a fake "bezel" that overlays
the screen via the artwork systems (with a low alpha, say 0.1 or 0.2)
to simulate running a game with a monitor that has been burned in
from another game.
Fixed the -crsshairpath option to be spelled properly.
philips codes if video is squelched. Updated the Gottlieb
and Cliff Hanger drivers to request it this way, since they
decode externally.
Made a couple of minor tweaks to the Cliff Hanger driver.
Fixed interrupt timing (was not taking into account
interlacing) to fix up glitches in playback and ensure the
disk test passes. Added SHA1 and marked the game as working.
New games marked working:
Cliff Hanger [Aaron Giles, Warren Ondras, Ernesto Corvi]
- Added a new implementation of the I8255A device. Rewritten from scratch to properly support handshaking in modes 1 and 2.
- Refactored sg1000a.c to use the new implementation.
to be working reliably.
Deprecated the ROMREGION_DISPOSE flag, as 98% of the use of it no
longer is applicable with on-the-fly decoding, and the remaining
cases are difficult to identify among the others.
constants to cpuintrf, as those names are really only applicable to
CPUs. Added new ADDRESS_MAP_0/1/2/3 constants to identify address maps
more generically.
Updated memory system to be more general about address map handling.
Added the concept of default address maps (in addition to the already
existing internal memory maps). The difference between internal and
default memory maps is that internal memory maps always override
everything (including user-specified maps), but default memory maps
simply provide a default that can be overridden.
Converted the okim6295 sound driver to use address maps for access.
By default, it defines a ROM address map that overlays its full
region. As a result, the validity checks require all okim6295 regions
to be at least 256k, unless you provide your own address map. Updated
all regions to meet this requirement.
Updated the atarijsa code to use a custom address space for its
okim6295 accesses (which are banked on the first half and static on
the second half), as an example of configuring a device with a
custom address space.
For now, attempts to use okim6295_set_bank_base() will still work,
though banking for the okim chips should be moved to custom address
maps in the drivers eventually. The first time okim6295_set_bank_base()
is called, it will install a banked memory handler over the region
and use memory_set_bankptr() to change the base on subsequent bank
switches.
Moved address map validity checks to be run for each device instead of
just each CPU.
to devintrf (including endianness). Removed space array from the
CPU class header. Made the memory system much more device-neutral.
Various other cleanups along the way.
MDRV macros in the device for specifying address maps. Changed
the memory system to fetch the maps from the new location.
This is just a small step toward the end goal of getting address
maps into arbitrary devices.
The plan is to add the on-chip peripherals on the magicard.c driver then, when I get some consistency, hardwire it to the cpu core.
Please check this modification asap (should be fine, but I haven't compiled with a clean build)
Sent: Monday, June 29, 2009 3:58 AM
To: submit@mamedev.org
Subject: Patch for i86.c to fix an assert
Hello,
attached is a small patch for i86.c that fixes an assert when the
80188 CPU is used.
--Dirk
Fixed internal RAM/internal I/O start-up state, and updated Hit Poker driver to use it like it should.
Taito JC driver seems unaffected by this change.
======================================================================================================
http://mamedev.emulab.it/kale/fast/files/memory_map.png
Added some basic video emulation to Hit Poker, to let it show "9rror / 3hut 5own -achine"
=========================================================================================
http://mamedev.emulab.it/kale/fast/files/0013_1049739007.png
Sent: Tuesday, June 16, 2009 7:09 AM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] Pointerify minx cpu
Hi mamedev,
I noticed that the minx CPU was never pointerified. It's only used by
MESS, which might be why it wasn't noticed.
~aa
Sent: Sunday, June 07, 2009 9:54 AM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] "Regularize" some interfaces in MAME
Hi mamedev,
This patch adjusts the code in a few places to be more regular in it
object approach. It recognizes five idioms.
1. device_configs should be passed const. dsp56k.h took a non-const
device_config for no particular reason, necessitating casting where
used. A few other places cast to non-const, in most cases
unnecessarily.
2. running_machines should be passed non-const. A few places used
const in different ways on running_machines, instead of the idiomatic
non-const running_machine.
3. Eliminate passing running_machine explicitly where it can be
computed. esrip.c, m37710.c, sfbonus.c had cases where the machine
could easily be eliminated.
4. Pass the object machine/config first. In some cases this makes
the interface object oriented, in some cases it simply makes it more
idiomatic with the rest of MAME.
5. Prefer (screen, bitmap, cliprect) to (machine, bitmap, cliprect).
Fully implementing this would be a large patch, this patch simply does
it for the one core 'device', tms9928a.c.
fixes up some header files. In particular, I adjusted const char
*DEVTEMPLATE_SOURCE = __FILE__ to const char DEVTEMPLATE_SOURCE[] =
__FILE__ which makes it actually const and saves a little memory.
[Atari Ace]
set of interfaces supported by a device, and identified by a unique
string identifier. A device may support any number of contracts,
described in a list via the DEVICE_CONTRACT_LIST* macros.
The purpose of contracts is to provide a means for devices to expose
a standard set of interfaces to other parts of the system. For
example, the PCI device should expose a contract that includes
functions for configuration register access, and 32-bit I/O. Then
any device with a PCI interface should implement the PCI contract,
so that the PCI bus device can route things appropriately.
(This change is in anticipation of a proper Namco 06xx interface,
which exposes a contract to all devices it is attached to, but I
am still struggling to get it to work reliably.)
Namco custom IDs where appropriate.
Added clocks to the Namco 06xx in anticipation of improved
device interconnection.
Added new file devtempl.h which can be used to generate the
DEVICE_GET_INFO function. Updated all the Namco I/O devices
to use this.
Updated galaga driver to use computed video timing.
Sent: Monday, May 25, 2009 9:31 PM
To: submit@mamedev.org
Subject: DIFF: vertical.ini & horizont.ini
This simple 4 line change (5 if you count the comment) to mame.c adds the
ability to parse vertical.ini and/or horizont.ini files.
I wanted this functionality so that I could specify different resolution
and artwork options for all vertical games in one shot.
I had a MAMEUI user ask that I submit this code to baseline MAME so that
it could be included in MAMEUI GUI without making changes to the core
codebase.
I chose to shorten "horizontal" to "horizont" to make sure that the
ini file falls within 8.3 filename guidelines.
thanks for your consideration
...
Krick
Sent: Sunday, May 24, 2009 4:11 AM
To: submit@mamedev.org
Subject: Compilation fix for ARM7 core
This fixes the compilation with ARM7_DEBUG_CORE. It was actually
found by Reijo Tomperi from the cppcheck team after I issued a bug
report.
Updated polepos and bosco drivers to use the new 52xx sound
emulation, wiring up the output through the discrete mixer that
Derrick had already plumbed but left disabled.
This required several MB88xx changes/fixes:
- internal timer support now works; prescaler is guessed based
on Pole Position sample playback frequency
- external counter support works
- a basic mechanism for reading serial input has been added; it
is not sufficient for a full implementation, but good enough
to sample the SI pin at startup
- fixed TSTS/TSTV to clear their respective flags
- fixed CI and CYI to compute imm-reg instead of reg-imm
- added masking of the PA register upon RTI/RTS to prevent bogus
PC values
Converted Namco 51xx and 53xx into proper devices. The MB84xx is not
yet emulated, but is now present.
Converted 51xx and 53xx interfaces to use the devcb system for
port I/O callbacks.
Dig Dug is known to be somewhat broken at the moment.
Extended the Namco 60xx and namcoio_init() interfaces to accept
a device name string in addition to an interface struct, until
all the interfaces are replaced with devices.
Added DERIVED_CLOCK() macro which can be used by sub-devices to
derive their clock from the parent device.
Tweaked some of the laserdisc interfaces to use ROM_NAME() and
MACHINE_DRIVER_NAME() macros.
> Here is a small patch for the touchmaster driver
>
> This removes the pulse input on the touchscreen for the touchmaster
> drivers, making centipede returns (tm4k), breakout3k (tm3k),
> wordsearch (tm8k) and possibly other games playable do to the need for
> "dragging" the screen. An example of this is the word search game
> where it is necessary to drag from the start letter to the end to
> highlight the selection, which is not possible with a pulse input.
>
> Best regards
>
> Mike
Sent: Friday, May 15, 2009 9:13 AM
To: submit@mamedev.org
Subject: Unused Variables - second try
This is a new version of the patch, that disables some unused
variables. It fixes some warnings, that came up in an optimized build
and adds a few more things.
To: submit@mamedev.org
Subject: LSHIFT/<< expression diff fix
Tafoid pointed out that it's currently impossible to use '<<' in a
cheat xml file, this fix adds an alternate LSHIFT to cheat.c and
express.c and also adds the working '>>' as an alternate RSHIFT to
express.c (not needed in cheat.c as >> parses fine)
diff file attached
Sent: Sunday, May 10, 2009 5:41 PM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] Static qualifier update
Hi mamedev,
Here's my periodic static qualifier patch for MAME, mostly adding
static to new code introduced over the past couple of months.
~aa
Sent: Sunday, May 10, 2009 1:28 AM
To: submit@mamedev.org
Subject: Save state for artmagic.c and runaway.c
I have added the save state to artmagic.c and runaway.c
Xander
> To: submit@mamedev.org
> CC: atariace@hotmail.com
> Subject: [patch] Search all rom sources for merges
> Date: Sat, 18 Apr 2009 20:32:15 -0700
>
> Hi mamedev,
>
> The logic for detecting merged roms does not check all the rom sources
> in the parent, leading to cases where roms from devices aren't
> detected as merged (e.g. ldv1000 in superdqs). This fixes it.
>
> ~aa
* jb int0,<self> loops are now broken out of if int0 comes and is taken
* externally-clocked counters only count when enabled
System 1 changes:
* hooked up 8751 properly
* removed old 8751 hacks
* shuffled Shooting Master sets
New Games Marked Working
------------------------
Choplifter (8751 315-5151)
Shooting Master (EVG, 8751 315-5159a)