Commit graph

68 commits

Author SHA1 Message Date
a9d252f758 c-like struct for Draw instruction 2024-12-10 19:05:20 +02:00
a464c00836 c-like struct for SetIndexRegister instruction 2024-12-10 19:02:31 +02:00
7f07d3b184 c-like struct for AddValueToRegister instruction 2024-12-10 19:01:34 +02:00
ede70d15a0 use named enum for SetRegister instruction 2024-12-10 18:58:21 +02:00
aa27658864 fix clear display instruction 2024-12-10 18:50:24 +02:00
680ee8adeb add command line arguments via clap crate 2024-12-10 18:45:46 +02:00
2f0e22c79c add a separate thread for input handling 2024-12-10 18:35:04 +02:00
e1ad59c8a6 update README.md 2024-12-09 22:02:54 +02:00
a1390d8e45 get rom path from command line 2024-12-09 21:56:58 +02:00
0112138b78 implement input handling instructions 2024-12-09 21:43:46 +02:00
3beddd9acd modify input module to handle special characters like escape 2024-12-09 21:33:34 +02:00
69d44cda4e implement input module 2024-12-09 21:23:55 +02:00
9334c7752d update README.md 2024-12-09 20:00:24 +02:00
92621fac73 handle timers inside frame update 2024-12-09 19:11:14 +02:00
4e6e470dec update README.md 2024-12-08 23:53:32 +02:00
078ca4b8b9 draw the screen withing its 64x32 size 2024-12-08 23:44:42 +02:00
76e16d6a71 improve fps emulation 2024-12-08 23:44:04 +02:00
717a5a85c6 move constants in the display module 2024-12-08 23:17:48 +02:00
b447f0ccee execute 7 instructions per frame 2024-12-08 18:00:52 +02:00
afe5ed835e attempt to simulate 60 fps 2024-12-08 17:21:13 +02:00
5c8eaca55c take last nibble of font address in VX 2024-12-08 16:50:54 +02:00
7001bb747d fix font character instruction 2024-12-08 16:49:27 +02:00
Denis-Cosmin NUTIU
ca97cb7de8 implement sound module 2024-12-08 12:47:21 +02:00
Denis-Cosmin NUTIU
8369f06194 decode keypad instructions 2024-12-08 12:25:35 +02:00
Denis-Cosmin NUTIU
0ce357b8ce fix binary coded decimal instruction 2024-12-08 12:11:31 +02:00
Denis-Cosmin NUTIU
5818815981 implement bcd, load, store memory instructions 2024-12-08 12:09:32 +02:00
Denis-Cosmin NUTIU
7e956277ac fix timers bug 2024-12-07 22:52:42 +02:00
Denis-Cosmin NUTIU
db2c360df3 add unit tests 2024-12-07 22:48:19 +02:00
Denis-Cosmin NUTIU
d42a0ec2c5 fix instruction parsing 2024-12-07 22:23:53 +02:00
Denis-Cosmin NUTIU
9dd876b622 fix shift 2024-12-07 22:13:58 +02:00
Denis-Cosmin NUTIU
e948d3b5fb lay structure for BCD conversion, store and load memory 2024-12-07 22:02:43 +02:00
Denis-Cosmin NUTIU
63d7fb1464 fix set instruction 2024-12-07 21:58:26 +02:00
Denis-Cosmin NUTIU
8d13bd6b18 update shift instruction to modern behavior 2024-12-07 21:43:57 +02:00
Denis-Cosmin NUTIU
e3a4c023a3 implement font character instruction 2024-12-07 21:39:43 +02:00
Denis-Cosmin NUTIU
95b0d4656f implement add to index instruction.rs 2024-12-07 21:32:40 +02:00
Denis-Cosmin NUTIU
cbb5c2db78 implement timer logic 2024-12-07 21:27:12 +02:00
Denis-Cosmin NUTIU
f8f79bc2e6 implement timer instructions 2024-12-07 18:23:00 +02:00
Denis-Cosmin NUTIU
dec7183ce7 add more roms 2024-12-07 18:22:21 +02:00
Denis-Cosmin NUTIU
635020237b add input module 2024-12-07 18:11:22 +02:00
Denis-Cosmin NUTIU
f4b44cfd31 add astro dodge rom 2024-12-07 18:01:41 +02:00
d6ef37daf9 implement skip conditional instructions set 2024-12-07 12:37:01 +02:00
f9a81e200c implement generate random number + jump with offset 2024-12-06 23:51:05 +02:00
c575833f85 add test roms 2024-12-06 17:16:49 +02:00
09528c4cd2 Implement logical & arithmetic instructions 2024-12-06 17:16:43 +02:00
52c03aa6ae implement call & return instructions 2024-12-06 15:10:03 +02:00
49e078683d use ratatui for the display 2024-12-06 00:19:24 +02:00
c3a17f0b47 implement set index register 2024-12-05 09:44:16 +02:00
f47228bf8c refactor display struct 2024-12-04 23:48:59 +02:00
2f4e615ab3 refactor the pattern matching 2024-12-04 23:12:11 +02:00
d63f5580be implement non-working draw instruction 2024-12-04 23:04:56 +02:00