Page 3 of 4

Re: Family Noraebang (패밀리 노래방)

Posted: Sat Oct 28, 2017 9:54 am
by tepples
Any idea what it does with the expansion cartridge? Do any still exist? Because if the expansion cartridge is for adding new songs, this might be a way to play custom YM2413 music, giving an excuse for implementing full YM2413 in something like FamiTracker.

I've got a few I'd like to see:
  • "Bang Bang" by Jessie J et al., medley with "Le Freak" by Chic
  • "Bang and Blame" by REM
  • "Fireflies" by Owl City, medley with "Feuer frei" by Rammstein

Re: Family Noraebang (패밀리 노래방)

Posted: Sat Oct 28, 2017 12:35 pm
by lidnariq
The ROM seems to expect this behavior:

Code: Select all

Mask: $E003:
  R/W 6000, 6001: YM2413 clone (thank you NewRisingSun)
  R 6003: [D... ....] - SPI (ADC) data
Mask $E00F:
  W 8000: [RBBB BBBB] - R:0-select external ROM; 1-select internal ROM; B-select bank at $8000-$BFFF
                       $C000-$FFFF is always last bank of internal ROM
Mask not yet known:
  W C002: [S... ....] - SPI (ADC) chip select
  W C003: [K... ....] - SPI clock / ADC conversion clock
The strictest address mask possible is $E00F, per the hardware, but specific functions could be more lenient. I'd really like to find out by how much, but ... we'll see what MLX says.

MLX says that the PRG banking register cares about all seven address lines. How odd.

Interestingly, the game doesn't seem to ever explicitly drive SPI data; something must be pulling the node high in order for the SPI ADC to get its required "start" bit. (And then, since there's no obvious way to get the data line to change, it must be clocking in "1 1" for "single-ended conversion" and "pin 3=Ch1")

The ADC code is:

Code: Select all

  LDA #0
  LDY #$FF
  STA $C002 ; chip select falls
  STA $C003 ; SPI clock falls
  STY $C003 ; rises; clock in start bit here
  STA $C003 ; falls
  STY $C003 ; rises; clock in 1:Single or 0:differential here
  STA $C003 ; falls
  STY $C003 ; rises; clock in (Single:1:Ch1 or 0:Ch0) or (Differential:1:Ch1 minus Ch0 or 0:Ch0 minus Ch1)
  STA $C003; falls
  LDX #8
-
  STY $C003; rises
  STX $C003 ; falls; data now valid
  LDA $6003 ; read data
  ASL A
  ROL $00
  DEX
  BNE -
  LDA #$80
  STA $C002 ; raise chip select
and it only runs at 60Hz.

The other interesting bit is that the cart doesn't mix in the audio from the 2A03. All the sound can only come from the FM synthesizer.



To check for an expansion cart, the game checks for a sixteen-byte header ("OPEN FAMILY SONG") mapped at $8000 in the very first bank, and if present, will JSR to $8010. It's possible in intercept NMI partway through by feeding an invalid value to one of the jump table indexes (after it's already done a bunch of random other things). IRQs will cause a spinlock—the IRQ vector points to an RTI.

Re: Family Noraebang (패밀리 노래방)

Posted: Sat Oct 28, 2017 3:28 pm
by NewRisingSun
(issue resolved, see below post.)

Re: Family Noraebang (패밀리 노래방)

Posted: Sat Oct 28, 2017 3:41 pm
by zxbdragon
send me,i try nestopia

Re: Family Noraebang (패밀리 노래방)

Posted: Sat Oct 28, 2017 4:29 pm
by NewRisingSun
All right. Here is my Nintendulator source file for this game, including my (awkward) attempt at Microphone level measurement. Since I don't actually have a microphone, I have tried to make the "MIC" display respond to a simple music line-in signal. It always reads the "wave mapper" device. Since Nintendulator by default does not yet support mapper numbers >255, I needed to change the source file responsible for that as well. I also needed to update the VRC7 emulator to allow for both original YM2413 and VRC7 instrument sets, and to get back the rhythm mode emulation code. The expansion cartridge is supported as well; basically, any PRG ROM exceeding 1 MiB is assumed to be expansion cartridge memory and must come at the beginning of the ROM image.

Compiled Mapper DLL here.

Re: Family Noraebang (패밀리 노래방)

Posted: Sat Oct 28, 2017 5:19 pm
by zxbdragon
NewRisingSun wrote:All right. Here is my Nintendulator source file for this game, including my (awkward) attempt at Microphone level measurement. Since I don't actually have a microphone, I have tried to make the "MIC" display respond to a simple music line-in signal. It always reads the "wave mapper" device. Since Nintendulator by default does not yet support mapper numbers >255, I needed to change the source file responsible for that as well. I also needed to update the VRC7 emulator to allow for both original YM2413 and VRC7 instrument sets, and to get back the rhythm mode emulation code. The expansion cartridge is supported as well; basically, any PRG ROM exceeding 1 MiB is assumed to be expansion cartridge memory and must come at the beginning of the ROM image.

Compiled Mapper DLL here.
thankyou
but MLX not send me rom....

Re: Family Noraebang (패밀리 노래방)

Posted: Sun Oct 29, 2017 12:53 pm
by MLX
Thanks to everyone the rom has been released :beer:

Re: Family Noraebang (패밀리 노래방)

Posted: Mon Oct 30, 2017 6:20 am
by zxbdragon
NewRisingSun wrote:All right. Here is my Nintendulator source file for this game, including my (awkward) attempt at Microphone level measurement. Since I don't actually have a microphone, I have tried to make the "MIC" display respond to a simple music line-in signal. It always reads the "wave mapper" device. Since Nintendulator by default does not yet support mapper numbers >255, I needed to change the source file responsible for that as well. I also needed to update the VRC7 emulator to allow for both original YM2413 and VRC7 instrument sets, and to get back the rhythm mode emulation code. The expansion cartridge is supported as well; basically, any PRG ROM exceeding 1 MiB is assumed to be expansion cartridge memory and must come at the beginning of the ROM image.

Compiled Mapper DLL here.
than you !!! Great! but nonwindows os....

Re: Family Noraebang (패밀리 노래방)

Posted: Sat Nov 11, 2017 5:04 pm
by B00daW
Regarding the dumps on the Bootleg Wiki board, do we have all the expansion boards dumped? This is very exciting news!

Wondering the proper method to get an NSF rip of these now too...

Re: Family Noraebang (패밀리 노래방)

Posted: Sat Nov 11, 2017 10:43 pm
by lidnariq
Record them as VGMs :P

The hardware that they came from doesn't permit combining the YM2413 synthesizer sounds with the 2A03's sounds, so permitting them in an NSF is a little misleading.

On the other hand, maybe explicitly adding a YM2413 option into NSF would stop people from using the YM2413 as through it had the same patch set as the VRC7. Oh, who am I kidding?

Re: Family Noraebang (패밀리 노래방)

Posted: Mon Nov 13, 2017 3:35 pm
by B00daW
Looks like the ICs for K-663A are still being sold; and that they were used in other arcade cabinet games like Mahjong Tenkaigen.

Wonder if the K-663A were decapped that it would present any differences?

Re: Family Noraebang (패밀리 노래방)

Posted: Mon Nov 13, 2017 4:09 pm
by lidnariq
The last I checked—and this could be stale—we didn't have die-extracted values for the YM2413 built-in patches either, so decapping and staining a K-633A wouldn't be sufficient to determine whether it were identical.

Also, the MAME source implies that the K-633A is a knock-off of the UM3567, which is itself a knockoff of the YM2413. I think it's possible that they could all have subtle differences in the patch set.

Here's a page in Brazilian Portuguese that has recording of both the UM3567 and the YM2413 and I don't hear any difference... but I wouldn't trust my ears to be anything resembling authoritative.

Re: Family Noraebang (패밀리 노래방)

Posted: Tue Nov 14, 2017 10:35 pm
by ImATrackMan
tepples wrote:Any idea what it does with the expansion cartridge? Do any still exist? Because if the expansion cartridge is for adding new songs, this might be a way to play custom YM2413 music, giving an excuse for implementing full YM2413 in something like FamiTracker.

I've got a few I'd like to see:
  • "Bang Bang" by Jessie J et al., medley with "Le Freak" by Chic
  • "Bang and Blame" by REM
  • "Fireflies" by Owl City, medley with "Feuer frei" by Rammstein
You can already use the full YM2413 in MML with NSD.lib and play it back on hardware with a TNS-HFX4.

Re: Family Noraebang (패밀리 노래방)

Posted: Wed Nov 15, 2017 6:55 pm
by B00daW
The latest version of the PowerPak VRC7 plugin can swap into YM2413 mode as well.

Re: Family Noraebang (패밀리 노래방)

Posted: Thu Nov 23, 2017 11:29 pm
by NewRisingSun
Can you see from the PCB images whether there is a low-pass filter after the FM chip (or its DAC), and if so, what its parameters are?