diff --git a/main.cpp b/main.cpp index b644d52..c1150cd 100644 --- a/main.cpp +++ b/main.cpp @@ -463,8 +463,12 @@ void render() render_sprites(offset); + vdp1.reg.PTMR = PTMR__PTM__NOW; + vdp2.reg.SCXIN0 = offset.x; + vdp2.reg.SCXDN0 = 0; vdp2.reg.SCYIN0 = offset.y; + vdp2.reg.SCYDN0 = 0; render_map(); } @@ -480,8 +484,8 @@ void v_blank_in_int() sh2.reg.FRC.L = 0; sh2.reg.FTCSR = 0; // clear flags - update(); render(); + update(); // wait at least 300us, as specified in the SMPC manual. // It appears reading FRC.H is mandatory and *must* occur before FRC.L on real @@ -549,7 +553,7 @@ void init_vdp1() vdp1.vram.cmd[2].CTRL = CTRL__END; // start drawing (execute the command list) on every frame - vdp1.reg.PTMR = PTMR__PTM__FRAME_CHANGE; + //vdp1.reg.PTMR = PTMR__PTM__FRAME_CHANGE; } void init_vdp2()