Similar to the adjacent topic this one is going to be used to collect random pieces discovered during the disassembly of Ecco I.
Eventually this post is going to be upgraded with an index and the like.
Ecco I Disassembly: Random Bits and Bobs
Re: Ecco I Disassembly: Random Bits and Bobs
Ecco 1 Revision 1 sound driver is interesting and in ways more mature than one used in Tides of Time.For one it actually supports Music Tempo as well as has the ability to dynamically change BGM volume. The latter is leveraged during the pause screen where music fades out gently and back in when unpaused.
The general layout is the same, CPU pokes several variables in Z80 memory to control it:
0x00a01ff8- Command Code- 0 - stop;
- 1 - play BGM;
- 2 - set music volume;
- 3 - set music tempo;
- 4 - play SFX
0x00a01ff9- BGM ID0x00a01ffa- BGM Volume (0 .. 127)0x00a01ffb- BGM Tempo (-120 .. 120)0x00a01ffc- SFX ID
Curiously, Tides of Time does not seem to have support for this and there is no variable declared in Z80 memory for this, nor a subroutine to do that.