24 Commits

Author SHA1 Message Date
494a73eb89 prep for trait code 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
2024-11-09 20:07:21 -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
2024-11-06 10:40:52 -05:00
434cf92414 weekend work 2024-11-04 10:38:46 -05:00
4e52b5b05a ui update 2024-11-01 17:40:39 -04:00
00c75a82e5 more sample roms.
more coverage.
2024-11-01 09:41:20 -04:00
13ceb61c97 more passing tests. almost have coverage of instructions back 2024-10-31 15:01:32 -04:00
d8b14fa084 more unit tests working.
imgui drawing directly to background now
2024-10-30 15:04:54 -04:00
011874bca6 apply of clippy.
fixed missing imports and builds and tests as expected again
2024-10-30 09:48:59 -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
2024-10-29 15:56:34 -04:00
1694157e27 move tests to unit_tests to clean up individual files
adds start of font characters
2024-10-27 17:52:19 -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
2024-10-27 11:41:25 -04:00
eccc3fe9e3 evolve egui interface
move more control back up to the ComputerManager
2024-10-22 08:25:08 -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()
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
2024-10-17 14:50:15 -04:00
4cc56db489 lots more docs in the instructions
more speedups
2024-10-16 16:04:45 -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
2024-10-16 11:45:01 -04:00
448aeab154 BUGFIX: Collision works better, not 100%
BUGFIX: Video Reset works.
2024-10-14 12:13:46 -04:00
5e290d825b more roms 2024-10-14 12:13:33 -04:00
683b0fc51a more roms to play with
egui now renders the video correctly
2024-10-12 14:16:14 -04:00
bfb615cfe7 more dump of "Emma" for Gemma
Video reset now tests ok
gemma egui interface now implements stupid workaround for video reset
2024-10-12 11:22:37 -04:00
c9ef6d4e04 working on gemmaegui to build a usable UI 2024-10-11 15:02:15 -04:00
2ef8a78c32 start of computer integration tests 2024-10-11 08:51:44 -04:00
e176ee5638 8xy4 and 8xy5 pass.
more flag tests passing

removes legacy code
moves 'gemmaemu' into 'gemma' crate
moves 'gemmaimgui' into its own crate

update to gemma
2024-10-10 15:26:56 -04:00