| |
Bamu® Account closed
Registered: May 2005 Posts: 1332 |
Stupid Hardrestart...
A question to all msx-player coders.
Why 99% of all players have a completely worse hardrestart???
I only know a few (not more than 5) which owns a really HARD = good sound-restart.
With every other player it's impossible to create modern/up-to-date instruments.
I think there are some nice editors (with nice interfaces) out there, but the completely outdated hardrestart destroys everything. :(
So, any explanation for this? |
|
... 92 posts hidden. Click here to view all posts.... |
| |
cadaver
Registered: Feb 2002 Posts: 1160 |
Ouwehand, later Hubbard, CreaMD to just name a few.. |
| |
Bamu® Account closed
Registered: May 2005 Posts: 1332 |
Quote: Ouwehand, later Hubbard, CreaMD to just name a few..
Hmm, for my taste Ouwhand+Hubbard aren't really hifi. :) |
| |
cadaver
Registered: Feb 2002 Posts: 1160 |
To some degree agreed about Hubbard, there are only a very few select tunes (for example Ace II, or IK+) that sound quite "new", and in the end he went to USA and accepted (was forced to accept?) the dreaded NTSC sound :)
But I don't know what the fuck should be changed in for example Last Ninja 3 or Flimbo tunes for them to be accepted in your holy hifi criteria.
|
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
Could someone please clarify this hard restart for me. I'm just a bit confused. When setting the gate bit the ADS logic is started right? and when unsetting the gate bit the Release kicks in. So, what's the deal with hard restart then? In what way does it "enhance" the wave form? |
| |
CreaMD
Registered: Dec 2001 Posts: 3057 |
Polishing of sound always leads to sacryfying of "drive" and natural feeling. Some Taki, DOS or Grabowski's songs sound very polished and more like soundtests. Good music isn't just hifi sounds and drumbeats..
PEET (Fly_Around_the_World.sid) or CANE (Liberator_title.sid) tried to make make music in sosperec (although sometimes with variable instant-hit-potential).
I must admint though, that I don't have a slightest right to judge the hungarian elite composers ;-)) |
| |
cadaver
Registered: Feb 2002 Posts: 1160 |
Jackasser, it makes sure that the next attack indeed starts (especially in fast passages -- to counteract the SID's somewhat flaky internal ADSR logic), and that it starts in the same way every time.
Then there's the "sexy" factor what nata demands: the first frame of sound (usually noise in drum, or combined drum+bass instruments) is short, neat and controlled sounding. And bugfree :) |
| |
Graham Account closed
Registered: Dec 2002 Posts: 990 |
@JackAsser:
If the ADSR curve of the previous note has not ended yet, Attack will not start from 0. This is especially a problem when the ADSR phase has not even started the Release phase.
The oscillator reset is not required for hardrestart, but some players do it. |
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
@Cadaver: I see. So a quick off-on pulse on the gate bit doesn't always result in a new attack? Any reasons why? Also, in practise, how is this hard restart implemented. |
| |
cadaver
Registered: Feb 2002 Posts: 1160 |
It's all in the internal logic, for example resid should mimic the real ADSR hardware quite exactly, look in the source code how it uses & sets the internal counters :)
Some frames before next note, the gate is set off. Then on the same frame or slightly after, the ADSR is reset to a fixed value, for example $0F00 or $0000, to make the envelope generator go to 0 controllably. Based on timing and write order (ie. waveform or ADSR first), different feel for the attack & first frame of the next note is reached.
The "sexy" hardrestart seems to happen so that ADSR is always written before waveform, and $0F00 is usually used. So:
T minus 3: ADSR to $0F00, gate off
T minus 2: nothing special, gate is still off
T minus 1: ADSR to instrument values, gate on (waveform reg. value $09 for oscillator reset or $01 for plain gateon)
T minus 0: set waveform & frequency + all other stuff for new note
On the other hand, the oldskool Hubbard method (Commando etc.) writes waveform first:
T minus 2: gate off, ADSR $0000
T minus 1: nothing happens
T minus 0: set waveform, ADSR, frequency etc. for new note.
This produces longer/louder first frame sound, which is not sexy :) But it is less susceptible to timing changes, and works mostly the same way on NTSC too.
There are also other methods of hardrestart, see the documentation of ATMDS, which lists 4 of them (and all of them should be sexy, so the Hubbard HR is not included) |
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
@cadaver: Ahh I see. Interesting. :D |
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 - Next |