r/pascal • • 10h ago

Please help me

11 Upvotes

To start off, I’m an absolute beginner, and I’m using a 2020 MacBook M1.
Lazarus is indicating that my FPC (Free Pascal Compiler) source files are missing—specifically, it shows the error: "Error: Directory 'rtl' not found." I have already downloaded FPC and placed it in my 'Applications' folder, and I’ve tried everything I can think of to fix it. In the source code editor, I see the line `interfaces, //this includes the LCL widgetset`, and in another tab, an error appears: "Can't find unit 'interfaces' used by project1."
If you know something please tell me. I Googled, watched videos and I ask Gemini but nothing helps…


r/pascal • • 16h ago

ANN: Dynamic Packages, New Game Engine, and More

14 Upvotes

Hello everyone, this is sysrpl, the maintainer of www.getlazarus.org. I have released several major updates for Free Pascal over the past week, including some games, and thought you might be interested in taking a look at what is happening.

First, here is a small game I wrote using my toolkit. It mixes 2D and 3D, features a fairly complete, skinnable vector UI widget set, runs on Windows, Linux, macOS, and Raspberry Pi, and can even run on a bare bones system without a display manager. It is essentially a free demo of a simple project featuring rich text interspersed with animation, sounds, and effects.

Description and video of a free cross platform card game pack

I have also written a complete implementation of dynamic packages for FPC and Lazarus. You can read about dynamic packages here:

Now supporting dynamic packages in the FPC and Lazarus

My Tiny.Sim game engine has been greatly enhanced and incorporated into a single library called the Codebot Library, which includes many features of interest to game developers. The 2D physics system is bug free and quite complete. It supports all kinds of audio files and formats and includes my vector UI toolkit. Several demos are available when you install the IDE. The library supports both a mix of LCL controls and pure SDL game development. You can read about it here, along with a huge reference system to help you learn:

Codebot Library update

My game Obliterate was written using this library:

A more sophisticated game I wrote wrote using the above library

Other features of interest include a unified theming system for the Lazarus IDE and your desktop applications on both Windows and Linux:

Theming style collection for Lazarus and your applications

There are also shell controls for Windows users:

Windows shell controls for Lazarus

Other features include modern web browser controls for Windows, Linux, and macOS, networking utilities, additional graphics features, JSON and XML support, cryptography, and string handling libraries.

Everything is free and open source.


r/pascal • • 2d ago

New Python4Pascal project

Thumbnail
8 Upvotes

r/pascal • • 3d ago

Real Programmers

Post image
39 Upvotes

r/pascal • • 4d ago

A place to learn Free Pascal for total beginners?

17 Upvotes

r/pascal • • 5d ago

VertexArt - Texture baking program ( assimp.dll / freeimage.dll )

Thumbnail
gallery
12 Upvotes

Pure Free Pascal 3.2.2 / GLFW3 / OpenGL3.3 / OpenAL / MiniGUI.pas / assimp.dll / libvlc.dll / freeImage.dll / DOD / [NO LAZARUS BINDING]

Before my project was capable of handling objects and image formats, I used MeshLab to generate objects without textures; however, it produced PLY files with highly noticeable color errors during conversion and export. Consequently, I developed my own "texture baking" tool that exports in the PLY format—without textures—yielding much more accurate results. Naturally, only those texture surfaces that have a geometrically valid corresponding location are baked correctly. The program now displays the result of the texture baking process immediately upon opening (the "BAKE" and "RELOAD" buttons have become redundant, as the process operates very efficiently and quickly during loading).


r/pascal • • 5d ago

System Monitor

16 Upvotes

Only 2,6Mb :-) And all what I need:
How can I provide the code anonymously?
https://github.com/cordao1978/Systeminfo


r/pascal • • 5d ago

Underground Pascal compilers that you use

22 Upvotes

r/pascal • • 6d ago

Brinch Hansen Compier 'emit' routine problem

Thumbnail
6 Upvotes

r/pascal • • 6d ago

sma11: a utility library

Thumbnail
5 Upvotes

After weeks of inactivity, I'm back with updates!

* Case-sensitive input for Question()

* Implemented some more cursor (as in terminals) functions

* Properly print escape sequences to the right outout (stdout or stderr - before was only stdout)

* Implemented color resetting for Win32 console (doesn't work though)

* Fixed the console example not printing anything readable

* Added some well-known sorting algorithms

Test and let me know your thoughts!


r/pascal • • 6d ago

I have been using Perplexity in my quest to learn Ruby

12 Upvotes

Besides researching aspects of Ruby, I have taken my old Pascal books to find out how Wirth programs look like in both direct Ruby translations and idiomatic Ruby. Also working with available Ruby insruction material.

Am a retired electric power engineer who never programmed for work. Took up Turbo Pascal as a hobby, but stopped because of family responsibilities and continual employment changes.

I am finding Perplexity user friendly and useful in my endeavors.


r/pascal • • 8d ago

How to add an LLM to your code with 28 lines

Thumbnail
youtube.com
0 Upvotes

r/pascal • • 8d ago

Three free, open-source plugins for Delphi 11, 12 and 13: Project Hub, Unit Styler and Block Folding

10 Upvotes

Hi everyone!

I've worked with Delphi for many years. Recently, I developed three IDE plugins to solve some everyday frustrations. All three are free, open source (MIT license), and support Delphi 11, 12 and 13, including the 64-bit IDE in Delphi 12 and 13.

To install, download the release ZIP, extract it, and run Install.bat. No administrator rights or compiler required.

1. CS.Coder Project Hub (Stable)

A project organizer built into the Delphi Welcome Page. It lets you:

  • Group project shortcuts by client, system, or any category you choose.
  • Add icons, search by name or path, and organize entries using drag and drop.
  • Export and import the shortcut list as JSON.

It works alongside Delphi's Open Recent panel without changing it. It never moves or deletes project files; it manages shortcuts only.

GitHub: https://github.com/cscoder69/delphi-project-hub

2. CS.Coder Unit Styler (Beta)

A configurable formatter for uses clauses. You can choose one unit per line or multiple units per line, sorting, indentation, priorities, and groups such as System.*.

  • Run it on the current unit, open units, or an entire project.
  • Preview the before/after result and confirm before applying changes.
  • Back up each file before modifying it.

Because unit order can matter, library namespaces (Winapi.*, System.*, Vcl.*, FMX.*, Data.*) are protected from reordering by default. The formatter is designed to preserve comments, compiler directives, encoding, and line endings.

GitHub: https://github.com/cscoder69/delphi-unit-styler

3. CS.Coder Block Folding (Beta)

Adds folding for blocks inside routines, beyond Delphi's built-in routine, class, and region folding.

Supported structures include if/else, for, while, with, try, case, repeat, and standalone begin..end blocks.

Press Ctrl+Alt+B to fold or expand the block at the cursor. It doesn't insert {$REGION} directives or modify your source. Folds exist only in the editor while the unit is open.

Current limitation: its menu and settings are available in Portuguese only.

GitHub: https://github.com/cscoder69/delphi-block-folding

Documentation (Portuguese)

A few important notes

  • Unit Styler and Block Folding are in beta. Please use version control when testing tools that interact with source code.
  • No telemetry, network access, or account. Settings are stored locally.
  • Claude Code helped extensively with implementation. I defined the requirements, made the design decisions, and tested the plugins inside the Delphi IDE. The source is available for review.
  • These projects are independent and are not affiliated with Embarcadero.

Feedback, bug reports, and suggestions are welcome. If something doesn't work in your setup, please open an issue in the relevant GitHub repository and include your Delphi version and IDE architecture.

Thanks for reading!


r/pascal • • 8d ago

Three free, open-source plugins for Delphi 11, 12 and 13: Project Hub, Unit Styler and Block Folding

8 Upvotes

Hi everyone!

I've worked with Delphi for many years. Recently, I developed three IDE plugins to solve some everyday frustrations. All three are free, open source (MIT license), and support Delphi 11, 12 and 13, including the 64-bit IDE in Delphi 12 and 13.

To install, download the release ZIP, extract it, and run Install.bat. No administrator rights or compiler required.

1. CS.Coder Project Hub (Stable)

A project organizer built into the Delphi Welcome Page. It lets you:

  • Group project shortcuts by client, system, or any category you choose.
  • Add icons, search by name or path, and organize entries using drag and drop.
  • Export and import the shortcut list as JSON.

It works alongside Delphi's Open Recent panel without changing it. It never moves or deletes project files; it manages shortcuts only.

GitHub: https://github.com/cscoder69/delphi-project-hub

2. CS.Coder Unit Styler (Beta)

A configurable formatter for uses clauses. You can choose one unit per line or multiple units per line, sorting, indentation, priorities, and groups such as System.*.

  • Run it on the current unit, open units, or an entire project.
  • Preview the before/after result and confirm before applying changes.
  • Back up each file before modifying it.

Because unit order can matter, library namespaces (Winapi.*, System.*, Vcl.*, FMX.*, Data.*) are protected from reordering by default. The formatter is designed to preserve comments, compiler directives, encoding, and line endings.

GitHub: https://github.com/cscoder69/delphi-unit-styler

3. CS.Coder Block Folding (Beta)

Adds folding for blocks inside routines, beyond Delphi's built-in routine, class, and region folding.

Supported structures include if/else, for, while, with, try, case, repeat, and standalone begin..end blocks.

Press Ctrl+Alt+B to fold or expand the block at the cursor. It doesn't insert {$REGION} directives or modify your source. Folds exist only in the editor while the unit is open.

Current limitation: its menu and settings are available in Portuguese only.

GitHub: https://github.com/cscoder69/delphi-block-folding

Documentation (Portuguese)

A few important notes

  • Unit Styler and Block Folding are in beta. Please use version control when testing tools that interact with source code.
  • No telemetry, network access, or account. Settings are stored locally.
  • Claude Code helped extensively with implementation. I defined the requirements, made the design decisions, and tested the plugins inside the Delphi IDE. The source is available for review.
  • These projects are independent and are not affiliated with Embarcadero.

Feedback, bug reports, and suggestions are welcome. If something doesn't work in your setup, please open an issue in the relevant GitHub repository and include your Delphi version and IDE architecture.

Thanks for reading!


r/pascal • • 9d ago

Delphi não é pago? O que é esse Delphi Community Edition?

Post image
17 Upvotes

r/pascal • • 9d ago

VertexArt – successful Assimp integration to support various objects

Thumbnail
gallery
16 Upvotes

Pure Free Pascal 3.2.2 / GLFW3 / OpenGL3.3 / OpenAL / MiniGUI.pas / Assimp / libvlc.dll / FreeImage.dll / DOD / [NO LAZARUS BINDING]

Assimp integration is successful, but the movement of animated objects is still under development; currently, they can only be displayed statically.

Game demo featuring GLB testing:
The entire environment is procedurally generated: a sky projected onto a sphere, terrain with trees and bushes, and winding roads with lane markings. Generated textures are applied to the terrain, asphalt, and sky. Traffic interacts dynamically: faster vehicles overtake slower ones, and honking causes cars ahead of the player to accelerate briefly to avoid impeding traffic. It features procedural engine sound and functional gear shifting.

My initial goal was a texture-free 3D world, though I experimented with textures just in case. I still consider the use of textures unnecessary for a low-poly world, as I have successfully achieved visually impressive results using vertex-colored geometry. Of course, the two approaches can be combined depending on the scene's requirements.


r/pascal • • 10d ago

Já usaram o compilador Pascal brasileiro chamado Pascalzim? Qual sua opinião sobre ele?

3 Upvotes

r/pascal • • 11d ago

Hrot: Jogo da Tchecoslováquia feito em Pascal por uma pessoa só.

Thumbnail
youtu.be
42 Upvotes

r/pascal • • 12d ago

Pascal é uma linguagem realmente viável para desenvolvimento de jogos?

16 Upvotes

r/pascal • • 12d ago

Exoscope Finding Exoplanet

15 Upvotes

Hey everyone! 👋

I wanted to share a passion project I’ve been working on called EXO-SCOPE.

Instead of traditional 3D graphics, I wanted to capture the claustrophobic, high-tension feeling of operating a deep-space telemetry satellite purely through abstract data and a Command Line Interface (CLI). You play as an operator searching for habitable exoplanets, filtering background radiation noise, and occasionally stumbling upon terrifying anomalies.

Here is what makes it unique:

⌨️ CLI-Driven Gameplay: You navigate the cosmos, apply Gaussian/Moving Average filters to light curves, and deploy surface probes entirely by typing terminal commands.

📺 Retro CRT Aesthetic: I built a custom rendering engine to create authentic scanlines, vignette darkening, and UI glow to make it feel like you are staring at a 90s military monitor.

🔊 Immersive Audio Design: Heavy focus on sound atmosphere—mechanical radar sweeps, rapid typewriter terminal blips, and heart-pounding alarms when you encounter encrypted alien signals (Biosignatures & Megastructures).

🌌 Procedural Starmap: A 3000x3000 explorable galaxy featuring gravitational lensing distortions if you pan your telescope too close to a Black Hole.

The Tech Stack:

I built this entirely using Free Pascal / Lazarus.

Graphics/UI: BGRABitmap for all the custom rendering, CRT effects, and Alpha Blending transitions.

Audio: BASS library for handling concurrent channels (ambience, UI feedback, and alarms).

I just open-sourced the entire project on GitHub. If you are into retro-sci-fi aesthetics, terminal games, or Pascal development, I’d be honored if you checked it out!

Link : https://github.com/CodeInPas/Exoscope


r/pascal • • 12d ago

A port of Quake 1 to the Castle Game Engine (Object Pascal / Free Pascal)

Thumbnail
github.com
35 Upvotes

r/pascal • • 13d ago

Migrating from C# to Lazarus

Post image
43 Upvotes

I have a completed C# project that is already published on the Microsoft Store, but I feel guilty, dirty, and sinful for using .NET. So, I’ve started migrating it to Lazarus—naturally, with the help of AI and Hermes Agent. I’ve been at it for about three days, and I think we’re 80% of the way there. There’s still testing to be done, but I feel like I’m heading in the right direction.

It’s inventory software using SQLite, with both local and server modes, and comprises 60 forms.


r/pascal • • 13d ago

Everyone says Pascal died in the 90s. Meanwhile, this Pascal library runs GPT-style transformers, Mixture-of-Experts, RWKV, xLSTM and spiking neurons!

77 Upvotes

r/pascal • • 14d ago

Pascal security tool

Post image
13 Upvotes

I've been working on a simple security research tool (https://nofuss.co.za/tools/ppee/) that runs in the browser. Since Web Assembly is already sandboxed, it makes it reasonably safe. It also doesn't try to execute the EXE or DLL, but rather just peek into it and extract some header and string information. Oh and also tries to figure out which dependencies it has and what calls it makes. So one could see that something is calling the network, or accessing the registry etc. Based on the strings, you might see it's make calls to somewhere you didn't expect.

It's not done, I am learning more and more about the PE file format, but it's already pretty useful if you know what you're looking for.


r/pascal • • 14d ago

BraunUI Lazarus Component

Post image
27 Upvotes

A pixel-perfect, skeuomorphic UI component library for Lazarus/FPC inspired by Dieter Rams' classic Braun designs. Features highly detailed knobs, faders, switches, LEDs, and dynamic theming to bring vintage hi-fi aesthetics to your modern applications.

https://github.com/CodeInPas/BraunUI