1
0
mirror of https://github.com/cc65/cc65.git synced 2025-01-08 20:31:31 +00:00

Renamed _hadd to _heapadd

git-svn-id: svn://svn.cc65.org/cc65/trunk@1911 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz 2003-02-01 10:20:35 +00:00
parent 703447dd26
commit 8012074ea0
4 changed files with 16 additions and 13 deletions

View File

@ -57,7 +57,8 @@ void* __fastcall__ malloc (size_t size);
void* __fastcall__ calloc (size_t count, size_t size); void* __fastcall__ calloc (size_t count, size_t size);
void* __fastcall__ realloc (void* block, size_t size); void* __fastcall__ realloc (void* block, size_t size);
void __fastcall__ free (void* block); void __fastcall__ free (void* block);
void __fastcall__ _hadd (void* mem, size_t size); /* Non-standard */ /* Non standard functions */
void __fastcall__ _heapadd (void* mem, size_t size);
/* Random numbers */ /* Random numbers */
#define RAND_MAX 0x7FFF #define RAND_MAX 0x7FFF
@ -75,7 +76,7 @@ int __fastcall__ atexit (void (*exitfunc) (void));
void* bsearch (const void* key, const void* base, size_t n, void* bsearch (const void* key, const void* base, size_t n,
size_t size, int (*cmp) (const void*, const void*)); size_t size, int (*cmp) (const void*, const void*));
div_t __fastcall__ div (int numer, int denom); div_t __fastcall__ div (int numer, int denom);
void __fastcall__ exit (int ret); void __fastcall__ exit (int ret);
char* __fastcall__ getenv (const char* name); char* __fastcall__ getenv (const char* name);
void qsort (void* base, size_t count, size_t size, void qsort (void* base, size_t count, size_t size,
int (*compare) (const void*, const void*)); int (*compare) (const void*, const void*));

View File

@ -52,8 +52,8 @@ C_OBJS = _afailed.o \
S_OBJS = _fdesc.o \ S_OBJS = _fdesc.o \
_file.o \ _file.o \
_fopen.o \ _fopen.o \
_hadd.o \
_heap.o \ _heap.o \
_heapadd.o \
_oserror.o \ _oserror.o \
_printf.o \ _printf.o \
_swap.o \ _swap.o \

View File

@ -3,14 +3,14 @@
; ;
; Add a block to the heap free list ; Add a block to the heap free list
; ;
; void __fastcall__ _hadd (void* mem, size_t size); ; void __fastcall__ _heapadd (void* mem, size_t size);
; ;
; ;
.importzp ptr1, ptr2 .importzp ptr1, ptr2
.import popax .import popax
.import hadd .import heapadd
.export _hadd .export _heapadd
.macpack generic .macpack generic
@ -25,7 +25,8 @@ min_size = 6
; Code ; Code
_hadd: sta ptr1 ; Store size in ptr1 _heapadd:
sta ptr1 ; Store size in ptr1
stx ptr1+1 stx ptr1+1
jsr popax ; Get the block pointer jsr popax ; Get the block pointer
sta ptr2 sta ptr2
@ -53,7 +54,7 @@ _hadd: sta ptr1 ; Store size in ptr1
; Call the internal function since variables are now setup correctly ; Call the internal function since variables are now setup correctly
jmp hadd jmp heapadd

View File

@ -61,7 +61,7 @@
.importzp ptr1, ptr2, ptr3, ptr4 .importzp ptr1, ptr2, ptr3, ptr4
.import __hptr, __hfirst, __hlast, __hend .import __hptr, __hfirst, __hlast, __hend
.export _free, hadd .export _free, heapadd
.macpack generic .macpack generic
@ -107,9 +107,9 @@ _free: sta ptr2
lda ptr2+1 lda ptr2+1
adc ptr1+1 adc ptr1+1
cpy __hptr cpy __hptr
bne hadd ; Add to free list bne heapadd ; Add to free list
cmp __hptr+1 cmp __hptr+1
bne hadd bne heapadd
; The pointer is located at the heap top. Lower the heap top pointer to ; The pointer is located at the heap top. Lower the heap top pointer to
; release the block. ; release the block.
@ -278,7 +278,8 @@ _free: sta ptr2
; Check if the free list is empty, storing _hfirst into ptr3 for later ; Check if the free list is empty, storing _hfirst into ptr3 for later
hadd: lda __hfirst heapadd:
lda __hfirst
sta ptr3 sta ptr3
lda __hfirst+1 lda __hfirst+1
sta ptr3+1 sta ptr3+1
@ -287,7 +288,7 @@ hadd: lda __hfirst
; The free list is empty, so this is the first and only block. A contains ; The free list is empty, so this is the first and only block. A contains
; zero if we come here. ; zero if we come here.
ldy #next-1 ldy #next-1
@L2: iny ; f->next = f->prev = 0; @L2: iny ; f->next = f->prev = 0;
sta (ptr2),y sta (ptr2),y