pitchBend :: Float -> Word8 -> Z80ASM
pitchBend startingFreq iterations = do
  ld HL (pitchCode startingFreq) -- starting pitch.
  decLoopB iterations $ do
    push BC
    push HL           -- store pitch.
    ld DE 1           -- very short duration.
    call BEEPER       -- ROM beeper routine.
    pop HL            -- restore pitch.
    dec HL            -- pitch going up.
    pop BC
pitchBend :: Float -> Word8 -> Z80ASM
pitchBend startingFreq iterations = do
  ld HL (pitchCode startingFreq) -- starting pitch.
  decLoopB iterations $ do
    push BC
    push HL           -- store pitch.
    ld DE 1           -- very short duration.
    call BEEPER       -- ROM beeper routine.
    pop HL            -- restore pitch.
    dec HL            -- pitch going up.
    pop BC
pitchBend startingFreq iterations = do
  ld HL (pitchCode startingFreq) -- starting pitch.
  decLoopB iterations $ do
    push BC
    push HL           -- store pitch.
    ld DE 1           -- very short duration.
    call BEEPER       -- ROM beeper routine.
    pop HL            -- restore pitch.
    dec HL            -- pitch going up.
    pop BC