Hi, nesdev. I want to add Hybrid(Dendy) mode into VirtuaNES 0.97 for personal desire.
nes.cpp (original v0.97):
But i doubt about constants.
How was calculated FrameIRQ cycles, scanline total cycles, H-Draw, H-Blank and End cycles?
P.S. I've already able to slowdown NTSC-mode to 50FPS, so it looks like Dendy. But i want to do it "right" way.
nes.cpp (original v0.97):
Code:
NESCONFIG NESCONFIG_NTSC = {
21477270.0f, // Base clock
1789772.5f, // Cpu clock
262, // Total scanlines
1364, // Scanline total cycles (15.75KHz)
1024, // H-Draw cycles
340, // H-Blank cycles
4, // End cycles
1364*262, // Frame cycles
29830, // FrameIRQ cycles
60, // Frame rate (Be originally 59.94Hz)
1000.0f/60.0f // Frame period (ms)
};
NESCONFIG NESCONFIG_PAL = {
26601714.0f, // Base clock
1662607.125f, // Cpu clock
312, // Total scanlines
1278, // Scanline total cycles (15.625KHz)
960, // H-Draw cycles
318, // H-Blank cycles
2, // End cycles
1278*312, // Frame cycles
33252, // FrameIRQ cycles
50, // Frame rate (Hz)
1000.0f/50.0f // Frame period (ms)
};
21477270.0f, // Base clock
1789772.5f, // Cpu clock
262, // Total scanlines
1364, // Scanline total cycles (15.75KHz)
1024, // H-Draw cycles
340, // H-Blank cycles
4, // End cycles
1364*262, // Frame cycles
29830, // FrameIRQ cycles
60, // Frame rate (Be originally 59.94Hz)
1000.0f/60.0f // Frame period (ms)
};
NESCONFIG NESCONFIG_PAL = {
26601714.0f, // Base clock
1662607.125f, // Cpu clock
312, // Total scanlines
1278, // Scanline total cycles (15.625KHz)
960, // H-Draw cycles
318, // H-Blank cycles
2, // End cycles
1278*312, // Frame cycles
33252, // FrameIRQ cycles
50, // Frame rate (Hz)
1000.0f/50.0f // Frame period (ms)
};
But i doubt about constants.
How was calculated FrameIRQ cycles, scanline total cycles, H-Draw, H-Blank and End cycles?
P.S. I've already able to slowdown NTSC-mode to 50FPS, so it looks like Dendy. But i want to do it "right" way.