bsnes/higan/processor
Tim Allen d91f3999cc Update to v101r14 release.
byuu says:
Changelog:

  - rewrote the Z80 core to properly handle 0xDD (IX0 and 0xFD (IY)
    prefixes
  - added Processor::Z80::Bus as a new type of abstraction
  - all of the instructions implemented have their proper T-cycle counts
    now
  - added nall/certificates for my public keys

The goal of `Processor::Z80::Bus` is to simulate the opcode fetches being
2-read + 2-wait states; operand+regular reads/writes being 3-read. For
now, this puts the cycle counts inside the CPU core. At the moment, I
can't think of any CPU core where this wouldn't be appropriate. But it's
certainly possible that such a case exists. So this may not be the
perfect solution.

The reason for having it be a subclass of Processor::Z80 instead of
virtual functions for the MasterSystem::CPU core to define is due to
naming conflicts. I wanted the core to say `in(addr)` and have it take
the four clocks. But I also wanted a version of the function that didn't
consume time when called. One way to do that would be for the core to
call `Z80::in(addr)`, which then calls the regular `in(addr)` that goes to
`MasterSystem::CPU::in(addr)`. But I don't want to put the `Z80::`
prefix on all of the opcodes. Very easy to forget it, and then end up not
consuming any time. Another is to use uglier names in the
`MasterSystem::CPU` core, like `read_`, `write_`, `in_`, `out_`, etc. But,
yuck.

So ... yeah, this is an experiment. We'll see how it goes.
2016-09-03 21:26:04 +10:00
..
arm Update to v099r13 release. 2016-06-29 21:10:28 +10:00
gsu Update to v099r12 release. 2016-06-28 20:43:47 +10:00
hg51b Update to v098r06 release. 2016-04-22 23:35:51 +10:00
lr35902 Update to v098r17 release. 2016-06-06 08:10:01 +10:00
m68k Update to v101r12 release. 2016-08-22 08:11:24 +10:00
r6502 Update to v099r12 release. 2016-06-28 20:43:47 +10:00
r65816 Update to v100r07 release. 2016-07-17 13:24:28 +10:00
spc700 Update to v100r15 release. 2016-07-31 12:11:20 +10:00
upd96050 Update to v099r12 release. 2016-06-28 20:43:47 +10:00
v30mz Update to v100r01 release. 2016-07-08 22:31:35 +10:00
z80 Update to v101r14 release. 2016-09-03 21:26:04 +10:00
GNUmakefile Update to v100r03 release. 2016-07-10 15:28:26 +10:00
processor.hpp Update to v097r01 release. 2016-01-23 18:29:34 +11:00