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

DVD

开发平台:

C/C++

  1. extern char _data[];
  2. extern char _edata[];
  3. extern char _data_ps[];
  4. extern char _data_pe[];
  5. extern char _bstart[];
  6. extern  char _bend[];
  7. extern char _sdram[];
  8. extern char _esdram[];
  9. #include "config.h"
  10. #include "global.h"
  11. #include "reset.h"
  12. //#define     ROMINIT2_DBG        1
  13. /*
  14. ** FUNCTION
  15. ** rominit
  16. **
  17. ** DESCRIPTION
  18. ** Initialize memory contents that need to be initialized.
  19. */
  20. void rominit(void)
  21. {
  22.   char *src;
  23.   char *dst;
  24.   /* ROM has data at end of text; copy it. */
  25.   src = _data_ps;
  26.   dst = _data;
  27.   do {
  28.     *dst++ = *src++;
  29.   } while (dst<_edata);
  30.   /* Zero out bss */
  31.   dst = _bstart;
  32.   do {
  33.     *dst++ = 0;
  34.   } while (dst<_bend);
  35.  
  36.   /*
  37.   ** reset system interface
  38.   */
  39.   reset_system();
  40. }