I've noticed another problem too. Your method of detecting a CDG command seems to be to look for a command byte = 0x09. This is not correct, you should first AND the command byte with 0x3f before checking if it is 0x09. i.e. a command byte of 0xc9 is a valid cdg command - your program skips over these commands.
I hope this is helpful to you and I look forward to the next release of your great program.
Regards,
Mark.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Noted. I've finally got around to changing it . Sorry for the delay. I loaded an old DK karaoke CDG and can see that my implementation of CDG is not quite right, so I'll address the errors you spotted first.
Thanks,
Darryl.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I've noticed another problem too. Your method of detecting a CDG command seems to be to look for a command byte = 0x09. This is not correct, you should first AND the command byte with 0x3f before checking if it is 0x09. i.e. a command byte of 0xc9 is a valid cdg command - your program skips over these commands.
I hope this is helpful to you and I look forward to the next release of your great program.
Regards,
Mark.
Noted. I've finally got around to changing it . Sorry for the delay. I loaded an old DK karaoke CDG and can see that my implementation of CDG is not quite right, so I'll address the errors you spotted first.
Thanks,
Darryl.