PAL-Timing scheme for a bad scan line, no sprites:

  |         1         2         3         4         5         6   |
  |3-4-5-6-7-rrrrrgggggggggggggggggggggggggggggggggggggggg-N0-1-2-|Phi-1 VIC
  |              cccccccccccccccccccccccccccccccccccccccc         |Phi-2 VIC
  |xxxxxxxxxxxXXX========================================xxxxxxxxx|Phi-2 CPU

  '-' = idle bus cycle (reads from the last byte of the video bank)

   <num> = pointer fetch for sprite <num>  ;  g = graphics fetch
   r = memory refresh cycle  ;  c = character pointer and/or color data fetch
   N = extra '-' cycles for NTSC added here

   x  = processor executes instructions (BA high, AEC high)
   X  = bus request pending, bus still available (BA low, AEC high);
        processor may execute write cycles, stops on the next read cycle.
  '=' = bus unavailable (BA low, AEC low); processor is blocked because it
        would like to read something.