/// <summary> /// Builds up current scanline character information /// Ther GA modifies HSYNC and VSYNC signals before they are sent to the monitor /// This is handled here /// Runs at 1Mhz /// </summary> private void GACharacterCycle() { if (CRCT.VSYNC && CRCT.HSYNC) { // both hsync and vsync active CurrentLine.AddCharacter(Phase.HSYNCandVSYNC); } else if (CRCT.VSYNC) { // vsync is active but hsync is not CurrentLine.AddCharacter(Phase.VSYNC); } else if (CRCT.HSYNC) { // hsync is active but vsync is not CurrentLine.AddCharacter(Phase.HSYNC); } else if (!CRCT.DISPTMG) { // border generation CurrentLine.AddCharacter(Phase.BORDER); } else if (CRCT.DISPTMG) { // pixels generated from video RAM CurrentLine.AddCharacter(Phase.DISPLAY); } }