sorgelig / ZX_Spectrum-128K_MIST

ZX Spectrum 128K for MIST Board
GNU General Public License v2.0
31 stars 18 forks source link

YM2149 reset of /ENABLE register #39

Closed nippur72 closed 3 years ago

nippur72 commented 3 years ago

I noticed the enable register of the YM2149 chip is reset to all "1": https://github.com/sorgelig/ZX_Spectrum-128K_MIST/blob/9713924d41865f3d5712f9daf8fbd9b0489f8697/ym2149.sv#L79 which disables all voices, noises and I/O.

But according to the datasheet, RESET should puts all registers to "0":

image

Is there any specific reason why this behaves differently from the real chip?

sorgelig commented 3 years ago

I don't remember exactly why, but YM2149 went through many adjustments for different purposes. Do you have some game affected by this? Datasheets are not always precise, btw.

nippur72 commented 3 years ago

Not a specific case, we were discussing about a program that relies on the RESET values without explicitly setting the ENABLE register, because that program will behave differently according the way it is RESET. So I was looking among the different implementations for a "right" way to do such reset. I guess the best way to tell is to test on a real chip.