Ciao from a fellow Italian :)
This is quite an interesting utility, which at first I was going to use in my game, but then decided otherwise.
The main reason lies in the Export feature: while it makes sense to export a binary PRG file for BASIC users, it's quite limiting for Assembly coders.
In addition to providing the ability to export a binary file for BASIC programs, your utility should also be able to export an Assembly source file, with all memory addresses involved expressed with labels, not hardwired values.
This way, an Assembly programmer can easily incorporate your sound routine (and its data) into their source code, leaving their Assembler to correctly relocate the routine and its data.
This would also apply to the addresses in the zero page: they should be easily modified by directly editing the source file.
Not being able to do that made me abandon the idea of using your utility, such a pity.
Speaking of the Export feature: the part of the text concerning the Assembly folks shows some example code for the IRQ setup, the IRQ routine and how to play a sound. The first two pieces of code are actually redundant, as they are both included in the exported binary.
On the other hand, the callable routine to stop a sound, or the addresses to check if a sound has stopped playing, are not mentioned (one has to look in the BASIC section of the text to learn that).
Finally, a couple of minor bug reports:
- The UI has a problem when opened in high DPI screens: some of the values are truncated (a workaround to this is to force the DPI compatibility to be handled by the System instead of the Application, which makes the whole text less readable but fully displayed):
- Contrary to what is stated on the button, pressing ESC does not stop the sound, it just shifts the window focus to the Stop button (and then, even pressing the space bar doesn't stop the sound), so you are forced to use the mouse to do that.
I hope you'll take all that as constructive criticism, as I really like this tool, otherwise I wouldn't have spent more than an hour typing all this :)
Evviva!