diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 000000000..61907a2d9
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "src/3rd-party/PLOOC"]
+ path = src/3rd-party/PLOOC
+ url = https://github.com/GorgonMeducer/PLOOC
diff --git a/bsp/simulation-keil/MDK-ARM/mimiscript-demo.uvprojx b/bsp/simulation-keil/MDK-ARM/mimiscript-demo.uvprojx
index 782d67cfd..f833c4e08 100644
--- a/bsp/simulation-keil/MDK-ARM/mimiscript-demo.uvprojx
+++ b/bsp/simulation-keil/MDK-ARM/mimiscript-demo.uvprojx
@@ -10,7 +10,7 @@
pikascriptt-demo
0x4
ARM-ADS
- 6160000::V6.16::ARMCLANG
+ 6170000::V6.17::.\Arm Compiler 6.17
1
@@ -313,7 +313,7 @@
1
- 1
+ 6
0
0
1
@@ -332,14 +332,14 @@
3
1
1
- 0
+ 1
0
0
USE_HAL_DRIVER,STM32F103xE
- ../Core/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy;../Drivers/CMSIS/Device/ST/STM32F1xx/Include;../Drivers/CMSIS/Include;..\pikascript\pikascript-core;..\pikascript\pikascript-api
+ ../Core/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy;../Drivers/CMSIS/Device/ST/STM32F1xx/Include;../Drivers/CMSIS/Include;..\pikascript\pikascript-api;..\..\..\src
@@ -530,91 +530,6 @@
-
- pikascript-core
-
-
- BaseObj.c
- 1
- ..\pikascript\pikascript-core\BaseObj.c
-
-
- dataArg.c
- 1
- ..\pikascript\pikascript-core\dataArg.c
-
-
- dataArgs.c
- 1
- ..\pikascript\pikascript-core\dataArgs.c
-
-
- dataLink.c
- 1
- ..\pikascript\pikascript-core\dataLink.c
-
-
- dataLinkNode.c
- 1
- ..\pikascript\pikascript-core\dataLinkNode.c
-
-
- dataMemory.c
- 1
- ..\pikascript\pikascript-core\dataMemory.c
-
-
- dataQueue.c
- 1
- ..\pikascript\pikascript-core\dataQueue.c
-
-
- dataQueueObj.c
- 1
- ..\pikascript\pikascript-core\dataQueueObj.c
-
-
- dataStack.c
- 1
- ..\pikascript\pikascript-core\dataStack.c
-
-
- dataString.c
- 1
- ..\pikascript\pikascript-core\dataString.c
-
-
- dataStrs.c
- 1
- ..\pikascript\pikascript-core\dataStrs.c
-
-
- PikaObj.c
- 1
- ..\pikascript\pikascript-core\PikaObj.c
-
-
- PikaParser.c
- 1
- ..\pikascript\pikascript-core\PikaParser.c
-
-
- PikaPlatform.c
- 1
- ..\pikascript\pikascript-core\PikaPlatform.c
-
-
- PikaVM.c
- 1
- ..\pikascript\pikascript-core\PikaVM.c
-
-
- TinyObj.c
- 1
- ..\pikascript\pikascript-core\TinyObj.c
-
-
-
pikascript-api
@@ -660,6 +575,181 @@
+
+ pikascrip-core
+
+
+ BaseObj.c
+ 1
+ ..\..\..\src\BaseObj.c
+
+
+ BaseObj.h
+ 5
+ ..\..\..\src\BaseObj.h
+
+
+ CMakeLists.txt
+ 5
+ ..\..\..\src\CMakeLists.txt
+
+
+ dataArg.c
+ 1
+ ..\..\..\src\dataArg.c
+
+
+ dataArg.h
+ 5
+ ..\..\..\src\dataArg.h
+
+
+ dataArgs.c
+ 1
+ ..\..\..\src\dataArgs.c
+
+
+ dataArgs.h
+ 5
+ ..\..\..\src\dataArgs.h
+
+
+ dataLink.c
+ 1
+ ..\..\..\src\dataLink.c
+
+
+ dataLink.h
+ 5
+ ..\..\..\src\dataLink.h
+
+
+ dataLinkNode.c
+ 1
+ ..\..\..\src\dataLinkNode.c
+
+
+ dataLinkNode.h
+ 5
+ ..\..\..\src\dataLinkNode.h
+
+
+ dataMemory.c
+ 1
+ ..\..\..\src\dataMemory.c
+
+
+ dataMemory.h
+ 5
+ ..\..\..\src\dataMemory.h
+
+
+ dataQueue.c
+ 1
+ ..\..\..\src\dataQueue.c
+
+
+ dataQueue.h
+ 5
+ ..\..\..\src\dataQueue.h
+
+
+ dataQueueObj.c
+ 1
+ ..\..\..\src\dataQueueObj.c
+
+
+ dataQueueObj.h
+ 5
+ ..\..\..\src\dataQueueObj.h
+
+
+ dataStack.c
+ 1
+ ..\..\..\src\dataStack.c
+
+
+ dataStack.h
+ 5
+ ..\..\..\src\dataStack.h
+
+
+ dataString.c
+ 1
+ ..\..\..\src\dataString.c
+
+
+ dataString.h
+ 5
+ ..\..\..\src\dataString.h
+
+
+ dataStrs.c
+ 1
+ ..\..\..\src\dataStrs.c
+
+
+ dataStrs.h
+ 5
+ ..\..\..\src\dataStrs.h
+
+
+ PikaObj.c
+ 1
+ ..\..\..\src\PikaObj.c
+
+
+ PikaObj.h
+ 5
+ ..\..\..\src\PikaObj.h
+
+
+ PikaParser.c
+ 1
+ ..\..\..\src\PikaParser.c
+
+
+ PikaParser.h
+ 5
+ ..\..\..\src\PikaParser.h
+
+
+ PikaPlatform.c
+ 1
+ ..\..\..\src\PikaPlatform.c
+
+
+ PikaPlatform.h
+ 5
+ ..\..\..\src\PikaPlatform.h
+
+
+ PikaVM.c
+ 1
+ ..\..\..\src\PikaVM.c
+
+
+ PikaVM.h
+ 5
+ ..\..\..\src\PikaVM.h
+
+
+ README.md
+ 5
+ ..\..\..\src\README.md
+
+
+ TinyObj.c
+ 1
+ ..\..\..\src\TinyObj.c
+
+
+ TinyObj.h
+ 5
+ ..\..\..\src\TinyObj.h
+
+
+
::CMSIS
diff --git a/src/3rd-party/PLOOC b/src/3rd-party/PLOOC
new file mode 160000
index 000000000..72b95a9a0
--- /dev/null
+++ b/src/3rd-party/PLOOC
@@ -0,0 +1 @@
+Subproject commit 72b95a9a0208bc544b2e3e2aa459587889ecba35