119 lines
3.5 KiB
C
Raw Normal View History

2021-11-16 21:41:57 +08:00
/*
* This file is part of the PikaScript project.
* http://github.com/pikastech/pikascript
*
* MIT License
*
* Copyright (c) 2021 lyon liang6516@outlook.com
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
#include "PikaPlatform.h"
#include <stdio.h>
#include <stdlib.h>
2021-12-30 21:48:11 +08:00
PIKA_WEAK void __platform_disable_irq_handle(void) {
2021-11-16 21:41:57 +08:00
/* disable irq to support thread */
}
2021-12-30 21:48:11 +08:00
PIKA_WEAK void __platform_enable_irq_handle(void) {
2021-11-16 21:41:57 +08:00
/* disable irq to support thread */
}
2021-12-30 21:48:11 +08:00
PIKA_WEAK void* __platform_malloc(size_t size) {
2021-11-16 21:41:57 +08:00
return malloc(size);
}
2021-12-30 21:48:11 +08:00
PIKA_WEAK void __platform_free(void* ptr) {
2021-11-16 21:41:57 +08:00
free(ptr);
}
PIKA_WEAK void* __impl_pikaMalloc(size_t size) {
2021-12-30 21:48:11 +08:00
return __platform_malloc(size);
2021-11-16 21:41:57 +08:00
}
PIKA_WEAK void __impl_pikaFree(void* ptrm, size_t size) {
2021-12-30 21:48:11 +08:00
__platform_free(ptrm);
2021-11-16 21:41:57 +08:00
}
2021-12-30 21:48:11 +08:00
PIKA_WEAK void __platform_pool_init(void) {}
PIKA_WEAK uint8_t __is_quick_malloc(void) {
return 0;
}
PIKA_WEAK void __quick_malloc_enable(void) {}
PIKA_WEAK void __quick_malloc_disable(void) {}
PIKA_WEAK uint8_t __is_locked_pikaMemory(void) {
2021-11-16 21:41:57 +08:00
return 0;
}
2021-12-30 21:48:11 +08:00
#ifndef __platform_printf
PIKA_WEAK void __platform_printf(char* fmt, ...) {
2021-11-16 21:41:57 +08:00
va_list args;
va_start(args, fmt);
vprintf(fmt, args);
va_end(args);
}
2021-12-30 21:48:11 +08:00
#endif
PIKA_WEAK int __platform_sprintf(char* buff, char* fmt, ...) {
va_list args;
va_start(args, fmt);
int res = vsprintf(buff, fmt, args);
va_end(args);
return res;
}
2021-11-16 21:41:57 +08:00
2021-12-30 21:48:11 +08:00
PIKA_WEAK int __platform_vsprintf(char* buff, char* fmt, va_list args) {
return vsprintf(buff, fmt, args);
}
PIKA_WEAK int __platform_vsnprintf(char* buff,
size_t size,
const char* fmt,
va_list args) {
return vsnprintf(buff, size, fmt, args);
}
PIKA_WEAK char* __platform_load_pikaAsm(void) {
2021-11-16 21:41:57 +08:00
/* faild */
return NULL;
}
2021-12-30 21:48:11 +08:00
PIKA_WEAK int32_t __platform_save_pikaAsm(char* PikaAsm) {
2021-11-16 21:41:57 +08:00
/* faild */
return 1;
}
2021-12-30 21:48:11 +08:00
PIKA_WEAK uint8_t __platform_Asm_is_to_flash(char* pyMultiLine) {
2021-11-16 21:41:57 +08:00
/* not to flash */
return 0;
}
2021-12-30 21:48:11 +08:00
PIKA_WEAK int32_t __platform_save_pikaAsm_EOF(void) {
2021-11-16 21:41:57 +08:00
return 1;
}
2021-12-30 21:48:11 +08:00
PIKA_WEAK void __platform_wait(void) {
while (1) {
};
}
PIKA_WEAK void* __platform_memset(void* mem, int ch, size_t size) {
return memset(mem, ch, size);
}
PIKA_WEAK void* __platform_memcpy(void* dir, const void* src, size_t size) {
return memcpy(dir, src, size);
}
PIKA_WEAK char __platform_getchar(void) {
__platform_printf("[error]: __platform_getchar need impaltment!\r\n");
while(1){
}
}