summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvin <git@vineetk.net>2024-06-10 12:55:40 +0530
committervin <git@vineetk.net>2024-06-10 14:28:13 +0530
commitebdf50cdf3a357a0e37a5751fd9d78ae975979a0 (patch)
tree51add6cf1a1e0dccd90d56aa2c4e854267770a27
parent454276a50c5843e3401f9bc54d80cb7dda40b782 (diff)
implement tay, txa, tya
-rw-r--r--cpu.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/cpu.c b/cpu.c
index acb4efb..d754c15 100644
--- a/cpu.c
+++ b/cpu.c
@@ -588,7 +588,10 @@ tax(void)
588static void 588static void
589tay(uint8_t arg) 589tay(uint8_t arg)
590{ 590{
591/* TODO: complete this */ 591 regs.y = regs.a;
592
593 STATUS_UPDATE_ZERO(regs.y);
594 STATUS_UPDATE_NEGATIVE(regs.y);
592} 595}
593 596
594static void 597static void
@@ -600,7 +603,10 @@ tsx(uint8_t arg)
600static void 603static void
601txa(uint8_t arg) 604txa(uint8_t arg)
602{ 605{
603/* TODO: complete this */ 606 regs.a = regs.x;
607
608 STATUS_UPDATE_ZERO(regs.a);
609 STATUS_UPDATE_NEGATIVE(regs.a);
604} 610}
605 611
606static void 612static void
@@ -612,7 +618,10 @@ txs(uint8_t arg)
612static void 618static void
613tya(uint8_t arg) 619tya(uint8_t arg)
614{ 620{
615/* TODO: complete this */ 621 regs.a = regs.y;
622
623 STATUS_UPDATE_ZERO(regs.a);
624 STATUS_UPDATE_NEGATIVE(regs.a);
616} 625}
617 626
618static void 627static void