Partial PPU implementation

This commit is contained in:
2026-08-09 21:55:44 -05:00
parent b6a7510610
commit 9767b348e1
5 changed files with 8 additions and 4682 deletions
+4
View File
@@ -4,3 +4,7 @@ AGENTS/
AGENTS.md
Cargo.lock
renders/
renders_saved/
debug_out/*
debug_out/pctrace.txt
debug_out/state.txt
-180
View File
@@ -1,180 +0,0 @@
90D4 CYC:29781
90DE CYC:59566
90DE CYC:89351
90DE CYC:119136
90DE CYC:148921
90DE CYC:178706
90DE CYC:208491
90DE CYC:238276
90DE CYC:268061
90DE CYC:297846
90DE CYC:327631
90DE CYC:357416
90DE CYC:387201
90DE CYC:416986
90DE CYC:446771
90DE CYC:476556
90DE CYC:506341
90DE CYC:536126
90DE CYC:565911
90DE CYC:595696
90DE CYC:625481
90D4 CYC:655262
90DE CYC:685047
90DE CYC:714832
90DE CYC:744617
90DE CYC:774402
90DE CYC:804187
90DE CYC:833972
90DE CYC:863757
90DE CYC:893542
90DE CYC:923327
90DE CYC:953112
90DE CYC:982897
90DE CYC:1012682
90DE CYC:1042467
90DE CYC:1072252
90DE CYC:1102037
90DE CYC:1131822
90DE CYC:1161607
90DE CYC:1191392
90DE CYC:1221177
90DE CYC:1250962
90D4 CYC:1280743
90DE CYC:1310528
90DE CYC:1340313
90DE CYC:1370098
90DE CYC:1399883
90DE CYC:1429668
90DE CYC:1459453
90DE CYC:1489238
90DE CYC:1519023
90DE CYC:1548808
90DE CYC:1578593
90DE CYC:1608378
90DE CYC:1638163
90DE CYC:1667948
90DE CYC:1697733
90DE CYC:1727518
90DE CYC:1757303
90DE CYC:1787088
90DE CYC:1816873
90DE CYC:1846658
90DE CYC:1876443
90D4 CYC:1906224
90DE CYC:1936009
90DE CYC:1965794
90DE CYC:1995579
90DE CYC:2025364
90DE CYC:2055149
90DE CYC:2084934
90DE CYC:2114719
90DE CYC:2144504
90DE CYC:2174289
90DE CYC:2204074
90DE CYC:2233859
90DE CYC:2263644
90DE CYC:2293429
90DE CYC:2323214
90DE CYC:2352999
90DE CYC:2382784
90DE CYC:2412569
90DE CYC:2442354
90DE CYC:2472139
90DE CYC:2501924
90D4 CYC:2531705
90DE CYC:2561490
90DE CYC:2591275
90DE CYC:2621060
90DE CYC:2650845
90DE CYC:2680630
90DE CYC:2710415
90DE CYC:2740200
90DE CYC:2769985
90DE CYC:2799770
90DE CYC:2829555
90DE CYC:2859340
90DE CYC:2889125
90DE CYC:2918910
90DE CYC:2948695
90DE CYC:2978480
90DE CYC:3008265
90DE CYC:3038050
90DE CYC:3067835
90DE CYC:3097620
90DE CYC:3127405
90D4 CYC:3157186
90DE CYC:3186971
90DE CYC:3216756
90DE CYC:3246541
90DE CYC:3276326
90DE CYC:3306111
90DE CYC:3335896
90DE CYC:3365681
90DE CYC:3395466
90DE CYC:3425251
90DE CYC:3455036
90DE CYC:3484821
90DE CYC:3514606
90DE CYC:3544391
90DE CYC:3574176
90DE CYC:3603961
90DE CYC:3633746
90DE CYC:3663531
90DE CYC:3693316
90DE CYC:3723101
90DE CYC:3752886
90D4 CYC:3782667
90DE CYC:3812452
90DE CYC:3842237
90DE CYC:3872022
90DE CYC:3901807
90DE CYC:3931592
90DE CYC:3961377
90DE CYC:3991162
90DE CYC:4020947
90DE CYC:4050732
90DE CYC:4080517
90DE CYC:4110302
90DE CYC:4140087
90DE CYC:4169872
90DE CYC:4199657
90DE CYC:4229442
90DE CYC:4259227
90DE CYC:4289012
90DE CYC:4318797
90DE CYC:4348582
90DE CYC:4378367
90D4 CYC:4408148
90DE CYC:4437933
90DE CYC:4467718
90DE CYC:4497503
90DE CYC:4527288
90DE CYC:4557073
90DE CYC:4586858
90DE CYC:4616643
90DE CYC:4646428
90DE CYC:4676213
90DE CYC:4705998
90DE CYC:4735783
90DE CYC:4765568
90DE CYC:4795353
90DE CYC:4825138
90DE CYC:4854923
90DE CYC:4884708
90DE CYC:4914493
90DE CYC:4944278
90DE CYC:4974063
90DE CYC:5003848
90D4 CYC:5033629
90DE CYC:5063414
90DE CYC:5093199
90DE CYC:5122984
90DE CYC:5152769
90DE CYC:5182554
90DE CYC:5212339
90DE CYC:5242124
90DE CYC:5271909
90DE CYC:5301694
90DE CYC:5331479
90DE CYC:5361264
-4500
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -79,7 +79,7 @@ fn run_dbg(path: &str) {
let mut cpu = Cpu::new();
cpu.reset(&mut bus);
let mut dumper = dump::Dumper::new();
let frames: u32 = 180;
let frames: u32 = 360;
for f in 0..frames {
while !bus.frame_done() {
+2
View File
@@ -41,8 +41,10 @@ impl Ppu {
// vblank flag + NMI
if self.cycle == 0 && self.scanline == 241 {
self.status |= 0x80;
if self.ctrl & 0x80 != 0 {
self.nmi_pending = true;
}
}
// clear vblank
if self.cycle == 0 && self.scanline == 261 {
self.status &= !0x80;