Commit graph

42 commits

Author SHA1 Message Date
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
89d4196ccf reformat code 2024-12-04 22:43:04 +02:00
bc56fca299 implement Jump, SetRegister, AddValueToRegister 2024-12-04 22:34:19 +02:00
95b769d227 decode instruction using pattern matching 2024-12-04 00:07:33 +02:00
Denis-Cosmin NUTIU
7ecfff3e0d implement clear display instruction 2024-12-02 23:39:22 +02:00
Denis-Cosmin NUTIU
28ddc9b690 remove memory debug logs 2024-12-02 23:22:02 +02:00
Denis-Cosmin NUTIU
3f24509955 add better error reporting to fetch stage 2024-12-01 23:11:50 +02:00
Denis-Cosmin NUTIU
6721857320 add raw method to instruction.rs 2024-12-01 23:11:06 +02:00
Denis-Cosmin NUTIU
3944ae36a8 add tests for instruction.rs 2024-12-01 23:10:46 +02:00
Denis-Cosmin NUTIU
d8e221e05a fix instruction.rs 2024-12-01 23:10:39 +02:00
Denis-Cosmin NUTIU
fba4c9e5e7 implement fetch from pipeline stage 2024-12-01 13:37:38 +02:00
e31c05ac9b Implement a stack for emulation 2024-11-29 22:43:32 +02:00
3c6aad798c refactor emulator to use generics with trait constraint 2024-11-24 21:50:19 +02:00
668d2a18d5 Add terminal display.rs 2024-11-24 21:00:32 +02:00
6e76f96467 add tests 2024-11-22 23:14:52 +02:00
Denis-Cosmin NUTIU
811b4fa788 implement rom loading 2024-11-18 17:39:27 +02:00
7ff993b15a add README.md 2024-11-17 23:09:11 +02:00
1d2844e495
Create LICENSE 2024-11-17 23:08:18 +02:00
4c0f41e274 Initial commit 2024-11-17 23:07:20 +02:00