this fix priorities in quizf1, riskchal amd maybe more m90 games
thanks to Corrado Tomaselli for testing my trojan in a bombrman PCB
more info at http://www.emulab.it/robiza/
Subject: [patch] Remove more Machine globals, #include "deprecat.h"
Hi mamedev,
The attached patch goes through and converts a number of Machine
globals to machine locals, and then removes #include "deprecat.h" if
appropriate. The script that generated it is included, since the
patch itself is rather large and would have been time consuming to
produce otherwise.
The script doesn't convert cases of Machine that aren't in common
macros. I'll try to tackle those later if someone doesn't beat me to
it.
~aa
Subject: [patch] Eliminate assignments in conditionals
Hi mamedev,
Assignments in conditionals are never really needed in C and are
occasionally just plain bugs (== gets typed as =). As such, it would
be good to remove these from MAME so that compilers that warn on this
construct can flag the likely bugs (MSVC does this for example). The
attached patch does just that. In addition, it refactors some
repeated code which had this in taito_f3.c into a couple macros. Using
inline functions would unfortunately have required more significant
changes, perhaps I'll tackle that another day.
~aa
01740: carnival, headon, heiankyo, pulsar, samurai, tranqgun : Is not possible to insert any coin
01721: sspaceat, sspacat2, sspacat3, sspacatc : Problems with inserting coins
01710: spacetrk, sptrekct: Cannot insert coins in both sets
* change DC offset for AY-3-8910 to 0.2V
* tones are now distinguishable again
galaxian.c:
* adjust "konami" sound volume
gyruss.c:
* adjust sound volume
* adds a model to calculate mixing of channels with different resistance loads.
* based on above, each channel may be assigned a different load in individual case
i.e. channels not tied together
* rewrote ay8910.c to make emulation simpler
* changed the config structure to include a flag field and output resistor loads.
* Updated all drivers affected.
* Added some "Todos" related to stuff I discovered when reading datasheets.
* Fixed a bug in disc_flt.c (konami filters)
galaxian.c:
* Fixed discrete sound and konami filter addressing
* Changed addressing of AY-3-8910 to be in line with schematics
gyruss.c:
* Added discrete sound for filtering ("konami"-style) and mixing.
Hello Aaron,
I have found few more things not ok in T11, this time I have fixed it myself.
1. HALT - should call interrupt vector
2. ILLEGAL - had PC=0 at the end which makes code not run fine
3. MARK - now it is implemented
Can you please check if your drivers are working fine with these cahanges.
After adjustments I have some things working finaly.
Please inform me,
Miodrag Milanovic
Subject: [patch] Fix 01711: connect4, mpu4met0, mpu4tst2, mpu4utst, bctvidbs: Using -CHEAT trigger causes a crash
Hi mamedev,
This patch fixes bug 01711. Given the location of the original assert
it is clear the original code wasn't quite right.
~aa
Subject: [patch] Fix 00149: No error report for invalid BIOS setting.
Hi mamedev,
This small patch makes specifying an invalid bios a fatalerror and
removes the need to expose system_bios to the drivers by reworking the
code in playch10.c to determine its bios more directly (in other
words, it removes an ugly hack). This should resolve bug 00149,
although I did not implement the popmessage as suggested.
~aa
Subject: [patch] Fix 01588 timecrsa, timecris: MAME simply quits after
pressing F3 in both sets, game cannot be runned
Hi mamedev,
This small patch fixes the crash in bug 01588 and seems to allow the
game to start in most cases. In some cases in my testing the board
failed startup tests, but that appears to be unrelated.
~aa
Attached is diff which makes Touchmaster games playable.
General changes:
- Added preliminary 68681 DUART (machine\68681.c)
- Moved Microtouch touch screen controller emulation to separate module (machine\microtch.c)
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Touchmaster [Mariusz Wojcieszek]
Touchmaster 3000 [Mariusz Wojcieszek]
Touchmaster 4000 [Mariusz Wojcieszek]
Touchmaster 5000 [Mariusz Wojcieszek]
Touchmaster 7000 [Mariusz Wojcieszek]
Subject: Rygar third set dump
I named this dump as set 2 since it's the bugfix version like set 1. Set
3 was renamed old version because it has some bad bugs.
I haven't seen any visible differences, it would be interesting to see
what has changed in the program and if it's a newer revision than the
set 1 in mame...
New clones added:
Rygar (US set 3 Old Version)
that forcibly kills the application after a certain number of seconds.
Primarily intended to be used in regression test runs to handle the
occasional hung game.
- iqblocka: bypassed the protection, emulated the video hardware, inputs and sound.
- tjsb: it now boots and has partially decrypted graphics.
[Luca Elia]
Funworld updates:
- Removed the temporary hack to jolyc980.
- Updated technical notes regarding Magic Card II & Jolly Card Professional 2.0.
- Moved snookr10 to its own driver.
- Minor clean-up.
New games marked as GAME_NOT_WORKING
------------------------------------
Apple 10 (Ver 1.21) [Roberto Fresca]
Ten Balls (Ver 1.05) [Roberto Fresca]
there are some issues, the unused palette bits are significant as the colours are wrong at the moment, also maybe it should be joystick, not spinner etc.. It's an ugly Korean hack game ;-)
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Jumping Pop (NICs, Korean bootleg of Plump Pop) [Robin Cooper, David Haywood]
increased Varth CPU clock to 12MHz to reduce slowdowns (the game was released after sf2ce so the faster A-board was available).
verified more gfx rom mappings against PAL dumps (thanks to Corrado Tomaselli).
verified memory maps using A-board PAL dumps (thanks to Charles McDonald).
separated the address ranges for CPS-A and CPS-B customs. This finally clarifies why some registers are fixed and some change with every game.
identified three new unknown registers in the CPS-B-21 custom. Their purpose is unknown.
all unhandled accesses to CPS-A/CPS-B registers will now be reported. There shouldn't be any left. Look out for "contact MAMDEV" popups.
cleaned memory maps. Moved forgotten worlds special input mmeory handlers to DRIVER_INIT.
moved extra input handlers to video/cps1.c since the extra connectors are on the C-board.
added sound to Final Crash.
direct byte, word, dword, and qword accessors for all bus sizes,
there are now masked word, dword, and qword accessors for all
bus sizes.
IMPORTANT: masks that are passed to the _masked_* functions are
NOT inverted. Although inverted masks are still passed to callback
functions, when you request a masked read or write the masks should
represent the bits you want.
Updated the various MIPS cores that use these functions to invert
their masks.
Added support in the T-11 core for an external vector via irq_callback.
Apparently the hardware actually did support this and it is necessary
for emulating the BK 0010/11 computer in MESS.
range to be RAM-like for reads but calls the given handler for writes.
Replaced AM_READWRITE(SMH_RAM, handler) with AM_RAM_WRITE(handler).
Also replaced AM_RAM AM_WRITE(handler) with AM_RAM_WRITE(handler).
accordingly.
Added new functions for dynamically installing device memory
read/write handlers.
Updated install_memory_XXX_handler() functions to take a machine
parameter. Updated all drivers accordingly.
Merged installation of read and write handlers where appropriate.
Simplified memory.c code for dynamic installation so that a single
function handles all the work; a NULL read or write handler
indicates not to install anything for reads or writes.
Batsugun does upload what looks to be the entire program, unencrypted. If enabled it runs to the point of waiting for interrupts, however, for those it looks like it needs a real V25 core with register banks etc.
The other games using the V25 (Dogyuun, Fix Eight, VFive/GrindStormer) only upload a 'stub' program and are encrypted, maybe they upload the rest later? Knuckle Bash is ROM based V25 (and encrypted). Charles is working on decrypting them anyway, but core updates would be handy.
New games marked as GAME_NOT_WORKING
------------------------------------
Nandemo Seal Iinkai [Luca Elia]
P.S.
missing from the 0.124u1 whatsnew:
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Show Hand [Luca Elia]
memory maps. To do so, you either need to specify a shift amount
(mapping to a particular subset of the bus) or SHIFT_PACKED, which
maps a single larger sized read/write down to multiple reads or
writes at the smaller size.
Removed word-sized handlers from 6821pia.c. Updated drivers that
needed them to use these new interfaces instead.
Updated gaelco3d.c and itech8.c to remove the need for memconv.h
by using this new feature.
Re-removed input_port_set_digital_value().
src/emu/cpu/m68000/m68kmame.c:
src/emu/cpu/minx/minx.c:
- Fixed compilation errors on CPU cores not enabled in MAME
src/emu/inptport.c:
src/emu/inptport.h:
- Readded input_port_set_digital_value() (which is needed for natural
keyboard inpout in MESS)
- Added a running_machine parameter to inputx_update()
Subject: xml_normalize_string() bogusly escapes UTF-8
Various parts of MAME have recently been changed to support UTF-8
strings, so I thought I'd test out using a UTF-8 driver name for the
Sam Coupe driver in MESS, just to see if anything breaks. Most things
do seem to work well - the name is correctly drawn in the UI etc. One
thing that doesn't work properly is the output from -listxml: "Sam
Coupe" becomes "Sam Coupé" - each UTF-8 byte is
individually escaped, resulting in two gibberish characters instead of
the correct character.
The culprit here is xml_normalize_string() in src/lib/util/xmlfile.c -
the code converts any high-bit byte to an XML escape, which is totally
bogus for any encoding but ISO-8859-1 because XML escapes are defined
as Unicode codepoints regardless of the document encoding.
Fortunately, this is very simple to fix - in fact, it is sufficient
just to remove the escaping code and pass through the UTF-8 bytes
directly, because UTF-8 is mandated as the default encoding in the XML
standard.[1] The attached patch does this.
This should be a pretty safe change since as far as I can tell nothing
in MAME or MESS currently triggers this code (that is, the string "&#"
does not occur in the -listxml output of either). One potentially
negative effect is that the ASCII controls which are illegal in XML
(0x00-0x19 excepting line breaks and tabs) would no longer be escaped.
However, I can't imagine why you would want any in a string destined
for -listxml, so IMO that would be a problem elsewhere in the code and
having XML parsers barf on it would be desirable.
-Justin Kerk
* save state support for FD1094 chips
* improved graphics in athena
* improved sound balance in armedf
* derived refresh rate for toaplan1 games
* improved sound balance in tmnt games
* derived clocks for suprridr
* tweaked xmen visible area
* derived clocks and refresh rate in twin16 driver
I cleaned up the Machine usage in the osd/windows files and added the
running_machine parameter where possible.
I didn't add it to osd_wait_for_debugger() yet, but I would make
sense to have it.
Subject: change for cpunum_set_irq_callback() callback function
This patch adds the running_machine* parameter to the function passed
into cpunum_set_irq_callback() and adds the IRQ_CALLBACK macro for
the callback function.
Subject: Update for "Euro League (bootleg)"
Hello,
some tiny updates for the driver wc90b.c :
-Added dumps for all GALs on the PCB
-Removed the second YM2203, it isn't present on the bootleg boards
-Changed the clocks according to the oscilators found on the board,
the previous speeds were measured on a goal92 PCB, not using a real "Euro League" PCB.
-Added a new osc to xtal.h
If you need any info about this update, please mail me.
Regards: ClawGrip (Tomas Garcia-Meras)
--
Also merged memory maps [Aaron Giles]
only remaining form is the one that takes a pointer parameter.
Added macros for STATE_PRESAVE and STATE_POSTLOAD to define common
functions. Added machine parameter to these functions.
Updated all drivers and CPU/sound cores to use the new macros
and consolidate on the single function type. As a result pushed
the machine parameter through a few initialization stacks.
Removed unnecessary postload callbacks which only marked all tiles
dirty, since this is done automatically by the tilemap engine.
Subject: bugfix to 1673 on MT
Enclosed please find a patch which fixes bug 1673 in MT. in 123u4 a few
machine parameter where added to the routines drawing bg and fg, but all
of them where moved to use the _fg function. putting _bg where they were
in 123u3 fixes the bug