Advertisement
matiou

fix USB_GenerateFilename for 6 digit

Mar 2nd, 2021
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.40 KB | None | 0 0
  1. byte USB_GenerateFilename(byte Channel, byte Sound, char* FileName) {
  2. if ((Sound >> 4) < 10) {
  3. *(FileName+2) = 48 + (Sound >> 4);}
  4. else {
  5. *(FileName+2) = 55 + (Sound >> 4);}
  6. if ((Sound & 15) < 10) {
  7. *(FileName+3) = 48 + (Sound & 15);}
  8. else {
  9. *(FileName+3) = 55 + (Sound & 15);}
  10. if (game_settings[USB_Debug] == 2) { // display can be used for debug information
  11. if (Channel == 1) {
  12. if (SD.exists(FileName)) { // sound file present?
  13. if (APC_settings[DisplayType] < 6) { // Sys11 type display? // fix matiou: "< 6" instead of "< 7"
  14. *(DisplayLower+2) = DispPattern2[2 * (FileName[2] - 32)]; // show the number of the sound to be played
  15. *(DisplayLower+3) = DispPattern2[2 * (FileName[2] - 32) + 1];
  16. *(DisplayLower+4) = DispPattern2[2 * (FileName[3] - 32)];
  17. *(DisplayLower+5) = DispPattern2[2 * (FileName[3] - 32) + 1];}
  18. else if (APC_settings[DisplayType] == 6) { // Sys3-6 type display
  19. *(DisplayLower) = ConvertNumLower(Sound / 100,(byte) *(DisplayLower)); // fix matiou to handle hundreds
  20. *(DisplayLower+2) = ConvertNumLower(Sound % 100 / 10,(byte) *(DisplayLower+2));
  21. *(DisplayLower+4) = ConvertNumLower(Sound % 10,(byte) *(DisplayLower+4));
  22. }
  23. else { // Sys3 7 - 9 type display
  24. *(DisplayLower+2) = ConvertNumLower(Sound / 10,(byte) *(DisplayLower+2));
  25. *(DisplayLower+4) = ConvertNumLower(Sound % 10,(byte) *(DisplayLower+4));}}
  26. else { // sound file doesn't exist
  27. if (APC_settings[DisplayType] < 6) { // Sys11 type display? // fix matiou: "< 6" instead of "< 7"
  28. *(DisplayLower+12) = DispPattern2[2 * (FileName[2] - 32)]; // show the number of the missing sound
  29. *(DisplayLower+13) = DispPattern2[2 * (FileName[2] - 32) + 1];
  30. *(DisplayLower+14) = DispPattern2[2 * (FileName[3] - 32)];
  31. *(DisplayLower+15) = DispPattern2[2 * (FileName[3] - 32) + 1];}
  32. else if (APC_settings[DisplayType] == 6) { // Sys3 - 6 type display
  33. *(DisplayLower+6) = ConvertNumLower(Sound / 100,(byte) *(DisplayLower+6)); // fix matiou to handle hundreds
  34. *(DisplayLower+8) = ConvertNumLower(Sound % 100 / 10,(byte) *(DisplayLower+8));
  35. *(DisplayLower+10) = ConvertNumLower(Sound % 10,(byte) *(DisplayLower+10));
  36. }
  37. else { // Sys3 7 - 9 type display
  38. *(DisplayLower+12) = ConvertNumLower(Sound / 10,(byte) *(DisplayLower+12));
  39. *(DisplayLower+14) = ConvertNumLower(Sound % 10,(byte) *(DisplayLower+14));}
  40. return(0);}} // indicate that file doesn't exist
  41. else { // channel 2 - Sys11 only
  42. if (SD.exists(FileName)) {
  43. *(DisplayLower+18) = DispPattern2[2 * (FileName[2] - 32)]; // show the number of the music to be played
  44. *(DisplayLower+19) = DispPattern2[2 * (FileName[2] - 32) + 1];
  45. *(DisplayLower+20) = DispPattern2[2 * (FileName[3] - 32)];
  46. *(DisplayLower+21) = DispPattern2[2 * (FileName[3] - 32) + 1];}
  47. else {
  48. *(DisplayLower+28) = DispPattern2[2 * (FileName[2] - 32)]; // show the number of the missing music
  49. *(DisplayLower+29) = DispPattern2[2 * (FileName[2] - 32) + 1];
  50. *(DisplayLower+30) = DispPattern2[2 * (FileName[3] - 32)];
  51. *(DisplayLower+31) = DispPattern2[2 * (FileName[3] - 32) + 1];
  52. return(0);}}} // indicate that file doesn't exist
  53. return(1);} // indicate that file does exist
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement