You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Oct 16, 2021. It is now read-only.
Phase reset works on hardware by doing the below pseudocode:
SAVE current MMC5 pulse channel x period state to blah
WRITE %xxxxx000.00000000 to MMC5 pulse channel x period
WRITE blah back to MMC5 pulse channel x period
The command is already assigned to H00/I00 for the 2a0x pulse channels.
Not all emulators support period values of MMC5 >0x08 due to inaccuracy. FamiTracker seems to emulate them.
The text was updated successfully, but these errors were encountered:
not certain, but this may work for MMC5 pulse phase reset
in "player.s"
; MMC5
.if .defined(USE_MMC5) ; Pulse phase reset --B00
ft_cmd_mmc5_phase_reset:
jsr ft_get_pattern_byte
sta var_ch_periodCalcLo + MMC5_OFFSET, x
and #$07
sta var_ch_periodCalcHi + MMC5_OFFSET, x
rts
have to define a command byte for it too
have to do a hard limit in FamiTracker do disallow nonzero values
Phase reset works on hardware by doing the below pseudocode:
The command is already assigned to H00/I00 for the 2a0x pulse channels.
Not all emulators support period values of MMC5 >0x08 due to inaccuracy. FamiTracker seems to emulate them.
The text was updated successfully, but these errors were encountered: