Which units are there in Ultibo?

Discussion and questions about programming with Ultibo.
WTW
Posts: 5
Joined: Fri Apr 26, 2019 9:37 pm

Which units are there in Ultibo?

Postby WTW » Wed May 01, 2019 10:01 am

Hello @Ultibo,
could you tell me which units are all in Ultibo?
Are they the ones from the reference package "RTL" of free pascal?

    BaseUnix
    character
    charset
    Classes
    clocale
    cmem
    collation_de
    collation_es
    collation_fr_ca
    collation_ja
    collation_ko
    collation_ru
    collation_sv
    collation_zh
    cp1250
    cp1251
    cp1252
    cp1253
    cp1254
    cp1255
    cp1256
    cp1257
    cp1258
    cp437
    cp646
    cp850
    cp852
    cp856
    cp866
    cp874
    cp8859_1
    cp8859_2
    cp8859_5
    cp895
    cp932
    cp936
    cp949
    cp950
    cpall
    Crt
    cthreads
    ctypes
    cwstring
    dateutils
    Dos
    dxeload
    dynlibs
    emu387
    errors
    exeinfo
    fgl
    fpwidestring
    getopts
    go32
    gpm
    Graph
    heaptrc
    ipc
    keyboard
    lineinfo
    Linux
    lnfodwrf
    math
    matrix
    mmx
    Mouse
    Objects
    objpas
    ports
    printer
    sharemem
    Sockets
    strings
    strutils
    System
    sysutils
    Types
    typinfo
    unicodedata
    unicodeducet
    Unix
    unixcp
    unixtype
    unixutil
    video
    wincrt
    windirs
    x86

could you mark those that are not in Ultibo?
Which are missing in the list?
Or could you post a link to a side, for information, please?
User avatar
Ultibo
Site Admin
Posts: 2261
Joined: Sat Dec 19, 2015 3:49 am
Location: Australia

Re: Which units are there in Ultibo?

Postby Ultibo » Wed May 01, 2019 10:57 am

WTW wrote:could you tell me which units are all in Ultibo?
Are they the ones from the reference package "RTL" of free pascal?

That list looks a lot like the RTL for the Linux target, the Ultibo list of units will be by necessity a little different to that but the majority of them are supported and I'll explain below how to find out which ones are not.

WTW wrote:Or could you post a link to a side, for information, please?

The units available to use in an Ultibo project fall into 3 categories (not counting those from third party sources) which are:

The Free Pascal RTL which covers the core functionality of FPC and provides most of the standard functions used commonly in many applications. You can find the basic list of RTL units that are supported by Ultibo on the Current Status page of the Wiki, that list covers most of the common ones but possibly misses a few lesser known ones.

A really easy way to determine if any given RTL unit is available in Ultibo is to look at the units folder which contains all of the precompiled versions of the units, in a Windows installation this would be under C:\Ultibo\Core\fpc\3.1.1\units\armv7-ultibo\rtl (or armv6-ultibo for the Pi Zero and Pi 1). If there is a .o and .ppu file for the unit then you can use it in an application.

It's important to note that the RTL is not related to the actual language features of FPC that are available, in general all elements of the Free Pascal language are able to be used in Ultibo including classes, exceptions, thread variables, threads, code pages, strings, records and so on.

The second category is the Ultibo API which provides all of the Ultibo specific functionality that you can use to communicate with various hardware or perform other useful functions. You can find the documentation for all of these in the Unit Reference section of the Wiki.

And the final category is the FPC packages which are like add ons to FPC functionality and give all sorts of useful extras like image manipulation, network classes, XML, JSON and many more. Not all of the FPC packages are supported in Ultibo yet, some require external libraries and others are just not relevant to the platform, you can find a reasonably complete list on the Current Status page of the Wiki.

Ultibo contains a lot of usable functionality so it can take a little while to find your way around, feel free to ask if there is something specific that you can't find.
Ultibo.org | Make something amazing
https://ultibo.org
Gavinmc42
Posts: 1629
Joined: Sun Jun 05, 2016 12:38 pm
Location: Brisbane, Australia

Re: Which units are there in Ultibo?

Postby Gavinmc42 » Wed May 01, 2019 11:07 am

Many places to look.
https://ultibo.org/wiki/Current_Status
https://github.com/ultibohub

Some are just holding files, like all the files for other SoC platforms, Odroids etc.
Because there is so much now, I am not sure how to use 99.9% of it.

If is works in Laz/FPC and compiled in Ultibo there is a very good chance it will work ;)
The few I have used from the packages list just worked :D

Return to “General”

Who is online

Users browsing this forum: No registered users and 1 guest