Commit graph

  • 8d07b129af Add disassembly for lot of cop1 instructions Paul Holden 2012-05-01 00:17:47 +01:00
  • 76640e9f87 Implement interrupt handling Paul Holden 2012-04-30 23:30:11 +01:00
  • 93e02addcb Implemented TLBR/TLBP/DIV/DIVU/SD. Bumped up number of cycles executed per screen refresh Paul Holden 2012-04-30 21:27:03 +01:00
  • f776792891 Added basic TLB support, fixed SLT, added SLTI/SLTIU/MTLO/MTHI Paul Holden 2012-04-30 09:09:25 +01:00
  • 435996dbd3 Add support for LH/SH/LBU/LB/LHU etc Paul Holden 2012-04-30 00:19:21 +01:00
  • f211f49509 DDIV/DDIVU Paul Holden 2012-04-29 23:10:23 +01:00
  • 214c0cacf4 Implement DMULT/DMULTU/LD, fix bugs in MULT/MULTU Paul Holden 2012-04-29 22:28:50 +01:00
  • a85a1dc0ce Disassembler: track ops which implicitly modify ra' Paul Holden 2012-04-29 22:25:39 +01:00
  • 04da9f4970 Change some toHex call to toString32 Paul Holden 2012-04-29 22:24:09 +01:00
  • 7d3a72067d Add basic support for TLB ops Paul Holden 2012-04-29 22:22:57 +01:00
  • b6834d5cc7 Expose toString32 etc Paul Holden 2012-04-29 22:19:33 +01:00
  • 90ccc39735 Workaround for Chrome/v8 bug relating to assigning large values to Uint8Array http://code.google.com/p/v8/issues/detail?id=2110 Paul Holden 2012-04-29 22:18:23 +01:00
  • cf8b478758 PI control support Paul Holden 2012-04-29 18:49:29 +01:00
  • 7891c0cf9a Rearrange n64.js Paul Holden 2012-04-29 16:30:12 +01:00
  • 50a6283063 Add cpu1, CFC1, CTC1 and some cpu0 init Paul Holden 2012-04-29 16:07:40 +01:00
  • aa7e45adee Add support for MFC0, MTC0 Paul Holden 2012-04-29 14:52:10 +01:00
  • f752d4aab8 Move n64js logging functions to top of file, and add check() Paul Holden 2012-04-29 14:51:33 +01:00
  • 159540e8b3 Use register names from disassemble.js Paul Holden 2012-04-29 14:50:53 +01:00
  • 41f8e9b0e0 Implement all the branch/jump ops. Made BNE/BEQ check the full 64-bit reg for now (optimisation is just to check low 32 bits) Paul Holden 2012-04-29 13:13:56 +01:00
  • cf0b2bf6ee Construct cpu0 Paul Holden 2012-04-29 12:29:23 +01:00
  • b3a7b62f25 Move cpu0 from n64.js to r4300.js. It simplifies a few things and avoids some indirection Paul Holden 2012-04-29 12:07:23 +01:00
  • 7681149fcf Added basic support for lots more devices Paul Holden 2012-04-29 11:47:40 +01:00
  • 4d1a13ed99 Merge Paul Holden 2012-04-28 17:03:33 +01:00
  • 2446600285 Remove a lot of duplicated memory handler code Paul Holden 2012-04-28 17:01:14 +01:00
  • 53c5656190 Don't halt when reading from rom unknown 2012-04-27 08:53:06 +01:00
  • 55c0a056fd Add variable shift and BLTZAL/BGEZAL. CRC checks passed first time. HOLY SHIT Paul Holden 2012-04-27 00:24:12 +01:00
  • 58ee1ef6e3 Handle PI reads from cart Paul Holden 2012-04-27 00:09:57 +01:00
  • 9e16d37350 Added rom memory handler, pi_reg memory handler Paul Holden 2012-04-26 23:17:28 +01:00
  • 03f32bb5a4 Halt cpu immediately Paul Holden 2012-04-26 22:58:21 +01:00
  • 7a910fe7af Scroll the output window automatically Paul Holden 2012-04-26 22:57:42 +01:00
  • e5353dd6ef Implemented lots of ops - get as far as initial execution from rdram now Paul Holden 2012-04-26 22:34:42 +01:00
  • 6e2472fc1b Added dissassembly for regImm instructions. Added an assert that memory access is in range Paul Holden 2012-04-26 22:30:00 +01:00
  • 299c3caba7 Fix a couple of signed value issues Paul Holden 2012-04-26 20:46:29 +01:00
  • 8416ae79a1 Improve the register/label view: use jquery selectors to find relevant spans. Hightlight each register that's used using the same colour (rather than different colours to mean 'read, 'written') Paul Holden 2012-04-26 20:43:07 +01:00
  • 7155b3435c Improve the disassembly view - the disassembler now records source and destrination operands, which the display code can pick apart to highlight any registers that are used Paul Holden 2012-04-25 00:10:42 +01:00
  • c1b307b41f Implement more ops, handle 32-bit writes and add support for more devices Paul Holden 2012-04-24 08:40:03 +01:00
  • 1da3ec12b7 Add step 100, step 1000 Paul Holden 2012-04-24 08:39:05 +01:00
  • ac4babeea4 Refactor how memory is handled - hopefully this will be fairly maintainable... Paul Holden 2012-04-23 23:04:23 +01:00
  • d97adcc20d Fix exeption when disassembly branch/jump instructions Paul Holden 2012-04-23 00:09:48 +01:00
  • 8e8d29bdf3 Boilerplate execution code Paul Holden 2012-04-23 00:00:17 +01:00
  • ca288a2329 Move 'pc' to the cpu0 state. Add a separate var to track the disassembly view location Paul Holden 2012-04-22 20:07:15 +01:00
  • 034af16a6b Make the tabs selectable with f/d/m keys Paul Holden 2012-04-22 20:05:58 +01:00
  • ff0ecc7e0c Fiddle with the layout a bit Paul Holden 2012-04-22 19:07:13 +01:00
  • 4367153168 Keyboard shortcuts, scrolling, handle unmapped memory a bit better Paul Holden 2012-04-22 18:34:39 +01:00
  • 8d85ad3e84 Hash addresses to generate colours for branch/jump labels Paul Holden 2012-04-22 16:11:43 +01:00
  • 0b12489f83 More ops disassembled. Highlight jump targets Paul Holden 2012-04-22 15:33:08 +01:00
  • f6a631c74e Work on the disassembler Paul Holden 2012-04-22 14:33:50 +01:00
  • c972c7f4a6 Load roms, ensure correct byteswapping, dump header Paul Holden 2012-04-21 09:31:42 +01:00
  • 629cdaaae9 Parse rom header, ensure correct byteswapping Paul Holden 2012-04-21 09:27:44 +01:00
  • 82b22c9b61 Add bootstrap, jquery Paul Holden 2012-04-17 23:32:34 +01:00
  • fc99dee7a0 First commit Paul Holden 2012-04-17 23:31:01 +01:00