I see the VHDL code already exists. It is very similar to the code for writing that follows, the bulk of the code consists of a mapping between the 8-bit register interface and the internal registers. Are there no optimisation strategies for VHDL to allow both reading and writing to reuse the same register mapping logic, reducing the need for extra logic gates to only very few?
Additionally, I see an opportunity to save logic gates elsewhere; I notice the “extra registers” feature is present in the VM2413 implementation. This feature is exclusive to VM2413 and does not exist in a real YM2413 OPLL, so no software supports it. It is also disabled on the 1chipMSX to save logic gates, so in order to free up space I would recommend to do the same in Carnivore2.
Hi Alexey, is there really no more space for pseudo stereo?
This game just sounds fantastic in stereo .. regards
Hi Alexey, is there really no more space for pseudo stereo?
This game just sounds fantastic in stereo .. regards
https://youtu.be/TQvfYfiWxZg
There's no more space left for something like that...
Update 16.11.2021
- Fixed a bug in Boot Menu that prevented saving the port number when exiting the Configuration screen. Please download the ZIP archive again and re-flash the Boot Menu from BOOTCMFC.BIN into the cartridge
- New utility C2FINDER was created to identify Carnivore1 and Carnivore2 in a system using two different methods
Carnivore1? Is there any info on what this was?
Found some here, it should be added to the Wiki. Very similar to the MegaFlashROM SCC+ in functionality but with more advanced tools (cman) to edit the existing content. Nice!
Additionally, I see an opportunity to save logic gates elsewhere; I notice the “extra registers” feature is present in the VM2413 implementation. This feature is exclusive to VM2413 and does not exist in a real YM2413 OPLL, so no software supports it. It is also disabled on the 1chipMSX to save logic gates, so in order to free up space I would recommend to do the same in Carnivore2.
Could vgmplay not benefit from this extra mode as it might allow VRC7 emulation? From what I understand the extra mode should allow custom patches on all channels. The problem of course that when a song is switching to another patch vgmplay would have to write the patch to the registers (which may cause delays).
Could vgmplay not benefit from this extra mode as it might allow VRC7 emulation?
The only game which uses VRC7 is Lagrange Point and it requires the NES sound chip as well so there’s not much point in adding VRC7 support. And VRC7 can also be emulated on OPL4 which is widespread, while VM2413 is kinda niche especially considering the 1chipMSX has the extra mode disabled.
Anyway there’s of course tons of things that are nice to have, but when we’re talking about a device starved for FPGA space, I think there’s no need for the YM2413 emulation to include special extra functions like this.
From what I understand the extra mode should allow custom patches on all channels. The problem of course that when a song is switching to another patch vgmplay would have to write the patch to the registers (which may cause delays).
Not quite, the extra registers feature basically allows you to redefine the instrument ROM.
Yeah I agree for Carnivore2 it is best to ditch those additions and free up some space. And I forgot alabout the NES APU being used as well (it was just what came to mind after reading VM2413 docs)…
Could vgmplay not benefit from this extra mode as it might allow VRC7 emulation?
The only game which uses VRC7 is Lagrange Point and it requires the NES sound chip as well so there’s not much point in adding VRC7 support. And VRC7 can also be emulated on OPL4 which is widespread, while VM2413 is kinda niche especially considering the 1chipMSX has the extra mode disabled.
Anyway there’s of course tons of things that are nice to have, but when we’re talking about a device starved for FPGA space, I think there’s no need for the YM2413 emulation to include special extra functions like this.
Some of us also use VRC7 to make new music, it's not just Lagrange Point. The NES sound chip, on the other way, can also be partially emulated by SCC and PSG. But I think you make a fair point about FPGA space starvation. I for one would love being able to listen to VRC7 music on an MSX, but I understand it's probably also too niche for most people.
However, I can still make VRC7+S5B music with FamiTracker, which could be perfectly playable on an MSX if I didn't use any of the native NES sound channels. I wonder how much would it cost in terms of FPGA space to just add the VRC7 instrument set to current YM2413 FPGA implementations, perhaps selectable via an extended register.
If you tested the Beta, but didn't find any problems, I would appreciate if you could still write to the e-mail address mentioned in the TXT file. Otherwise I won't see whether anyone actually tested the Beta. Thanks in advance.