anchor.diff:      let Fetch1Real () =
           IfReady <| Fetch1RealInternal
   
  +    let Fetch1Internal () =
  +        myIFlag <- i
  +        i <- iFlagPending
  +        match branchIrqHack, nmi, (irq && (not myIFlag)) with
  +            | false, true, _ ->
  +                interruptPending <- false
  +                ea <- nmiVector
  +                opcode <- vopNmi
  +                nmi <- false
  +                mi <- 0
  +                restart <- true
  +            | false, false, true ->
  +                interruptPending <- false
  +                ea <- irqVector
  +                opcode <- vopIrq
  +                mi <- 0
  +                restart <- true
  +            | _ -> Fetch1RealInternal()
  +
  +
       let Fetch1 () =
  -        IfReady <| fun _ ->
  -            myIFlag <- i
  -            i <- iFlagPending
  -            match branchIrqHack, nmi, (irq && (not myIFlag)) with
  -                | false, true, _ ->
  -                    interruptPending <- false
  -                    ea <- nmiVector
  -                    opcode <- vopNmi
  -                    nmi <- false
  -                    mi <- 0
  -                    restart <- true
  -                | false, false, true ->
  -                    interruptPending <- false
  -                    ea <- irqVector
  -                    opcode <- vopIrq
  -                    mi <- 0
  -                    restart <- true
  -                | _ -> Fetch1RealInternal()
  +        IfReady <| Fetch1Internal
   
       let Fetch2 () = ReadMemoryPcIncrement <| SetOpcode2
       let Fetch3 () = ReadMemoryPcIncrement <| SetOpcode3
       let PushPch () = Push (GetPch()) <| ignore
       let PushPcl () = Push (GetPcl()) <| ignore
   
  +    let DecrementS () =
  +        s <- (s - 1) &&& 0xFF
  +
       let PushDummy () =
  -        ReadMemoryS <| fun _ -> s <- (s - 1) &&& 0xFF
  +        ReadMemoryS <| (ignore >> DecrementS)
   
       let PushPInterrupt newB newEa =
           b <- newB
  
positive.code:                 | Uop.EndSuppressInterrupt -> EndSuppressInterrupt
                  | Uop.End -> End
                  | Uop.EndBranchSpecial -> EndBranchSpecial
                  | Uop.JamFFFE -> fun _ -> ReadMemory 0xFFFE ignore |> ignore; true
                  | Uop.JamFFFF -> fun _ -> ReadMemory 0xFFFF ignore |> ignore; true
                  | _ -> fun _ -> ReadMemory 0xFFFF ignore |> ignore; false
          then
              mi <- mi + 1
  
  
negative.code:                 true
              | _ -> false
  
      let FetchPclVectorInternal () =
          if nmi && ((ea = brkVector && b) || (ea = irqVector && (not b))) then
              nmi <- false
              ea <- nmiVector
          aluTemp <- ReadMemoryInternal ea
          
      let FetchPclVector () =
          IfReady <| FetchPclVectorInternal
  
      let FetchPchVectorInternal () =
          aluTemp <- aluTemp ||| (ReadMemoryInternal(ea + 1) <<< 8)
          pc <- aluTemp
              
      let FetchPchVector () =
          IfReady <| FetchPchVectorInternal
  
      let Imp operation = FetchDummy operation
      let ImpIny () = Imp <| fun _ -> (Inc y; y <- aluTemp)
  