-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improvements to Roland D-70 #13187
Improvements to Roland D-70 #13187
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool! I have no merge rights but the code looks good
By the way: if you have further interest into emulating the D70, I got all the custom sound chips decapped and imaged. |
ROM_SYSTEM_BIOS(0, "v203", "Version 2.03") | ||
ROMX_LOAD("roland_d70_v110_combined.bin", 0x00000, 0x20000, CRC(52deab1e) SHA1(87d7196888edec65c9feddd16d4c715f6992abc7), ROM_BIOS(0)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why was this called “Version 2.03” to begin with?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think wrong copy paste from my side, sorry
ROM_SYSTEM_BIOS( 2, "v114", "Version 1.14 - September 20, 1990" ) | ||
ROM_SYSTEM_BIOS( 3, "v112", "Version 1.12 - August 8, 1990" ) | ||
ROM_SYSTEM_BIOS( 4, "v110", "Version 1.10 - April 19, 1990" ) | ||
ROM_SYSTEM_BIOS( 5, "v100", "Version 1.00 - March 10, 1990" ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's the reasoning for omitting the dots?
How does one deal with the ambiguity when some ROM eventually reaches version v10.0
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It’s unnecessary clutter when the minor version is always two digits and there’s no patch version. If they went to two-digit major versions, it would still be obvious that v1000
is 10.00
.
For other cases, see e.g. this (major version and minor version always one digit, patch version may or may not be present):
https://github.com/mamedev/mame/blob/mame0273/src/mame/osborne/osborne1.cpp#L1069
Or this:
https://github.com/mamedev/mame/blob/mame0273/src/mame/acorn/z88.cpp#L609
Or this:
https://github.com/mamedev/mame/blob/mame0273/src/mame/alesis/alesis.cpp#L480
We don’t put punctuation in the BIOS short names unless it’s really necessary for it to work as a mnemonic.
Unless I missed something, only that one has something dumpable. It's a table that's similar but not identical to tanh. If I were to guess, I'd say it's used to handle saturation in the simulated filter. |
@galibert thank you for dumping it! I don't think it's filter related, since the filter is handled in another chip (TVF). In other similar Roland chips, the ROM stores coefficients for a 4-point interpolation algorithm, maybe it's possible that it has a similar usage. That PCM2 chip does in fact decoding and interpolation of DPCM samples.
Correct, but the others can still be traces and reverse engineered (if anybody else is interested in doing it) |
Before:
After:
(@giulioz)