| |
Abynx
Registered: Jun 2024 Posts: 2 |
SDI fadeout
How on earth would one fade out a tune in SDI? I've tried making multiple patterns with a volume decrease but the drums don't like it. Is there code I should be adding in the finalizing stage in turbo assembler ? Thanks for any help. I'm super new to this and pretty much still getting familiar with my breadbin. |
|
| |
TheRyk
Registered: Mar 2009 Posts: 2244 |
Not an SDI expert (not even a real musician) but a Sledgehammer solution/easiest way of fading any instrument might be doing it not in a tracker but in the code playing your .SID file by reducing $D418 gradually |
| |
6R6
Registered: Feb 2002 Posts: 245 |
Use the built in fadeout routine. Call it with a value in the a register. Note that you can both fadein and fadeout. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
Quote:but a Sledgehammer solution/easiest way of fading any instrument might be doing it not in a tracker but in the code playing your .SID file by reducing $D418 gradually
Most players will write to $d418 every frame though, so doing what you say outside of the player will just result in farting noise :)
You'll have to disassemble the player, and look for a sequence like
lda #$0f
ora #$10
sta $d418
and modify the lda value to change the volume |
| |
TheRyk
Registered: Mar 2009 Posts: 2244 |
OFFTOPIC
Quoting chatGPZ...
Most players will write to $d418 every frame though, so doing what you say outside of the player will just result in farting noise :)
...
Didn't we agree on every fart is worth a release some years ago?
Just kidding, yeah, hacking what is already built in players would of course make even more sense than poking $D418 twice per frame (once inside and once outside player routine)...
BTT 6RG's advice seems more what the TS is asking for |
| |
Joe
Registered: Apr 2002 Posts: 229 |
I think there was a musical release a few years ago, which got the notion of "pressing that fart", about it. ;D |
| |
Krill
Registered: Apr 2002 Posts: 2980 |
Writing to $D418 each frame additionally to the player was a very common mistake throughout the... early 90s, at the least. =)
So yes, hack the player, or use a readymade fadeout routine if it has one. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
What Oxyron Demo was it at Mekka? :D |
| |
Perplex
Registered: Feb 2009 Posts: 255 |
Some players make it quite non-obvious where and how the volume register is written, so instead of disassembling the player or hunting through memory, use the monitor and create a watch point to find it: "watch store d418".
Coder challenge: create a command line tool that takes a sid file as input, and outputs the address you need to poke to externally fade in/out the tune while it is playing. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
Quote: What Oxyron Demo was it at Mekka? :D
4 Years
brrrrrrzzzzzzzt :D (use 6581) |