Commit graph

  • 56756249c4 Move more functions to Renderer. Paul Holden 2023-09-16 16:46:32 +01:00
  • 4e948aaf53 Move flushTris to Renderer. Paul Holden 2023-09-16 16:35:32 +01:00
  • 126579ee8a Add a Renderer class with fillRect and texRect. Paul Holden 2023-09-16 16:32:06 +01:00
  • 00256cb466 Move microcode enums and detection to a separate module. Paul Holden 2023-09-16 14:55:58 +01:00
  • 1ad59f82c1 Format. Paul Holden 2023-09-16 14:40:35 +01:00
  • cfa17456e1 Move loadVertices to microcode. Paul Holden 2023-09-16 14:40:03 +01:00
  • ea90457d7f Wrap up table construction. Paul Holden 2023-09-16 14:33:47 +01:00
  • 9eaf7ed329 Move vertex strides to microcode base. Paul Holden 2023-09-16 14:27:39 +01:00
  • 3d73796050 config.vertexStride is no longer used. Paul Holden 2023-09-16 14:23:12 +01:00
  • 00c40e2085 Tidy Paul Holden 2023-09-16 14:21:27 +01:00
  • d3dda3b3fa Move final GBI1 commands to microcode. Paul Holden 2023-09-16 14:18:01 +01:00
  • 54d53d5819 Move some GBI1 commands to microcode. Paul Holden 2023-09-16 14:12:15 +01:00
  • 7f5ba37ee3 Move some GBI1 commands to microcode. Paul Holden 2023-09-16 14:06:53 +01:00
  • 2f09ffb5bd Move some GBI1 commands to microcode. Paul Holden 2023-09-16 14:01:41 +01:00
  • d2a647f49d Move remaining GBI2 commands to microcode. Paul Holden 2023-09-16 13:54:40 +01:00
  • b770f1fd2d triangleBuffer is unused now. Paul Holden 2023-09-16 12:19:11 +01:00
  • b79d3f3641 Move more GBI2 commands to microcode. Paul Holden 2023-09-16 12:18:18 +01:00
  • aaa4559db7 Add missing disassembly. Paul Holden 2023-09-16 12:13:10 +01:00
  • b5f87b39f7 Move triangle commands to microcode. Paul Holden 2023-09-16 12:11:45 +01:00
  • eb7ddbbcd5 Move some trivial commands to microcode. Paul Holden 2023-09-16 12:02:38 +01:00
  • 2f13f1956f Move vertex commands to microcode. Paul Holden 2023-09-16 11:48:36 +01:00
  • e8aa250f4f Move matrix commands to microcode classes. Paul Holden 2023-09-16 11:41:45 +01:00
  • 0682a48450 Move texRect and fillRect to GBIMicrocode. Paul Holden 2023-09-16 11:34:12 +01:00
  • a0e957eb2f Add disassembly for executeGBI2_SpNoop. Paul Holden 2023-09-16 11:32:45 +01:00
  • 5980fdea57 Move tmem commands to GBIMicrocode. Paul Holden 2023-09-16 11:26:12 +01:00
  • 298a70091d Move more commands to GBIMicrocode. Paul Holden 2023-09-16 11:21:21 +01:00
  • 7084531d0e Move setTile commands to GBIMicrocode. Paul Holden 2023-09-16 11:13:36 +01:00
  • 0c4a1e563a Move setColor commands to GBIMicrocode. Paul Holden 2023-09-16 11:09:50 +01:00
  • b80ca16e35 Use a map rather than a switch. Paul Holden 2023-09-16 11:00:56 +01:00
  • 9207e1f01f Make it possible for microcodes to override the existing handler tables. Paul Holden 2023-09-16 10:46:02 +01:00
  • fde67e1dff Start splitting up different microcodes. Paul Holden 2023-09-16 09:40:43 +01:00
  • 37e1a46572 Simplify how TriangleBuffer is used. Paul Holden 2023-09-16 09:28:10 +01:00
  • a75569a4c8 Add Tile.set and Tile.setSize. Paul Holden 2023-09-16 08:35:04 +01:00
  • 4fe6b9b18e var -> const/let. Paul Holden 2023-09-15 23:24:25 +01:00
  • 458f256318 camelCase and const/let. Paul Holden 2023-09-15 23:08:20 +01:00
  • fb51eccc81 Rename Tile members in camelCase Paul Holden 2023-09-15 22:52:03 +01:00
  • 83a8970f25 Encapsulate TextureImage. Paul Holden 2023-09-15 09:15:18 +01:00
  • f19b3c313a Add convertTexels helper to tmem. Paul Holden 2023-09-15 08:59:35 +01:00
  • adafd12695 Move loadTLUT to tmem. Paul Holden 2023-09-15 08:57:00 +01:00
  • 4d9d8a6f3a Split out tmem. Paul Holden 2023-09-15 08:52:31 +01:00
  • 92766bd846 Rename hle to hle_graphics. Paul Holden 2023-09-15 08:33:23 +01:00
  • b79501ebd0 Split out RSPTask. Paul Holden 2023-09-15 08:32:38 +01:00
  • 36dc76d9aa Move hle.js to hle dir. Paul Holden 2023-09-15 08:20:29 +01:00
  • 6d5925b623 Move convert, textures and shaders to hle dir. Paul Holden 2023-09-15 08:18:08 +01:00
  • 45888aa83a Move triangle_buffer to hle dir. Paul Holden 2023-09-15 08:16:51 +01:00
  • 3af877d9f8 Move gbi.js to hle dir. Paul Holden 2023-09-15 08:15:20 +01:00
  • 62feaabeba Use accessors. Paul Holden 2023-09-15 08:13:57 +01:00
  • 60a9a15a49 Move tile to hle/ dir. Paul Holden 2023-09-15 08:11:54 +01:00
  • 69912c102d Add some debugging when setting lights with unexpected lengths,. Paul Holden 2023-09-15 08:10:39 +01:00
  • 4d7f7babb3 Move some helpers to RSPState. Paul Holden 2023-09-14 23:55:21 +01:00
  • dd79ba52cb Add a setTexture helper. Paul Holden 2023-09-14 23:44:18 +01:00
  • 00780685c3 Fix filename. Paul Holden 2023-09-14 23:40:33 +01:00
  • cbc7eefe32 Move updateGeometryModeFromBits to RSPState. Paul Holden 2023-09-14 23:39:04 +01:00
  • 82c07ac71f Add a RSPState class. Paul Holden 2023-09-14 23:36:58 +01:00
  • 10789e37b5 Reorder Paul Holden 2023-09-14 23:25:16 +01:00
  • 0ae366c15f Tidy. Paul Holden 2023-09-14 23:17:07 +01:00
  • 6c2ef504dc Inline makeN64FramebufferToDeviceMatrix. Paul Holden 2023-09-14 23:16:07 +01:00
  • 3dbe63e188 Remove unused args. Paul Holden 2023-09-14 23:14:15 +01:00
  • 25e7052da9 Rename to initDimensions to make it clearer it happens once during processing. Paul Holden 2023-09-14 23:13:17 +01:00
  • a2c7b057f7 Add x, y, z, w accessors. Paul Holden 2023-09-14 23:11:28 +01:00
  • e3e8bfe41c Update viewport to use Vector2. Paul Holden 2023-09-14 23:06:06 +01:00
  • 192562eb28 Tidy Paul Holden 2023-09-14 22:57:27 +01:00
  • 79b63e9958 Simplify screen->device transforms. Paul Holden 2023-09-14 22:56:40 +01:00
  • cf7fa8f443 Add a Transform2D class. Paul Holden 2023-09-14 22:47:01 +01:00
  • f6d62586ea Add a Vector2 class. Paul Holden 2023-09-13 23:55:46 +01:00
  • 1248ff30d7 Rename Matrix to Matrix4x4. Paul Holden 2023-09-13 23:48:52 +01:00
  • edeb41077d Tidy Paul Holden 2023-09-13 08:06:07 +01:00
  • 808beabe70 Overhaul handling of software rendering. Paul Holden 2023-09-12 23:58:50 +01:00
  • 9423e884a1 Fix software rendering for Rayman and Donald Duck (pitch was wrong). Paul Holden 2023-09-11 23:11:39 +01:00
  • 1474fc2c30 Improve executeGBI2_MoveMem debug output. Paul Holden 2023-09-11 22:29:45 +01:00
  • 073f7b808f Remove logGLCall. Paul Holden 2023-09-11 08:10:52 +01:00
  • 936ad8bc84 Fix texture wrapping issues for texrects that have negative dsdx or dtdy. Paul Holden 2023-09-10 22:30:11 +01:00
  • 85ab7aefa7 Remove unused imports. Paul Holden 2023-09-10 21:20:35 +01:00
  • 80ea0f2ea0 Tidy Paul Holden 2023-09-10 21:20:10 +01:00
  • 7298cb2aa1 bun update Paul Holden 2023-09-10 21:13:34 +01:00
  • a61f4042f2 Rename to eq for brevity. Paul Holden 2023-09-10 21:10:53 +01:00
  • c2a7c7e45d Add some tests for event_queue. Paul Holden 2023-09-10 20:52:30 +01:00
  • 3e6b19e194 Make recompiler export the functions it needs. Paul Holden 2023-09-10 20:27:54 +01:00
  • 6352e7a5c8 Move tests alongside source. Paul Holden 2023-09-10 20:11:56 +01:00
  • b1d5476528 Fix tests. Paul Holden 2023-09-10 20:06:49 +01:00
  • a7a2fb5a1f Tidy raiseX() functions. Paul Holden 2023-09-10 18:17:40 +01:00
  • 5d958dffdd Move causeExcCode constants to cpu_constants.js. Paul Holden 2023-09-10 17:58:00 +01:00
  • 4032dff5da Tidy and dedupe more instruction decode helpers. Paul Holden 2023-09-10 16:07:11 +01:00
  • 016c0ee058 Fix and dedupe simpleOp. Paul Holden 2023-09-10 15:51:34 +01:00
  • 1b57724a03 Fix asserts. Paul Holden 2023-09-10 15:36:56 +01:00
  • 66e4238521 Move cpu1 instruction handling to cpu1.js. Paul Holden 2023-09-10 15:36:47 +01:00
  • f8d82400aa Move checkCauseIP3Consistent to CPU0. Paul Holden 2023-09-10 15:12:28 +01:00
  • 0d2d8ac8f7 Remove some unused functions. Paul Holden 2023-09-10 15:09:31 +01:00
  • 256835d60e Dedupe instruction decode helpers. Paul Holden 2023-09-10 15:08:25 +01:00
  • 5a62c1406d Split all the code generation out of r4300.js. Paul Holden 2023-09-10 14:57:43 +01:00
  • 296daf8ce7 Use this rather than cpu0. Paul Holden 2023-09-10 14:28:20 +01:00
  • a7a9b62520 Actually remove n64js.getRamDataView. Paul Holden 2023-09-10 14:24:42 +01:00
  • 8860b24c87 Remove n64js.getRamDataView. Paul Holden 2023-09-10 14:24:18 +01:00
  • 0a27b84aa7 Move getRamS32Array to hle.js. Paul Holden 2023-09-10 14:21:18 +01:00
  • 163e00e63b Push n64js.getRamU8Array to call sites and remove. Paul Holden 2023-09-10 14:18:42 +01:00
  • d13259fcf3 Remove n64js.checkSIStatusConsistent. Paul Holden 2023-09-10 14:12:04 +01:00
  • 786ce5dc33 getRandomU32 is unused. Paul Holden 2023-09-10 14:10:32 +01:00
  • b13a8b04a6 Log some more details from the rom header. Paul Holden 2023-09-10 14:04:31 +01:00
  • 28bf76f920 Move systemFrequency to Hardware. Paul Holden 2023-09-10 13:51:58 +01:00
  • 6a31580e17 Add a TODO Paul Holden 2023-09-10 13:51:15 +01:00