Retro Computing Nostalgia meet Open Source Software and Hardware with AgonLight and Neo6502, the incredible evolution of modern Retro computer projects https://olimex.wordpress.com/2025/07/23/retro-computing-nostalgia-meet-open-source-software-and-hardware/ #z80 #w65c02 #retrocomputing #retrogaming #pascal #cpm #forth #basic #cc65
You had ONE JOB.
WTF
Trying to port Mario & Luigi (1994) by Wiering Software from Turbo #Pascal to #FreePascal trunk (i8086), ofc on #DOS: https://wieringsoftware.nl/mario
Posted on https://forum.lazarus.freepascal.org/index.php/topic,71748.html but got nowhere
I can build it on FPC, but can’t run. Removing call to ReadConfig shows gfx issues and input gets messed. I can’t find a way to debug the realmode properly
May I ask heroes from my feed for some helping hand? @foone @wyatt @root42 @nina_kali_nina
Great laptop:
https://arstechnica.com/gadgets/2023/07/going-deep-with-the-book-8088-the-brand-new-laptop-that-runs-like-its-1981/
An IBM-compatible Turbo XT! My first PC, of 1989 was such a thing, but a huge box with a tiny 12-inch green CRT monitor. 640kB RAM, 10MHz in turbo mode, and a Hercules-compatible graphics card, 640x350 pixels, for games one used a software CGA emulator, mapped the 320x200x4 colors of CGA onto the 640x300x3 gray levels of Hercules ...
And with locally installed DoS ...
Programmed #Pascal on it.
Sub-ranges feel like quite an obscure feature of a language. But in Pascal they're an essential part of arrays
array ['a'..'z'] of Integer
So I'm filling out their implementation before I continue with arrays. The next step is the assignment validation when range checking is on.
The little #CPM #workstation is finished. My evening work consisted of packing it in a nice case and starting the backplane soldering. But there are still plenty of soldering points left, I'll have to do that tomorrow as well.
Do any of you #Pascal nerds knows a source for porting #Eliza to #TurboPascal3, the first good Turing test in #BASIC?
#RetroComputing #ZilogZ180 #SC126
Jeff Duntemann is a longtime technical writer and author, and he recently announced a free ebook about programming.
Jeff's "FreePascal From Square One" is a distillation of several of his other #Pascal books, and an excellent starting point for anyone who wants to learn about #programming
FYI, FreeDOS includes FreePascal!
Here's an interview with Jeff:
https://technicallywewrite.com/2025/06/10/duntemann
Get Jeff's book here:
https://www.contrapositivediary.com/?p=5399
Why #Pascal (#Lazarus) is Still a Great Choice for Writing GUI Applications - https://www.aventer.biz//en/pascal/lazarus/2025/06/02/pascal/
Before I got sidetracked into the type system I was working to get the command line compiler fully up and running.
The sticking point was command line arguments. I tried using #FreePascal's built in parser but it didn't have the flexibility I needed. I've now written something which does and I can now set the platform and deployment options.
#quiche #quichelang #compiler #pascal #z80
1/n
Updated for Haiku 64bit: Lazarus 4.0.
Lazarus is a Rapid Application Development Tool for Free Pascal.
Install or update it with Haiku's application HaikuDepot or the Terminal command pkgman.
For this I created/updated a local script (partly based on how Fedora uses it):
https://codeberg.org/Begasus/Lazarus_Haiku/src/branch/main/lazarusBuildFedora.sh
Turbo Pascal vs. Pedro Pascal.
Issue 123/124 of Blaise Pascal Magazine released: #Geocoding with #Pascal, a die-cast simulator for teaching statistics in #Object_Pascal, QUEENS puzzle in Pascal, threading #Free_Pascal code via #WebAssembly in the browser, RTTI in #PAS2JS etc.
And writing to an array element. As before the index expression is parsed and an AddrOf operation added to the IL code, which generates the address to write to. Then the right hand side expression is parsed, and a PtrStore operation added to write the data to the address.
Moving towards array references in #Quiche. This code uses an index literal, an index variable, and an index expression.
A ParseArrayIndex function generates IL for the expression (if any), then an AddrOf operation which takes the array variable and index and returns a pointer to the data.
The a PtrLoad operation loads the data and stores to a variable.
There's no bounds validation or code yet, and only code generation for the literal case so far.
In 1979 BYTE magazine published The BYTE Book of Pascal, an anthology of articles about the language, comparisons with other languages, and lots of source code of programs ranging from Pascal compilers to utilities and games.
A fascinating account of an era when Pascal was still relatively new and promising and programmers were discovering what it could do.
https://archive.org/details/the-byte-book-of-pascal/page/n11/mode/2up