Commit Graph

2011 Commits

Author SHA1 Message Date
Aaron Giles
6b159dfd11 From: Sandro Ronco [mailto:sandro.ronco@alice.it]
Sent: Wednesday, August 26, 2009 5:57 AM
To: submit@mamedev.org
Subject: MAME cheat search engine

This is a diff of my cheat search engine with help of Pugsy.  
This is only a first part, not has the same functions of the old search engine, but is better than nothing

I have update the search engine to support search of byte, word, dword
and qword signed and unsigned.
2009-09-03 08:54:11 +00:00
Ryan Holtz
a9a3f05218 SuperFX updates: [Harmony]
- Inlined a number of functions for possible speed increase
- Removed some memory buffering cruft, to be re-added later
- Fixed behavior of ASR opcode
- With additional MESS-side changes, Stunt Race FX is playable, and Vortex shows much more.
2009-09-02 23:28:18 +00:00
Couriersud
cbb4decb5d Added some profiling code for discrete tasks 2009-09-02 22:08:25 +00:00
Couriersud
8859b12881 Fix some ugly bugs around DISCRETE_FILTER_SW
- No more iterations
- The CD4066 internal resistance largely determines sound amplitude. This may vary significantly depending on VCC and type (74HC, 74HCV, CD4066, ...). The current choice makes scramble sound "about right".
2009-09-02 21:41:22 +00:00
Roberto Zandona
27583b2e86 different TOD implementation for CIA6526 and CIA8520 2009-09-01 20:27:10 +00:00
Ryan Holtz
64b84113e9 SuperFX fixes: [Anonymous]
- At least partly fixed PLOT and RPIX behavior.  This fixes many gfxs in Star Fox and Vortex, but no polys yet.
2009-08-31 02:53:53 +00:00
Ryan Holtz
8b572ae6f8 SuperFX updates [Anonymous]
- Fixed disassembly of LMULT/FMULT ops
- Fixed reads using LDW/LDB
- Fixed writes using STW/STB
- Fixed SBC carry behavior
- Fixed GETC ROM access behavior
- Some SuperFX games begin to show things in MESS
2009-08-30 22:20:17 +00:00
Quench
e77505b9a2 Fixes to the PIC16C5x CPU core:
- Indirect addressing was not taking into account special purpose memory mapped locations.
 - 'iorlw' instruction was saving the result to memory instead of the W register.                               
 - 'tris' instruction no longer modifies Port-C on PIC models that do not have Port-C implemented.


Also added difficulty DIP to BigTwin
2009-08-30 14:16:50 +00:00
Michaël Banaan Ananas
4f4af5ca30 > Shouldn't you also add a return statement?
yes, but it doesn't matter: ifs/cases afterwards would be FALSE anyway
2009-08-30 11:25:29 +00:00
Michaël Banaan Ananas
4bb09d5632 fixed i386 carry/borrow flag in ADC/SBB [Gabriele Gorla]
> -----Original Message-----
> From: Gabriele Gorla [mailto:gorlik@penguintown.net]
> Sent: Saturday, August 29, 2009 5:39 AM
> To: submit@mamedev.org
> Cc: Gabriele Gorla
> Subject: Re: i386: fix carry/borrow flag in ADC/SBB
>
> > the original code implements ADC and SBB as 2 consecutive ADDs.
> > This will not produce the correct result when the carry is generated
> by
> > the first addition as it is overwritten by the second operation.
>
> updated patch, fixes a typo.
2009-08-30 11:19:07 +00:00
Couriersud
cd7f82349c 03025: bzone, bzone2, bzonec: inaccurate sound effects
- Fixes two bugs in DISCRETE_RCDISC3
- motor sound now gradually increasing
2009-08-30 11:03:10 +00:00
Aaron Giles
4a80c53a8d [from AtariAce]
Hi mamedev,

This patch continues deglobalifying the MAME core, this time targeting
sound.c.  The first two patches adds running_machine to apis in
sound.h that lack it (the first patch is generated by the perl script,
the second patch fixes some cases it didn't handle well).  The last
patch then removes the globals in the traditional way.

~aa
2009-08-30 05:42:33 +00:00
Aaron Giles
81d248c448 MSVC compile fixes. 2009-08-30 02:04:21 +00:00
Couriersud
03fefdfb6b - Fix comments for DISCRETE_TRANSFORM
- FatalError if formula is bad
2009-08-30 00:04:36 +00:00
Aaron Giles
5df39c5473 Cleanups and version bump. 2009-08-29 23:18:28 +00:00
Couriersud
304cd58528 Discrete tasks now support multiple task output nodes
- See galaxian for example
2009-08-29 22:27:45 +00:00
Aaron Giles
1173ae9493 Fixed dependencies for the 57002dasm 2009-08-29 21:54:42 +00:00
Couriersud
1955450c39 discrete sound system
- use DISCRETE_INPUT(_num) instead of (*(node->input[_num]))
2009-08-29 19:40:02 +00:00
Couriersud
68d94c232d discrete sound system
- some more "list-ification"
- No more constraints on number of input and output nodes
- input nodes now make use of a context

Some of these changes are needed to introduce "internally buffered" input nodes going forward. These will use an internal stream to buffer all inputs so that stream_update will always calculate 20ms of samples.
2009-08-29 18:30:19 +00:00
Ryan Holtz
23dd52a582 SuperFX changes: [Anonymous]
- Fixed overflow flag calculation on ADDI / ADCI
- Fixed lack of register reset after ADD / ADC / ADDI / ADCI
2009-08-29 10:00:14 +00:00
Ryan Holtz
0915000ffa SuperFX updates: [Anonymous]
- Disabled RAM/ROM clocking, going with instant transfer for now
- Understood and re-enabled pipelined instruction architecture, Star Fox runs farther
- Fixed a ridiculous typo in ROL instruction
2009-08-29 04:28:36 +00:00
Ryan Holtz
25d5307394 SuperFX core updates: [Anonymous]
- Corrected carry flag behavior in ROL opcode
- Corrected BRA target address calculation (maybe still wrong)
- Corrected LOOP target address calculation
- Made sure that FROM sets cpustate->sreg_idx
2009-08-27 04:47:58 +00:00
Ryan Holtz
67fc4827bb Multiple SuperFX updates: [Anonymous]
- Added LSR and ROL opcodes
- Updated instructions to use the safer superfx_gpr_write: LOOP, PLOT, INC, DEC
- Added missing register writeback to LMS
2009-08-27 01:59:38 +00:00
Michaël Banaan Ananas
9fc4b3b203 on behalf of couriersud 2009-08-26 10:48:03 +00:00
Ryan Holtz
4e3a2c0e17 Argonaut SuperFX core: [Anonymous]
- Improved disassembler to more gracefully handle ALT* opcode effects.
- Corrected instruction behaviors: STOP, SUB, SBC, SUBI, CMP
2009-08-26 06:29:36 +00:00
Couriersud
dd836ed4d5 Discrete sound parallel tasks
Introduced DISCRETE_TASK_START, DISCRETE_TASK_END

DISCRETE_TASK_START
- Start a new task. A task is a set of nodes which only depend on input nodes and nodes in the set

DISCRETE_TASK_END(task_output_node)
- Marks the end of the task. task_output_node is the node whose output over time should be preserved. This node can be accessed by nodes in the main thread.

Order of execution:
a) All tasks in parallel
b) All nodes not part of a task. These may only refer to nodes listed in DISCRETE_TASK_END

Illustrated the concept in the dkong discrete emulation. This also has been enhanced to buffer DAC output. 

Further changes:
- DISCRETE_OUTPUT now is a stepping node.
- DISCRETE_STREAM_INPUT now advances input pointer in step.
- More linked_list usage.

I estimate that the rework without tasks leads to a 5% performance gain. For dkong, the usage of tasks adds another 15%.
There are some features missing:
- Multiple nodes in DISCRETE_TASK_END
- More task consistency checks
- Task identifiers for tasks
2009-08-25 23:29:31 +00:00
Michaël Banaan Ananas
7e2794ad21 Fixed IM2 interrupt cycles [eke]
http://www.mameworld.info/ubbthreads/showthreaded.php?Cat=&Number=199853&page=0&view=expanded&sb=5&o=&fpart=1&vc=1
I don't know this z80 emulator well enough to look into his first two points. Juergen?

1/ In the cc_xy[] table which lists instructions with DD or FD prefixes, "illegal" combos are returning 4 cycles when they should return 4 + cc_op (the normal instruction being executed). Another way to handle this correctly is to call EXEC(z80,fd,xx) or EXEC(z80,dd,xx) instead of op_xx(z80) when such pair of opcode is detected, to be sure the correct amount of cycles is used.

2/ According to Sean Young, R register is NOT incremented when chaining multiple DD or FD prefixes: [...]

This one was already fixed, dunno when:
2/ In the cc_ed[] table, INI (ED A2) and IND (ED AA) should return 16 cycles, like other instructions from this group, not 12. This seems to be a typo error.
2009-08-24 11:57:26 +00:00
Michaël Banaan Ananas
c269fb3d32 (small cleanup) 2009-08-24 11:12:55 +00:00
Michaël Banaan Ananas
164b4e4261 fix NULL timers crash 2009-08-24 10:49:12 +00:00
Ryan Holtz
89d4356142 Improved some aspects of SuperFX emulation, Star Fox now executes SuperFX code, but does not stop. [Anonymous] 2009-08-24 01:57:02 +00:00
Couriersud
c2f7c33479 discrete.c: fixed a state saving bug 2009-08-23 19:11:39 +00:00
Couriersud
20caff1c3b Discrete work - this one needs a full recompile
- change the way custom modules are handled
- updated drivers mario and dkong accordingly
- minor change to stream input handling
- no more linear lists for nodes. All node processing switched to linked lists.
- module step and reset now only get a node pointer passed
- Added discrete_info * pointer to node
- Only nodes with a step routine actually get processed.
- Fixed a bug: discrete logs did not work since some time
- preliminary parallel task constants; depending on results these may vanish again.
- Overall slight performance increase. dkong 940% to 960%, galaxian 740% to 790%
2009-08-23 19:04:41 +00:00
Ryan Holtz
eb25141647 Fixed a handful of SuperFX core bugs. Star Fox begins to run code. [Anonymous]
Over to you, Kale...
2009-08-23 15:19:30 +00:00
Ryan Holtz
2618dfaabc Hooked up Branch instructions in the Argonaut SuperFX core. [Anonymous] 2009-08-23 08:23:09 +00:00
Ryan Holtz
a820e450c3 Fixes the build. 2009-08-23 08:10:51 +00:00
Ryan Holtz
76a4664cb9 Implemented basic Argonaut SuperFX support, needs to be hooked to the SNES driver. [Anonymous] 2009-08-23 08:06:50 +00:00
Olivier Galibert
26dee2df8e Fix the i386 disassembler duplication. 2009-08-22 19:55:33 +00:00
Roberto Fresca
267d560d67 Added a POKER_BET general input definition.
This is needed to mantain the standard inputs layout in the poker games.
You'll need a clean compile after this addition.
2009-08-22 16:57:12 +00:00
Aaron Giles
f474114e1d Added infrastructure to compile universal standalone disassembler:
- added unidasm to the tools build
 - split the disassemblers out of libcpu and into new libdasm
 - ensured the disassembly entry points for all disassemblers are
    in the source file for the disassembler (sometimes new generic
    versions were created)

Still needs command line options and file loading, but the 
fundamentals are present, and it links.
2009-08-22 06:25:07 +00:00
Nathan Woods
80f0e5be81 Sync with MESS 2009-08-21 22:30:58 +00:00
Couriersud
0978f15208 Battle Zone discrete sound & discrete sound additions
- added discrete sound to battle zone
- engine frequency (resistor R11) can be changed with slider
- discrete sound may be disabled by setting BZONE_DISCRETE to 0 in bzone.h

DISCRETE_RCDISC3
- added diode junction voltage 
- junction voltage also indicates polarity

DISCRETE_OPAMP_FILTER
- added type DISC_OP_AMP_FILTER_IS_LOW_PASS_1M
- INP2 takes role of v_ref in this type

DISCRETE_OPAMP
- Fixed a bug (possible divide by 0)

DISCRETE_LFSR
- Fixed bug preventing output of shift reg to sub node 1
2009-08-21 20:55:04 +00:00
Curt Coder
fb98a61886 Added helper macros for input lines tied to GND/Vcc. 2009-08-21 13:05:08 +00:00
Curt Coder
b2dcbb3b68 Intel 8085:
- refactored callbacks to use devcb
- added 8080A variant
2009-08-21 08:19:17 +00:00
Aaron Giles
ac3d58fad5 Cleanups and version bump. 2009-08-21 01:52:51 +00:00
Aaron Giles
0ca9cd3553 > Here a MAME patch to implement transparent mode access for some 6845
> model sy6845.
> I tested it under my MESS z80ne driver.
> I don't know any other system using transparent access mode.
> 
> src/emu/video/mc6845.c
> 
> 
> Best Regards
> Roberto Lavarone
2009-08-21 01:21:33 +00:00
Wilbert Pol
dd46ee883a Added support TMS1000 family models TMS1000/1070/1100/1200/1270/1300.
Added support for configuration of output PLA to the tms0980/tms1000 interface.
2009-08-20 19:15:30 +00:00
R. Belmont
6106e6bae4 mcs51: fix GCC 64-bit warning 2009-08-19 20:48:21 +00:00
Aaron Giles
4176a014ac From Pugsy:
> 
> Currently MESS supports single system cheat xmls
> 
> eg ALL cheats for any SNES game must be in snes.xml, this means that
> there will be a lot of cheats
> that are not applicable to the  game being played.
> 
> This change reverts MESS to a close approximation of how it used to
> handle cheats. It will get the
> crc32 of the image and load only the appropriate cheats to go with that
> image/game by loading
> crc32.xml (eg. DEADBEEF.xml).
> 
> 
> These changes are within  ifdef MESS structures so should have no
> affect on MAME, and my testing has
> not encountered any problems.
> 
> Diff File attached
2009-08-19 16:45:49 +00:00
Aaron Giles
c3b50fe048 Changed profiler to separate start/stop cases. [Christophe Jaillet] 2009-08-19 16:43:04 +00:00
Aaron Giles
8b4d1c84b5 Fixed MSVC 64-bit compile errors.
Added rgb[a]int_sh[l|r] operations to the rgbutils. rgbvmx needs to be updated.
(Nobody is using them yet.)
2009-08-19 16:32:11 +00:00