removed snkwave since it doesn't seem to be used and might not be present on the pcb at all
general driver cleanup, bringing it in line with snk.c but not merging it since somthing doesn't quite fit
New clones added
----------------
The Great Ragtime Show (Japan v1.3, 92.11.26) [Stefan Lindberg]
Renamed the roms for the Japanese v1.5 from kh_0x-1 to kh_0x-2 like the other v1.5 sets. This new earlier version is the "true" kh_0x-1
Slight update to info... the PAL "VF-00" wasn't mentioned. PCB picture is at http://arcade.ym2149.com/
This rom set is not working. Bad dump??? Slightly different encryption??? Emulation issue???
Subject: Update to MC146818 RTC
Hi,
Here's a small patch to the MC146818 code, which gives a basic
implementation of the "update ended" interrupt flag.
The code is based on the behaviour of the Aleste 520EX (Russian Amstrad
CPC clone) BIOS, which periodically (about 7 or 8 times a second) checks
the flag to see if the date and time display on the BIOS setup screen
needs to be updated. Without the flag implemented, the date and time
are static on the setup screen, or if the time hasn't been initialised
(blank NVRAM) it is blank.
The BIOS function that does this basically checks bit 4 of register
0x0c, and if 0, ends there, otherwise it will read register 0x0b, sets
bit 7 of the result and writes it back to register 0x0b (presumably,
this resets the interrupt flags). Then it continues on to the display
refresh function.
(Disassembly attached)
Subject: a few patches
Hi,
enclosed please find a few patches that finally conclude my
input_port cleanups. I will still probably change some bit
here and there, but there will be no more massive changes
which could collide with current developments.
Notice that, after applying these patches, indexed input reads
remain only present in CPU interfaces (e.g. all the yamaha
interfaces when the sound cpu is used to read inputs) and no
more 16bit/32bit indexed read are present at all in MAME or
MESS source. Therefore, you may consider the removal of
input_port_N_word_r & input_port_N_dword_r, if you think you
don't need them anymore.
More in detail:
* patch01.diff & patch02.diff: conclude the cleanup for
drivers W -> Z
* primrage.diff: changes the start buttons with input buttons
in primrage, as per the test mode (no start button is reported)
and the control panel (see
http://www.mameworld.info/ubbthreads/showthreaded.php?Cat=&Number=161107 )
* drivedge.diff: makes drivedge ports fully 32bit and removes
the protection bit (which seems not to be used in this game, or
at least not in the port where it was tested since at least MAME
0.100)
* duplicate.diff: introduces a PORT_CUSTOM which returns a tagged
input (like a input_port_read). this could be useful for those
games which require to read the same 8bit (resp. 16bit) input in
both the upper and lower half of a 16bit (resp. 32bit) port. you
can see its use for this purpose in the modified drivers (fuukifg3,
dreamwld, cojag etc.)
Regards,
Fabio Priuli
fixed palette decoding of early SNK games (from marvins to athena + fitegolf). The least significan bits were assigned incorrectly.
merged marvins.c into snk.c, with all resulting fixes (removed hacks, correct shadows, scroll offsets etc)
This contains three different patches:
20080829.patch
Introducing the running_machine* parameter in a few more places. Next
step would be to make the execute_* function aware of it, if that's
OK. Also used the machine parameter in memory.c were it's available.
20080829_1.patch
The already discussed and probably being rejected removal of
dreprecat.h from debugger.h. I think this is a low-risk patch (we had
worse cleanups) and it lowers the risk of new code using deprecated
function beign introduced in MAME/MESS, because there is no invisible
inclusion of deprecat.h anymore (I think one driver - kofball.c - got
it with deprecated code).
20080829_2.patch
The last Machine -> machine conversion I had sitting in my local
tree. I know the proper way is to turn them into devices, but I still
haven't looked into that.
Each player now gets its own source file, along with new hooks
which enable more precise control over the behavior. Updated the
PR-8210 and LD-V1000 implementations to the new spec. Other
players will come online shortly.
Changed scan behavior so that it requires a constant stream of
signals to continue scanning. Updated ldplayer accordingly.
- Added irqs ack
- Implemented raster irq
- Fixed coin2 and service input not working during the game
- Added watchdog
- Fixed visible area
- Added video enable and irqs enable flags
renamed ikaria to ikarinc (for Ikari No Continues)
ikari is the JAMMA board, with conitnues
ikaria is the non-JAMMA board, with continues
ikarinc is the non-JAMMA board, without continues
New clones added
----------------
Ikari Warriors (US) [Nicola Salmoria]
Since I touch up a couple of things and test each driver after the automated merge, it still takes a few minutes for each file. More IO_MAP merges will trickle in over the next few days.
It's likely not worth writing every driver in the whatsnew.txt, since there will be ~100.
- Added Magic Joker.
- Fixed the 3rd background offset to Galaxi.
- Remapped inputs to match the standard poker games.
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Magic Joker (v1.25.10.2000) [Roberto Fresca]
* Adds MCS48_INTERNAL_ROMBANK define to header
* Drivers which need to control the ea line have to initialize banking for internal/external rom
This is not yet optimal but works as expected with existing drivers and modified mario.c
(not worth putting in whatsnew)
Please note, this does touch mario.c and dkong.c (two drivers which are currently undergoing modifications), but it does so unobtrusively. I also asked the proper parties before committing.
All games are tested and working after this patch.
* MB8884 is a I8035 ==> 12 addr, no internal rom map
* EA line high: external access - this is "default"
The whole EA implementation is as Aaron named it, cheeky. EA=1 external rom access, EA=0 internal rom access.
But all variants are treated the same, i.e. for i8035, MB8884, I8039, the external rom is used in the same
way as the internal.
These ports are actually ports which sink current on logical 0. With a logical 1, they are in high impedance mode and may be read. The high impedance is treated as logical 1 by TTL gates connected to them.
Fixed bug in my recent DISCRETE_MIXER update.
Note: the DISCRETE_MIXER bug caused most of the speed increase of its optimization and caused some games to crash. Donkey Kong is now at 14% faster on my machine then when I started. Better then nothing.
For those keeping score dkong was at 268% on my computer before I started optimizing. It now runs at 342%. The 555 and mixer changes also speed up just about every current discrete game.
- Added Magic's 10 version 16.15
- Remapped all inputs to match other poker games.
- Added a missing input to Magic's 10 games.
New clones added
----------------
Magic's 10 (ver. 16.15) [Roberto Fresca]
Subject: few more patches
Hi,
enclosed please find a few patches:
TV_1.diff -> TV_4.diff: clean up of input ports for drivers starting with T,U,V
eeprom.diff: some remaining eeprom_bit_r made CUSTOM_PORT
stv_fix.diff: a small missing bit in my previous stv fix for bug 650. this patch assumes the previous has been applied and removes duplication of button 4 also from batmanfr (somehow I think I sent an outdated version of stv.diff previously)
That's all folks
Regards,
Fabio
Sent: Monday, August 25, 2008 8:16 AM
Subject: [patch] Remove useless backslashes
Hi mamedev,
I've been using pmd 4.2.2 to analyze the MAME codebase for duplicate
code, and it's C parser complains about useless backslashes and
dangling defines in #if...#endif sections. Here's a patch that fixes
this, and additionally fixes one real bug, a string in djmain.c was
malformed, it's curious it compiled.
~aa
Sent: Monday, August 25, 2008 1:45 AM
To: submit@mamedev.org
Subject: Stepper motor changes
Updated stepper motor code to use a MAME-style config interface, rather
than a load of setting functions. Changed optic functions to use clearly
defined start and end points. Added standard layout for Starpoint units
used in many machines. Updated all affected drivers.
PS. At one point, I was led to believe that the UPD sound chip would
have
support for its messaging pins added, is this still pending (I have Phil
B's old source here if it's needed). Such support would prove very
useful
for AGEMAME as many of the drivers in that that use that chip rely on it
for timing.
Subject: another small revised patch
After Fujix's new findings, I realized that the coinage settings
for ckongg were still not completely correct after my previous
patch galaxold.diff. The attached new patch (diff'ed from clean 0.127)
fixes the Coinage dips at last. Sorry for the possible confusion.
Regards,
Fabio
Subject: more patches
Hi,
enclosed please find the following patches:
spaceinv.diff : this is an important patch. Please revert (if applied)
my previous fix to bugs 2143 & 2144. It was wrong. This is the correct
fix for those two bugs and many other issues not reported on MT (e.g.
spaceatt, spaceat2 not starting because tilted, missing dips in many
invaders clones etc). Basically, in 8080bw.c all the "DSW0" input ports
should have been "IN2" for invaders_map to work correctly, and no
additional "IN2" is necessary. After this fix, you may want to change
all the "IN2" occurrences 8080bw.c and in mw8080bw.c with "DSW" since
they mostly are dips. But the latter is a cosmetic change, so it's up
to you decide if it's worth or not (the patch leaves "IN2").
avgdvg.diff : this correctly fixes avgdvg_done usage without using a
parameter, but using IPT_ACTIVE_LOW where needed (I'm a bit ashamed
because I should have thought to that since the beginning).
galaxold.diff : this changes ckongg coinage inputs to fix bug 2154.
Notice anyway that coinage settings in dips do not correspond to the
numbers which appear on screen. This is probably due to the conversion
to galaxian hardware (e.g. it's shown the value of coin2, but in ckongg
there is no coin2 at all, so the appearance of the coin 2 value has no
meaning). Notice also that an unused dips sets the possibility to play
in 2 or not. I defaulted this to 1 player because setting "2 players"
automatically gives 2/4 credits with a single coin, which I don't think
it was the default back then ;)
However, perhaps ckongg is worth further analysis when it will be
updated to the new galaxian driver.
stv.diff : this patch fixes the longstanding bug 650 (duplicated P1
button 4). After testing all sets which reach the test mode, I found
out that only batmanfr uses the button4 in port "P1", while all other
games with more than 3 buttons use the one in "EXTRA". Therefore I made
the "P1" 4th buttons a specific batmanfr input.
patch01.diff, patch02.diff, sys1.diff : these patches simplifies input
ports in the remaining driver starting with S (plus a few small changes
to other drivers I forgot previously), using PORT_INCLUDE, AM_READ_PORT
& converting 'fake' 8bit ports to full 16/32bit ports where suitable
Let me know if something fails to apply, or if there is any other problem
Subject: Profiler related #2 (v2)
Hi, this a revised version of a patch I sent yesterday.
This one is much more cleaner, and the speed improvement is now significant
enough to come out of the profiling noise.
More over, this one compiles correctly... ;-)
Best regards,
Christophe Jaillet
Shares the memory with the c75.
Renames the c75 region to c7x from user4.
Implements the c75 reset/halt control.
Implements the irqs more correctly.
[From OG]
Subject: fix for MT 2135
This bug dates back to the introduction of the world parent set of rtype.
Finally spotted and (easily) fixed in the attached patch.
Regards,
Fabio