Commit Graph

  • c022b15465 working on moving the 'TestCompression' code into its own crate add_telnet_interface tmerritt 2025-06-01 14:12:48 -04:00
  • 21f6e492f6 WIP tmerritt 2025-05-31 22:56:05 -04:00
  • ef3d605528 removes uncompressed test results as deflated version is now being used tmerritt 2025-05-30 10:59:43 -04:00
  • 66ab2363d8 BUGFIX GEMMARAT: fixes input bug with frequent drops of inputs from 2 input loops CLEANUP: remove unused imports, _ unused variables tmerritt 2025-05-30 09:23:42 -04:00
  • 9b64a959f3 CLEANUP: cleans up dependencies to use workspace version CLEANUP: standardizes on pretty_env_logger NEWBIN: Adds gemmarat to use Ratatui as an interface CLEANUP: removes debugging display from computer.rs ENHANCEMENT: Constants for locations of test roms built from environment BUGFIX: SoundTimer was using i32 internally when it needs to be u8 CLEANUP: removes commented code used during diagnostics tmerritt 2025-05-29 13:26:41 -04:00
  • 6c902de16f adds smoke tests to everything adds deflated test examples origin/add_telnet_interface tmerritt 2025-05-28 11:32:09 -04:00
  • e45d269828 test compression is now working. you can compress a test and decompress it. needs to be rolled into the test util suite tmerritt 2025-05-27 14:00:57 -04:00
  • 0f40002053 BUGFIX: gemmaegui: Memory window was showing 16 bytes beyond 'limit' tmerritt 2025-05-27 10:16:31 -04:00
  • fdf09daf0f more coverage tmerritt 2025-05-27 10:02:13 -04:00
  • d27d2e8e45 Adds more util methods for swapping endianness and extracting data from instructions Adds tests for new util methods tmerritt 2025-05-26 08:40:15 -04:00
  • 74bf2e71e4 moves constants out of client handler tmerritt 2025-05-23 09:20:39 -04:00
  • c9c9cf67da telnet now will load the IBM logo and run through it. tmerritt 2025-05-22 14:15:38 -04:00
  • 8c22cf9308 telnetd implementing more stuff. tmerritt 2025-05-22 13:14:33 -04:00
  • 494a73eb89 prep for trait code master tmerritt 2024-12-04 10:41:08 -05:00
  • cddbe0c46e fixes reset from exection completion adds 'default.oc8' adds control window size to state for load/save of settings maybe? moves TestCompressionTool code into InstructionUtil remove gemmautil and moves into gemma tmerritt 2024-11-08 09:42:28 -05:00
  • 67ca71ccb7 my first schip rom works in my schip emulator. BUGFIX: Corrects runaway after drawing in my first schip rom scroll down, left, right all test with test rom assembler now assembles to the expected output it seems fixes incorrect loading of schip font to memory replaces schip font from new chatgpt feedback tmerritt 2024-11-05 10:02:19 -05:00
  • 434cf92414 weekend work tmerritt 2024-11-04 10:38:46 -05:00
  • 5663123f81 prep to add savestates tmerritt 2024-11-02 08:10:20 -04:00
  • 4e52b5b05a ui update tmerritt 2024-11-01 17:40:39 -04:00
  • d2537705b7 more coverage tmerritt 2024-11-01 10:56:09 -04:00
  • 00c75a82e5 more sample roms. more coverage. tmerritt 2024-11-01 09:41:20 -04:00
  • 13ceb61c97 more passing tests. almost have coverage of instructions back tmerritt 2024-10-31 15:01:32 -04:00
  • d8b14fa084 more unit tests working. imgui drawing directly to background now tmerritt 2024-10-30 12:00:33 -04:00
  • 011874bca6 apply of clippy. fixed missing imports and builds and tests as expected again tmerritt 2024-10-30 09:48:59 -04:00
  • 4fb2d6af29 lets try clippy tmerritt 2024-10-30 09:45:18 -04:00
  • dfce9bf9fe more test coverage tmerritt 2024-10-29 20:15:19 -04:00
  • b492eb5f49 WIP richer test suite Updates imgui to have target ips and limits correctly. Initial IPS = 1000, plan to expose to user More tests for encode/decode of instructions Adding text to instruction parsing tmerritt 2024-10-28 14:42:14 -04:00
  • 1694157e27 move tests to unit_tests to clean up individual files adds start of font characters tmerritt 2024-10-27 12:08:22 -04:00
  • e29ac45c84 scroll down works on CHIP-8 and High-Res modes scroll left and right work in stdef and hidef adds octo test roms adds schip fonts to memory tmerritt 2024-10-25 08:19:03 -04:00
  • a978ddc41e adding SChip features tmerritt 2024-10-23 09:08:20 -04:00
  • 882f95bc73 more roms tmerritt 2024-10-23 09:08:07 -04:00
  • eccc3fe9e3 evolve egui interface move more control back up to the ComputerManager tmerritt 2024-10-22 08:25:08 -04:00
  • 665309c2e4 disassembler disassembles rename_instructions tmerritt 2024-10-21 13:18:46 -04:00
  • e927f6785f more work tmerritt 2024-10-20 06:12:12 -04:00
  • f6751557c6 rename instructions while working on assembler/disassembler tmerritt 2024-10-19 11:55:29 -04:00
  • dea4b1aa92 Gemma: - Adding SCHIP instructions SDL2: - Sorting out Joystick/Gamepad/Whatever Util: - Disassembler in progress tmerritt 2024-10-19 08:24:43 -04:00
  • be6e652982 Adds 'name' and 'operand' to Chip8Instruction tmerritt 2024-10-18 15:34:49 -04:00
  • 1eeb746ccf control moved into gemma for launch/stop/step of cpu core tmerritt 2024-10-18 10:52:39 -04:00
  • d829b9f03f Adds ComputerManager so no write access to the computer directly happens. ComputerManager has a thread to run the CPU whenever its told to either step or run. It can be told to stop the CPU too. Cycle count and keystate feedback is available along with read-only of the computer from status() tmerritt 2024-10-18 09:59:43 -04:00
  • 902d5c1875 Adds gemmasdl2 -> needs work but starts and runs and steps through the 1-chip8 -> has debugging level code for determining what buttons are being pushed tmerritt 2024-10-17 14:45:16 -04:00
  • a467c8e6b0 microoptimization for rendering tmerritt 2024-10-17 11:35:03 -04:00
  • 4cc56db489 lots more docs in the instructions more speedups tmerritt 2024-10-16 16:04:45 -04:00
  • 128100c54e removed code that was only there to be tested tmerritt 2024-10-16 11:57:57 -04:00
  • b4b8bfb24b more validation tests for gemma video rendering Adds 'doom like' 3dviprmaze-vip for demo (VERY VERY SLOW) updates egui interface to let user select from files in resources/roms updates cargo to centralize dependencies 95 passing tests tmerritt 2024-10-16 10:02:24 -04:00
  • 939fd83e80 add chatgpt driven changes to video rendering tmerritt 2024-10-16 07:28:03 -04:00
  • 448aeab154 BUGFIX: Collision works better, not 100% BUGFIX: Video Reset works. tmerritt 2024-10-14 12:13:46 -04:00
  • 5e290d825b more roms tmerritt 2024-10-14 12:13:33 -04:00
  • 683b0fc51a more roms to play with egui now renders the video correctly tmerritt 2024-10-12 14:16:14 -04:00
  • 6be443fa2b BUGFIX: Video was not being XORed but just set. tmerritt 2024-10-12 13:47:15 -04:00
  • bfb615cfe7 more dump of "Emma" for Gemma Video reset now tests ok gemma egui interface now implements stupid workaround for video reset tmerritt 2024-10-12 10:51:57 -04:00
  • c9ef6d4e04 working on gemmaegui to build a usable UI tmerritt 2024-10-11 15:02:15 -04:00
  • ef0250b519 improve core to handle looping of video tmerritt 2024-10-11 13:12:13 -04:00
  • c455175447 adds more sample roms. 21 is the random number now i guess tmerritt 2024-10-11 13:11:52 -04:00
  • 6f7b894e92 Gemma now has a test that runs the IBM Logo and verifies the video is as expected when done. tmerritt 2024-10-11 09:50:01 -04:00
  • 2ef8a78c32 start of computer integration tests tmerritt 2024-10-11 08:51:44 -04:00
  • 4fc0bfd3d8 now passes the flags test rom tmerritt 2024-10-10 16:12:48 -04:00
  • e176ee5638 8xy4 and 8xy5 pass. more flag tests passing tmerritt 2024-10-10 10:19:34 -04:00
  • c7c3c6aa04 resize parameters tmerritt 2024-10-10 09:19:08 -04:00
  • 4217571ded rename to gemma add gemmaegui tmerritt 2024-10-09 15:16:47 -04:00
  • 067164c657 adds more test roms adds list of test roms and ability to load as desired passes the Corax+ opcode test now tmerritt 2024-10-09 09:44:51 -04:00
  • 6fe644ef46 adds support for showing/hiding the 3 windows - memory - video - registers tmerritt 2024-10-08 19:44:58 -04:00
  • d06bc3fd87 stack now traps overflow and underflow fixes missing whitespace adds multi_sprite test output tmerritt 2024-10-08 10:30:20 -04:00
  • b4383436aa emmagui isnt rendering correctly. backend isnt writing a sprite correctly and attempting to poke outside memory tmerritt 2024-10-07 13:33:35 -04:00
  • d4273dfb13 fixes pc tmerritt 2024-10-07 11:08:02 -04:00
  • 495745c19c DrawSprite passes test now. tmerritt 2024-10-07 08:37:47 -04:00
  • 24634637b2 video rendering might work. cant focus tmerritt 2024-10-06 12:32:18 -04:00
  • 8c3cc5085c updates tests to cover most code. -> Draw Sprite -> Ret -> Call tmerritt 2024-10-06 10:33:02 -04:00
  • d1e39307a7 more byte poke tests tmerritt 2024-10-04 14:58:06 -04:00
  • f1c8c9a683 peek/poke tests tmerritt 2024-10-04 14:55:06 -04:00
  • ef1b6e70f7 go to lunch tmerritt 2024-10-02 12:02:50 -04:00
  • 9d3fabe0c3 more test suite evolution tmerritt 2024-10-01 15:20:53 -04:00
  • 24ea413848 more test etc. video needs stuff bad tmerritt 2024-09-28 22:20:51 -04:00
  • 731f20d894 more fixed tests and covered text. tmerritt 2024-09-28 08:55:35 -04:00
  • fc62512edd now blows up with the hard test. the easy one runs but the rendering is still not done tmerritt 2024-09-26 13:21:19 -04:00
  • 7436200a6f adds better handling for invalid instructions adds tests for invalid instructions adds tarpaulin for generating coverage tmerritt 2024-09-26 12:46:26 -04:00
  • 9c60454270 coverage at 100% - delay_timer - keypad - sound_timers - video - util tmerritt 2024-09-26 11:12:44 -04:00
  • 7b36061268 registers better integrated more tests and docs to the executors tmerritt 2024-09-25 11:26:09 -04:00
  • 0075c5ef7d more tests. registers are their own struct now tmerritt 2024-09-25 09:05:25 -04:00
  • d00d093b11 moves instruction code into instruction from computer adds test suite to verify encode/decode of instructions. (( next is execution of instructions )) moves utility code for splitting parts of instructions to its own place with tests tmerritt 2024-09-24 11:17:10 -04:00
  • 9eb735a858 timers closer display closer tmerritt 2024-09-24 10:00:13 -04:00
  • d6f7c73de3 add test chip8 file more decoder and executor code lots and lots more tests. lots and lots and lots and lots more needed tmerritt 2024-09-23 16:12:52 -04:00
  • c8259157c5 laptop work tmerritt 2024-09-21 14:31:21 -04:00
  • a12b5f254c growth tmerritt 2024-09-14 08:04:11 -04:00
  • 95d4e6c32c box swap tmerritt 2024-09-11 13:39:20 -04:00
  • 1a59524f02 gotta take a break tmerritt 2024-08-18 18:15:42 -04:00
  • 6dc9ce3721 emma now has ability to decode an instruction and to display video and system memory tmerritt 2024-08-17 13:40:19 -04:00
  • ceb62d2c53 Initial commit tmerritt 2024-07-22 14:07:35 -04:00