Platforms, Syscalls, and Objects
As explained in the previous topic, Tibbo BASIC and C are "pure" languages — they only provide the language constructs but not the input/output facilities.
All input/output facilities are defined in platforms.
Each type of a Tibbo programmable device is represented by a platform describing this device's capabilities — memory capacity, available features, and so on.
You have to select a platform for every TIDE project you create.
This is done in the Project Setting dialog ( File > Project Settings).
Each platform provides a set of syscalls and a set of objects.
Syscalls ("system calls") form a well-developed API with convenient calls for string handling, encryption, and other handy functions.
Objects package large chunks of device functionality.
Available objects are so sophisticated that many of your programs will end up containing nothing but the "glue code" tying objects together.
Here is a little taste of what's available:
![]() |
sock. Sockets |
![]() |
net. Ethernet |
![]() |
wln. Wi-Fi |
![]() |
bt. Bluetooth (BLE) |
![]() |
ppp. PPP |
![]() |
pppoe. PPPoE |
![]() |
ser. Serial ports |
![]() |
io. Digital I/O |
![]() |
ssi. I2C and SPI |
![]() |
adc. Analog-to-digital |
![]() |
lcd. LCD/OLED |
![]() |
kp. Keypad |
![]() |
beep. Buzzer |
![]() |
pat. Status LEDs |
![]() |
button. Main button |
![]() |
stor. EEPROM |
![]() |
fd. Flash disk |
![]() |
romfile. Fixed data |
![]() |
rtc. Real-time clock |
![]() |
sys. System control |