I am trying to write something slightly bigger than "hello word" for cg, I use Simon's mini-Prizm-SDK. I would like to ask:
1. Is it possible to build program from .c sources ? I do not use C++ features so I would like to save room by removing C++ support. I tried to rename the project.cpp (autogenerated source) to .c and edit project.ini (both, manually and by the build tool), but it always asked me to provide project.cpp file.
Why do you need .c sources. The C++ compiler has no disadvantages and is able to process c-sources as well (without the need of implementing the special abilities of C++).
2. Is it possible to build program from multiple sources (and link together)? I see that Insight has more source files, but I was unable to include additional source to mu project. I tried the GUI build tool (=not manualy editing/hacking the project.ini).
It is possible, but I must admit, that it is not well documented. The mini-SDK allows several ways to include multi-sources. But flexibility requires a lot of documentation. Gimme some time. In the next CHM-file, I will add some hints. My mini-SDK is complex. I need a very flexible tool to provide and verify the information we all need to master the Prizm. I'll try to enhance the documentation.
3. How to add new syscalls ? Is there some recommended way how to add new syscall to the SDK ? There are many syscalls, which are perfectly documented in the help file, but they are not included in the header (for example serial communication).
Select File/Full Setup
Select the Tab syscall-library
Position the cursor to the syscall where you want to insert a new syscall.
Enter the syscall number in hex in column "Key"
(f. i. 1E6A).
Enter the syscall definition in column "Value"
The syscall definition starts with the interface, f. i. in case of 1E6A void DisplayMainMenu( void )
Then enter a a semicolon.
The next item following the semicolon defines the headerfile, where the interface has to be stored. Ususally this is an alias, f. i. $(SYSTEM_SC). See at the begin of the syscall-library-list to find the actual header-file names.
The third item following the second semicolon represents the syscalls timestamp. Leave it empty, if you insert a new syscall. The system uses the timestamp to decide, if a rebuild of the syscall is necessary. Usually it is maintained automatically.
Finally hit the SAVE-button.
The next build with F9 should include the previously added syscall in the library.
Sorry, if my mini-SDK is too inconvenient. I cannot help it. I need it's flexibility to find the information we all need. I hope some of you agree. And I hope even my mini-SDK could help the one and the other in their progress to do better.
I like cfxm's extremly lean micro-SDK. And I like the KPIT/GNU/GCC tool developments, though I am a friend of the lean one's.