FreePascal 3.2.0a

Posted by ALB42 on 12. Juli 202014 Comments

Charlie took some time to review the FreePascal 3.2.0 packages, I created. I changed them according to the suggestions. Some of the hints are not possible at the moment, needs some changes in the code, others are easy to change. He also found a bug in vlink, which got solved and we include now also the latest version of vlink.

The biggest change for the users is, that it now installs into a folder called „FPC“ (instead of FreePascal) also the assign created is named „FPC:“ (instead of „FreePascal“). If you did install the old package and install the new one you can afterwards (after the reboot) delete the old „FreePascal“ drawer.

Yesterday I did exchange all links to the new version already, when updating the arm-AROS version. But here are the links again

Downloads:
Amiga 68k OS3.x+ 68020+ SoftFPU
Amiga OS4 OS4.x PowerPC (X5000 not supported)
AROS ARM RasPi 1-4 ABIv0
AROS i386 ABIv0
MorphOS OS 3.x
Have fun using them!

With it the archives are now also uploaded to the official FPC server and can be downloaded there as well, that means we finally have an official Amiga, MorphOS, AROS release of FPC. Congratulations and thanks to all people involved.

14 comments to "FreePascal 3.2.0a"

  1. Magorium sagt:

    That’s very nice.

    Thank you ALB42 & Charlie.

  2. walkero sagt:

    That’s great new ALB. Thanks for all the work. It is great that with this language someone can create an app that will be able to run everywhere.
    What concerns me, and maybe more people who would like to start with FPC is a place to find available libraries ready to be used. I mean, is there any website where I can find libraries for i.e. parsing JSON files or image manipulation?

    • ALB42 sagt:

      you mean like: https://wiki.lazarus.freepascal.org/Package_List and that are only the packages which are included in FreePascal, yes most of them also in the Amiga FPC, i would like to guide your attention especially to two entries in the list:
      https://wiki.lazarus.freepascal.org/fcl-json and https://wiki.lazarus.freepascal.org/fcl-image

      besides that of course you can search for e.g. „FreePascal application gallery“ or so, you will find a lot, of course many of them will not work out of the box on Amiga, especially when needing LCL, which is available for Amiga
      systems, but not easy to compile

      The official FPC wikis are a good starting point for sure

      • walkero sagt:

        I am not familiar with FPC. I used pascal a lot of years ago, but I see it now as a good candidate against C and Hollywood. Are there any Amiga dedicated forum for that?

        I could add a forum for OS4 at the os4coding.net if you’d like to have something there. Also, if you would like to gain more user’s I would recommend to try and communicate it more with posts, showing the potential of this language for our systems. You are doing a great job and would be a pity people to not use it because they don’t know the potential.

        Thank you for all your hard work and would be glad to help wherever I am able.

        • ALB42 sagt:

          there was one at amiga-coding.de and aros-exec where I was around for questions, but not really much showing up.
          I’m still look into amiga.org, morph.zone, eab, a1k if question popup, there are threads about FreePascal and my programs present.

          Show potential? hmm you mean like my programs? like MCAmiga, MUIMapparium, Leu, Edisyn, Hex2, MUIPlot, MUIIDE and all the other programs you find on the page? That’s what I’m doing for nearly 10 years. (The FreePascal stuff is more Charlies work and I try to help) And there is feedback for the programs itself… but it seems, never someone see them as inspiration for programming own stuff with FreePascal. And that’s how it is, a niche (FreePascal) inside a niche (Amiga), so maybe 3-4 people is the size of this niche.

          I’m not much of a OS4 guy. 😉 but of course I’m happy about every pascal user on Amiga.

    • magorium sagt:

      Hi walkero,

      As already pointed out by ALB42, Free Pascal has it’s own wiki pages. Other than that you might find lots of interesting information on the Free Pascal/Lazarus forums.

      Besides the standard set of ‚libraries‘ provided with Free Pascal there are literally dozens of other people who provide their own libraries and/or extensions.

      For example, as long as it doesn’t require streaming I like to make use of jsontools (https://www.getlazarus.org/json/). Comparison chart: https://www.getlazarus.org/json/tests/

      These kind of things can be found on almost any topic you can think of, so there isn’t really a ‚complete‘ list of all that is out there.

      Google: „freepascal topic“ will usually get you there, or at least pointing towards a direction that is helpful, if not then you can replace „freepascal“ with „delphi“

  3. magorium sagt:

    @ALB42:
    Not sure if there is still interest in a bug-report ?

    regards,
    M.

      • magorium sagt:

        It is about ppudump, log (rpi3-aros-hosted):
        ==================
        > uname -a
        AROS localhost.localdomain 12.1 41 Mar 18 2019 arm AROS
        > fpc:bin/arm-aros/ppudump fpc:units/arm-aros/rtl/system.ppu
        PPU-Analyser Version 3.2.0
        Copyright (c) 1998-2013 by the Free Pascal Development Team

        Analyzing fpc:units/arm-aros/rtl/system.ppu (v207)

        Header
        ——-
        Compiler version : 3.2.0
        Target processor : arm
        Target operating system : AROS-arm
        Unit flags : init, static_linked, little_endian, release, local_threadvars, local_symtable
        FileSize (w/o header) : 931869
        Checksum : 82A9E94B
        Interface Checksum : 0B25CB8E
        Indirect Checksum : F20BB9DE
        Definitions stored : 2718
        Symbols stored : 8613

        Interface section
        ——————
        Module Name: System

        Features:
        heap
        init_final
        rtti
        classes
        exceptions
        exitcode
        ansistrings
        widestrings
        textio
        consoleio
        fileio
        random
        variants
        objects
        dynarrays
        threading
        commandargs
        processes
        stackcheck
        dynlibs
        softfpu
        objectivec1
        resources
        unicodestring
        Source file 1 : system.pp 2025/11/28 11:11:44
        An unhandled exception occured at $6BB329A8:
        EConvertError: 2027-1-0 is not a valid date specification
        $6BB329A8
        $6BB33E60
        $6BB1CBC8
        $6BB1D5A8
        ==================

        Other than that I seem to have issues getting my ‚cross‘-compiler to work with (aros-patched) binutils v2.32. It produces an exe but seems start_ is not invoked. No sysdebug or writeln output at all, and no error either. Just a silent shell return when run. Assembler output is same as native compiler so that makes binutils suspicious.

        What version binutils do you use for cross-compiling for aros-arm ?

        • ALB42 sagt:

          I fixed that already for trunk

          for aros-arm cross compile I use the one coming with Ubuntu when I install binutils-arm-linux-gnueabihf

          • magorium sagt:

            Ah ok. I thought that was reason your release had additional a suffix (e.g. including the fixes).

            My bad, sorry.

            With regards to binutils, yeah I would like to use that to for my pi but current version of installed binutils for pi are not supported by AROS so I have to do it ‚manually‘ (same as for windows hosted) 🙁

            regards,

          • ALB42 sagt:

            i just checked:
            $ arm-aros-ld -v
            GNU ld (GNU Binutils) 2.23.2

  4. magorium sagt:

    Thank you ALB42.

    Not that I can use 2.32.2 but at least it gives me reason to investigate further.

    It puzzles me though, but perhaps the patch for 2.32 is simply wrong. I’ll try some older version(s).

    Again, thx for your help .o/

Schreibe einen Kommentar zu magorium Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert