bsnes/higan
Tim Allen be3f6ac0d5 Update to v100r09 release.
byuu says:

Another six hours in ...

I have all of the opcodes, memory access functions, disassembler mnemonics
and table building converted over to the new template<uint Size> format.

Certainly, it would be quite easy for this nightmare chip to throw me
another curveball, but so far I can handle:

- MOVE (EA to, EA from) case
  - read(from) has to update register index for +/-(aN) mode
- MOVEM (EA from) case
  - when using +/-(aN), RA can't actually be updated until the transfer
    is completed
- LEA (EA from) case
  - doesn't actually perform the final read; just returns the address
    to be read from
- ANDI (EA from-and-to) case
  - same EA has to be read from and written to
  - for -(aN), the read has to come from aN-2, but can't update aN yet;
    so that the write also goes to aN-2
- no opcode can ever fetch the extension words more than once
- manually control the order of extension word fetching order for proper
  opcode decoding

To do all of that without a whole lot of duplicated code (or really
bloating out every single instruction with red tape), I had to bring
back the "bool valid / uint32 address" variables inside the EA struct =(

If weird exceptions creep in like timing constraints only on certain
opcodes, I can use template flags to the EA read/write functions to
handle that.
2016-07-19 19:12:05 +10:00
..
audio Update to v100 release. 2016-07-08 22:04:59 +10:00
data Update to v097r06 release. 2016-01-31 18:59:44 +11:00
emulator Update to v100r09 release. 2016-07-19 19:12:05 +10:00
fc Update to v100r03 release. 2016-07-10 15:28:26 +10:00
gb Update to v100r03 release. 2016-07-10 15:28:26 +10:00
gba Update to v100r03 release. 2016-07-10 15:28:26 +10:00
md Update to v100r09 release. 2016-07-19 19:12:05 +10:00
obj Update to v096r01 release. 2015-12-30 17:54:59 +11:00
out Update to v096r01 release. 2015-12-30 17:54:59 +11:00
processor Update to v100r09 release. 2016-07-19 19:12:05 +10:00
resource Update to v098r12 release. 2016-05-26 21:20:15 +10:00
sfc Update to v100r07 release. 2016-07-17 13:24:28 +10:00
systems Update to v100r02 release. 2016-07-09 14:21:37 +10:00
target-tomoko Update to v100r02 release. 2016-07-09 14:21:37 +10:00
video Update to v098r12 release. 2016-05-26 21:20:15 +10:00
ws Update to v100r03 release. 2016-07-10 15:28:26 +10:00
GNUmakefile Update to v099r08 release. 2016-06-24 22:16:53 +10:00