Commit graph

  • 4405d7a069 Finally booting through the rest of the BIOS. Whew. :-) develop Adam Becker 2016-11-25 21:22:38 -07:00
  • 09c90456ee Adding better I/O logging. Adam Becker 2016-11-25 16:56:28 -07:00
  • 47971a0bad Implementing basic CD-ROM delay, and fixing the DMA interrupts for good. Adam Becker 2016-11-25 15:34:23 -07:00
  • 858deeb82f More GPU refactoring. Adam Becker 2016-11-25 12:38:58 -07:00
  • 2244a3634a Expose GPU ports and consume them in the DMA code. Adam Becker 2016-11-25 12:18:20 -07:00
  • 6da8877965 Replacing the fifo with a statically allocated version. Adam Becker 2016-11-25 11:55:17 -07:00
  • 955f16d4dc Fixing DMA interrupts. Adam Becker 2016-11-25 11:11:31 -07:00
  • adef3b48fe Implementing texture downloading. Adam Becker 2016-11-25 00:51:31 -07:00
  • a1038d7fa9 Fixing some major bugs with interrupts. Adam Becker 2016-11-25 00:39:20 -07:00
  • 4c911c465d Implementing enough of the CD-ROM to get further with COP2 instructions. Adam Becker 2016-11-19 10:36:59 -07:00
  • 47a1e779fc Updating the readme. Adam Becker 2016-11-17 21:10:39 -07:00
  • 13b27678b9 Adding basic support for IRQs on the CPU side of things. Adam Becker 2016-11-17 20:50:36 -07:00
  • af4a874f11 Cleaning up the rendering code. Adam Becker 2016-11-16 21:33:13 -07:00
  • 0a40dff5ff Moving the rendering code to another file. Adam Becker 2016-11-15 18:22:02 -07:00
  • d98de1846d Creating a separate method for each bus access width. Adam Becker 2016-11-12 17:23:28 -07:00
  • 9c58683d3c Adding the initial skeleton for CD-ROM support. Adam Becker 2016-11-12 15:07:41 -07:00
  • 560ca79641 Making builds work on Debian. beannaich 2016-11-16 21:30:40 -07:00
  • b610f2d1f9 Renaming method for consistency. Adam Becker 2016-11-12 15:09:51 -07:00
  • aa7e87792a Optimizing memory accesses slightly, honestly I should have been doing things this way from the beginning. Adam Becker 2016-11-12 13:28:35 -07:00
  • af222ec959 More CPU refactoring Adam Becker 2016-11-10 21:57:10 -07:00
  • e120a8bd05 Refactoring the CPU a tad. Adam Becker 2016-11-10 21:11:54 -07:00
  • 7ff88980d9 Adding the ability to load executables. Fixing CPU bugs using amidog's CPU tests. Adam Becker 2016-11-06 17:14:39 -07:00
  • d61e89cf71 Implementing textured quads. Adam Becker 2016-11-06 09:11:04 -07:00
  • 9eb540f12f Implementing pixel perfect triangle rasterizing. Fill conventions are honored. Adam Becker 2016-11-05 22:50:16 -06:00
  • 1b2f40cfdd Moving the GPU draw code to a separate file. Adam Becker 2016-11-05 21:48:43 -06:00
  • 22438ca54b Updating README.md Adam Becker 2016-11-04 20:02:34 -06:00
  • f190cbd830 Adding gouraud shading to triangles, and dithering. Adam Becker 2016-11-04 19:15:42 -06:00
  • 5cba84573a Updating the README and LICENSE. Adam Becker 2016-11-03 21:20:52 -06:00
  • 5d1ac86052 Able to render the Sony logo! Well, partially. Still missing textured polygons. Adam Becker 2016-11-03 20:49:27 -06:00
  • 5e1e2fc226 Finally have display lists! Will have graphical output very soon. :) Adam Becker 2016-10-30 22:10:21 -06:00
  • ce6e88942f The BIOS now accesses the CDROM in an infinite loop. Adam Becker 2016-10-30 18:10:08 -06:00
  • b0c2501c42 System deadlocks, good place to save before investigating. I am now parsing GP0 commands, and will have graphical output soon. Adam Becker 2016-10-30 15:47:16 -06:00
  • 4e81938bcb Ensuring R0 is always 0 gets the BIOS further along, not sure if the BIOS is writing to R0 in error or not. Adam Becker 2016-10-29 20:09:18 -06:00
  • 089873c142 Streamlining some code. Adam Becker 2016-10-29 19:13:03 -06:00
  • f50d23d3d1 Squashing a few minor bugs. Adam Becker 2016-10-29 18:10:41 -06:00
  • 524a77d62c Adding a lot of register handling, enough to get to a new crash point. Yippee. Adam Becker 2016-10-29 15:44:04 -06:00
  • 7c4b8f9d4a Cleaning up some code before pressing forward. Adam Becker 2016-10-26 19:42:43 -06:00
  • 5a49e6a667 Major changes to the code base. Adam Becker 2016-10-25 20:47:31 -06:00
  • fbbec2aad2 Fixing something in the Makefile that was left over from the initial revision. beannaich 2016-02-15 21:03:00 -07:00
  • 60127f335a Merge branch 'patch-1' into develop beannaich 2016-02-15 20:54:10 -07:00
  • a83154c088 Update README.md Derek "Turtle" Roe 2016-02-14 01:12:53 -06:00
  • d2c63e9796 Make it look a little nicer Derek "Turtle" Roe 2016-02-13 17:57:59 -06:00
  • 9043232d81 README fixes Derek "Turtle" Roe 2016-02-13 17:31:39 -06:00
  • ec12554791 Merge branch 'patch-2' into develop beannaich 2016-02-15 19:38:59 -07:00
  • 99fee0abd6 Update .gitattributes Derek "Turtle" Roe 2016-02-13 17:35:45 -06:00
  • 62f172b519 Merge branch 'patch-3' into develop beannaich 2016-02-13 19:47:05 -07:00
  • ce7cf3ef14 Small fix Derek "Turtle" Roe 2016-02-13 17:38:42 -06:00
  • d54d371cf2 Renaming include guards. beannaich 2016-02-13 15:07:33 -07:00
  • ccf3fa7c2c Silencing warnings from MSVC about `fopen'. beannaich 2016-02-13 13:42:42 -07:00
  • e22ecc3ae1 Adding a makefile for Linux users, and fixing build errors/warnings in clang++/g++ beannaich 2016-02-13 13:08:42 -07:00
  • 94b61a5064 Moving the source files to the `src' folder. beannaich 2016-02-10 21:20:12 -07:00
  • 3bc8fa0faa Changing the namespace r3051' to cpu' beannaich 2016-02-10 21:14:48 -07:00
  • 75d84d4214 Making `enter_exception' modify the PC register, since that logic will be completely duplicated by any callers. beannaich 2016-02-10 21:01:57 -07:00
  • 589db6d46d Fixing a major bug that was preventing the emulator from getting very far with the BIOS. I am now seeing many I/O accesses and the emulator eventually gets to polling GPU_STAT repeatedly :) beannaich 2016-02-08 18:12:16 -07:00
  • cc3f825c9e Compared the core with PCSXTrace and found no executional differences for the first 10MiB (After which, PCSXTrace crashed). Committing what I have since I see that as a minor milestone. beannaich 2016-02-08 16:33:38 -07:00
  • db74611c58 Fleshing out the GPU memory interface a bit. beannaich 2016-02-07 22:48:48 -07:00
  • 6ee6661874 More shuffling files around. beannaich 2016-02-07 22:25:41 -07:00
  • 132d3e2f79 Making `cop0_t' just a structure. beannaich 2016-02-07 22:08:41 -07:00
  • e31a65ca6d Tidying up the project before I start seriously debugging. beannaich 2016-02-07 21:55:40 -07:00
  • f2e742fc11 Replacing the indexing operator on `registers_t' with a union so I can pick signed or unsigned registers for convenience. beannaich 2016-02-07 19:37:57 -07:00
  • 343208e8b0 Adding basic exception support. beannaich 2016-02-07 17:36:33 -07:00
  • f20691eeb3 Improving memory management in `bus_t'. beannaich 2016-01-30 13:01:09 -07:00
  • 03485e17b4 Moving a few variables closer to where they're used. beannaich 2016-01-30 12:45:28 -07:00
  • f2c5241d6c Adding `decoder.hpp' which will take care of masking bits from the instruction. beannaich 2016-01-30 12:41:05 -07:00
  • 66090093db Adding register indexing operator beannaich 2016-01-30 12:13:26 -07:00
  • 5d5a2e5b99 Updating the readme master beannaich 2016-01-28 20:46:03 -07:00
  • 8de394e11b The BIOS (SCPH1000) gets much further with the new architecture so I'm committing it. beannaich 2016-01-28 20:37:49 -07:00
  • c887cf979f maintenance commit Adam Becker 2014-11-10 20:47:20 -07:00
  • a08192ff41 attach other components to the bus Adam Becker 2014-10-12 22:03:11 -06:00
  • eca91b384b clean up includes in stdafx.hpp, and disable some msvc warnings Adam Becker 2014-10-12 22:02:33 -06:00
  • 164d57000b Update readme.md Adam Becker 2014-10-10 23:07:58 -06:00
  • db38109b10 make the build system more sturdy, and stop assuming certain platforms will use certain tool chains Adam 2014-10-10 21:56:13 -06:00
  • 8e2f5a26d0 Might help if I tested the stupid thing before pushing :D Adam Becker 2014-10-10 20:15:29 -06:00
  • d78e493fa9 the build system is now something i am happy with Adam Becker 2014-10-10 20:13:06 -06:00
  • d536f8da4e Polish the build system a tad Adam 2014-10-09 21:04:30 -06:00
  • a13871ed50 Linux builds now working-ish Adam 2014-10-09 20:23:37 -06:00
  • 8191ad5c0b add sconstruct file for the first step to getting linux builds working. Adam Becker 2014-10-09 17:45:31 -06:00
  • 44c877e1fa even more clean-ups/changing to c++ Adam Becker 2014-10-07 22:27:06 -06:00
  • 8d940a3b1c got the rest of the files converted to objects, not really happy with the structure, but it runs. Adam Becker 2014-10-07 20:02:37 -06:00
  • 1e710fc5fb start tying things together using the bus Adam Becker 2014-10-06 22:09:38 -06:00
  • 58cae8d36c clean up cop0 Adam Becker 2014-10-06 20:44:44 -06:00
  • 984b934b8d more R3051 clean ups. Adam Becker 2014-10-06 20:40:57 -06:00
  • a2a65629e8 clean up the R3051 a bit. Adam Becker 2014-10-06 20:29:22 -06:00
  • c73b44401c wrap bus logic in a class. Adam Becker 2014-10-06 20:23:57 -06:00
  • bb8c1f2d4b this project is now a c++ project Adam Becker 2014-10-06 07:09:57 -06:00
  • 72f953661e fix a potential divide by zero exception. if point1 and point2 are equal, both dx and dy will be 0. in that event, we'll just render a single pixel and leave. fix a copy/paste error in util. woops :D Adam Becker 2014-09-30 20:00:27 -06:00
  • a3e93cea69 Merge branch 'clean-up' Adam Becker 2014-09-29 19:48:27 -06:00
  • 87d6c96590 put the newline character in the macro for ExLog, writing it every time is for the birds. Adam Becker 2014-09-29 19:10:32 -06:00
  • c18c400637 replace tab characters with spaces, hate when that happens. Adam Becker 2014-09-29 19:02:12 -06:00
  • 378ba775b3 fix a few regressions that snuck in when i was divying up the commits yesterday. Adam Becker 2014-09-29 18:20:06 -06:00
  • 9addadf8ee Merge pull request #1 from beannaich/develop Adam Becker 2014-09-28 11:09:59 -06:00
  • 4f6521f377 move readme file to root directory. Adam Becker 2014-09-28 11:02:47 -06:00
  • 6fc9eb1662 implement an extremely basic gpu to get the ball rolling Adam Becker 2014-09-28 10:57:45 -06:00
  • 898c1eee61 clean up the 'ex' and 'rf' stages, bios now polling the gpu status register. Adam Becker 2014-09-28 10:56:39 -06:00
  • c888c36422 add coprocessor instructions Adam Becker 2014-09-28 10:53:09 -06:00
  • 7891cb0be1 add remaining control flow instructions Adam Becker 2014-09-28 10:51:45 -06:00
  • e605f0dccd add remaining alu operations Adam Becker 2014-09-28 10:49:55 -06:00
  • de5ead0e29 add mult, multu, mfhi, mflo, mthi, mtlo Adam Becker 2014-09-28 10:46:19 -06:00
  • e4d712dd25 add remaining load/store instructions Adam Becker 2014-09-28 10:38:55 -06:00
  • 0dd95e4f4c add syscall and break instructions Adam Becker 2014-09-28 10:29:12 -06:00