⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 malloc.h

📁 一款MP3 Player Firmware 的原代码,非常有参考价值
💻 H
字号:
#ifndef MALLOC_H#define MALLOC_Htypedef unsigned long  simm_id;#pragma CALLEE-SAVES addr5,addr6,addr7,simm_id_from_pointer#pragma CALLEE-SAVES addr6p,addr7p#pragma CALLEE-SAVES push_addr,pop_addrsimm_id simm_malloc(unsigned int num_bytes);void simm_free(simm_id addr32);void init_malloc(void);xdata void * addr5(simm_id addr32);xdata void * addr6(simm_id addr32);xdata void * addr7(simm_id addr32);xdata void * addr6p(xdata simm_id * xaddr16);xdata void * addr7p(xdata simm_id * xaddr16);simm_id simm_id_from_pointer(xdata void *ptr);void push_addr(unsigned char num);void pop_addr(unsigned char num);#define Addr6(ptr) (addr6p(&(ptr)))#define Addr7(ptr) (addr7p(&(ptr)))// #define Addr6(ptr) (addr6(ptr))// #define Addr7(ptr) (addr7(ptr))/* These addrX_val variables can be used to backup the * current address mapping (they may be needed by a * higher-level calling function).  For examples: * * void some_subroutine(simm_id filelist) * { *    unsigned int addr7_backup; *    filelist struct *f_ptr; * *    addr7_backup = addr7_val;  //save addr7_val used by calling code *    f_ptr = addr7(filelist); *    // code that uses f_ptr  *    addr7_val = addr7_backup;  //restore addr7_val before returning * } * */extern volatile xdata at 0xFF0A unsigned int addr5_val;extern volatile xdata at 0xFF0C unsigned int addr6_val;extern volatile xdata at 0xFF0E unsigned int addr7_val;#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -