Compare commits

..

No commits in common. "na5" and "dev" have entirely different histories.
na5 ... dev

1 changed files with 50 additions and 6 deletions

View File

@ -1,6 +1,7 @@
#include <stdint.h> #include <stdint.h>
char * ptr1 = "mpabi vlaz"; char * ptr1 = "janek";
char * ptr2 = "kowalskii";
int strlen(char *s) int strlen(char *s)
{ {
@ -15,15 +16,58 @@ void strcpy(char *s, char *t)
while (*s++ = *t++); while (*s++ = *t++);
} }
#define ALLOCSIZE 10000
static char allocbuf[ALLOCSIZE];
static char *allocp = allocbuf;
char *alloc(int n)
{
if (n % 4 != 0) {
n += 4 - (n % 4);
}
if (allocbuf + ALLOCSIZE - allocp >= n) {
allocp += n;
return allocp - n;
} else
return 0;
}
int main() { int main() {
char tab [20]; char * s = "mpabi";
strcpy( tab, ptr1);
uint8_t wynik =0; uint8_t wynik =0;
wynik = strlen (tab); wynik = strlen (s);
asm("nop"); asm("nop");
}
char * p1 = alloc(strlen(ptr1));
strcpy (p1, ptr1);
asm("nop");
char * p2 = alloc(strlen(ptr2));
strcpy (p2, ptr2);
asm("nop");
struct point {
int16_t x;
int16_t y;
};
struct point * ptrS = (struct point *) alloc(sizeof(point));
ptrS->x=0x10;
ptrS->y=0x20;
asm("nop");
(*ptrS).y= strlen (p1)+ strlen(p2);
return 1;
}