Opened 15 years ago
Last modified 3 years ago
#3494 new defect
SCUMM: Zak McKracken - PCJR/Tandy emulation differs from actual Tandy 1000
|Reported by:||SF/cowclops||Owned by:|
In games that support Tandy sound, certain notes (particularly the low bass line in Zak McKracken and the plinky opening in Maniac Mansion) have different timbre than they sound like on the real hardware. For example, on the real Tandy, the climbing bass line is clearly the same synth note, it just increases in pitch. In ScummVM, the initial, lowest note sounds strange and then as it hits the next pitch it changes back to sounding the same as the real Tandy.
Since a picture is worth a thousand words, I'd say a sound file should be worth just as many, so I'll just post the comparison recordings. In the recording, it goes scummvm->tandy so the first recording is the weird sound, and the second of each recording is the original hardware. You'll see what I mean.
Ticket imported from: #1847518. Ticket imported from: bugs/3494.
Change History (9)
by , 15 years ago
- Zak on scummvm 2. Zak on Tandy 1000
by , 15 years ago
- Maniac Mansion on ScummVM 2. Maniac Mansion on Tandy 1000
comment:1 by , 15 years ago
File Added: maniacscumm.mp3
comment:2 by , 15 years ago
Could this be related to the added filter for PCjr emulation? see the discussion at earlier feature request at http://sourceforge.net/tracker/index.php?func=detail&aid=1158455&group_id=37116&atid=418823
comment:3 by , 15 years ago
No. A low pass filter would decrease high frequency output (relative to wide band operation) and thus make it muffled, but this is involving only the lowest notes of a certain wave form. I've noticed the problem since back when there was too much of a low pass filter, and decreasing it didn't fix it. (Just made it less muffled sounding, which affects ALL of the notes).
I have no idea what would cause the synthesis to go wacky on certain notes though, since if you can produce the correct wave form at frequency F, you should be able to produce the correct waveform at, say, F / 2 or anything you want.
comment:4 by , 15 years ago
|Priority:||normal → low|
|Summary:||ScummVM PCJR/Tandy audio differs from actual Tandy 1000 → AUDIO: PCJR/Tandy emulation differs from actual Tandy 1000|
comment:5 by , 11 years ago
I touched this code in disasm a few weeks ago and noticed that at least my MI 1 EGA version uses some other tables for (PC Speaker/)PCjr related things than we have in our code. I don't know whether this might be related to this, but someone with Zak might want to check into its PCJr sound driver implementation and compare it against ours to see whether they are any differences.
comment:6 by , 11 years ago
|Summary:||AUDIO: PCJR/Tandy emulation differs from actual Tandy 1000 → ZAK: PCJR/Tandy emulation differs from actual Tandy 1000|
comment:7 by , 3 years ago
|Summary:||ZAK: PCJR/Tandy emulation differs from actual Tandy 1000 → SCUMM: Zak McKracken - PCJR/Tandy emulation differs from actual Tandy 1000|