cardGUI.c
上传用户:caisangzi8
上传日期:2013-10-25
资源大小:15756k
文件大小:3k
源码类别:

DVD

开发平台:

C/C++

  1. /**********************************************************
  2. **  Description: Switch interface for CDROM & CF Card ( after combined with USB) 
  3. **  Creater:wuxiaofeng
  4. **  Date:03-10-30  14:37
  5. ***********************************************************/
  6. #ifdef CF_CARD_WRITE
  7. extern void show_switch(void);
  8. void card_copy(BYTE copy_mode)
  9. {
  10. int copy_status;
  11. // if(CardIdentify()!=0)//very important!!!
  12. if(FSIdentify()!=0)//very important!!!
  13. {
  14. Message_Show(ERROR_MESSAGE);
  15. show_switch();
  16. }
  17. else
  18. {
  19. if(pFsJpeg->gifsFuncBtn == FS_FUNC_MP3)
  20. {
  21. sign_PFun=PFUN_WRITE;//write cf card
  22. AVD_SetMediaInterrupt();//stop the current mp3, Can't be used for JPEG!!
  23. Message_Show(PFUN_COPYING);
  24. osd_DrawRegionString(21, 1, "0%", 7, 0, 2);//for show the progress use!!
  25. }
  26. else if(pFsJpeg->gifsFuncBtn == FS_FUNC_JPEG)
  27. {
  28. sign_PFun=PFUN_WRITE;//write JPEG
  29. Message_Show(PFUN_COPYING);
  30. // copy_status=CardSchedule(copy_mode);
  31. copy_status=FSSchedule(copy_mode);
  32. if(copy_status==-1)
  33. {
  34. Message_Show(P_SPACEFULL);
  35. }
  36. else if(copy_status==-2)
  37. {
  38. Message_Show(P_NOMATCH);
  39. }
  40. else
  41. {
  42. Message_Show(PFUN_WRITE);
  43. }
  44. full_scrn &= (~PERIPHERAL);//for release the IR
  45. osd_init();
  46. }
  47. }
  48. }
  49. void cd2card(void)
  50. {
  51. full_scrn &= (~PERIPHERAL);//for release the IR
  52. osd_init();
  53. atapi_close_tray(0);//in order to stop loader this calling is somewhat strange
  54. read_card_sign=1;    //xulf0827
  55. flag_cd2cf=1;
  56. flag_cf2cd=0;
  57. media_type=MEDIA_CARD;
  58. ircmd_post_func(CMD_FUNC | CMD_FUNC_STOP);
  59. }
  60. void card2cd(void)
  61. {
  62. full_scrn &= (~PERIPHERAL);//for release the IR
  63. osd_init();
  64. flag_cd2cf=0;    //xulf
  65. flag_cf2cd=1;
  66. media_type=MEDIA_CD;
  67. ircmd_post_func(CMD_FUNC | CMD_FUNC_STOP);
  68. bDiscType=CDUNKNOWN;
  69. sys_cmd=CMD_FUNC_PLAY;
  70. }
  71. int card_delete(void)
  72. {
  73. // if(CardIdentify()!=0)//very important!!!
  74. if(FSIdentify()!=0)//very important!!!
  75. {
  76. Message_Show(ERROR_MESSAGE);
  77. show_switch();
  78. }
  79. else
  80. {
  81. sign_PFun=PFUN_DELETE;//delete data
  82. // if(CardSchedule(0)==-1)
  83. if(FSSchedule(0)==-1)
  84. {
  85. Message_Show(P_SPACEEMPTY);
  86. //turn to CDROM
  87. card2cd();
  88. return -1;
  89. }
  90. else
  91. {
  92. Message_Show(PFUN_DELETE);
  93. }
  94. }
  95. return 0;
  96. }
  97. void format_card(void)
  98. {
  99. // if(CardIdentify()!=0)//very important!!!
  100. if(FSIdentify()!=0)//very important!!!
  101. {
  102. Message_Show(ERROR_MESSAGE);
  103. show_switch();
  104. }
  105. else
  106. {
  107. sign_PFun=PFUN_FORMAT;//format card
  108. // CardSchedule(0);
  109. FSSchedule(0);
  110. Message_Show(PFUN_FORMAT);
  111. }
  112. }
  113. void rename_cardfile(void)
  114. {
  115. // if(CardIdentify()!=0)//very important!!!
  116. if(FSIdentify()!=0)//very important!!!
  117. {
  118. Message_Show(ERROR_MESSAGE);
  119. show_switch();
  120. }
  121. else
  122. {
  123. sign_PFun=PFUN_RENAME;//Create Dir
  124. // CardSchedule(0);
  125. FSSchedule(0);
  126. Message_Show(PFUN_RENAME);
  127. cd2card();//refresh the card
  128. }
  129. }
  130. #endif