Charlie was introducing SinclairQL port of Free Pascal, another platform using m68k processor. To be honest I never heard of it before. It also uses vasm and vlink as on Amiga, so it’s rather easy to create the cross compiler for it, the port is still in a very early stage but some stuff is already working, for example my HEX2 pocket calculator already works nicely (after some tine bugfixes 😉 in the code and in the Free Pascal code). I got a emulator for SinclairQL and it works, very nice.
If you want to try you can download the program here: Hex2-QDOS
Some little facts I should mention, the source was developed for TurboPascal 3.3 for CP/M (for my KC85) I tried a lot o things, all seems to work, but maybe some errors still hidden.
Because it was developed for KC85, so very little RAM available I decided to load the error messages and help messages from file only when needed. But that seems not so easy on SinclairQL. I had to add the “mdv1_” (representing the first microdrive) before the filename that it can find the help or error file. Until now it seems there is no way to find out at which drive my program is (ParamStr(0) is empty), so I just hard coded that for now.
I added assumptions to Ask Your Amiga. Assumptions are the way the different meaning of one word are separated from each other in Wolfram alpha. For example if you ask for “Berlin” it will show you information about the capital of germany, but also shows you a list of other cities (mostly in USA) named Berlin and also other meanings like Berlin as a name or a music band (never heard that before) and so on.
Like on the web page I put these assumptions to at the top of the results to select from a cycle widget.
Download latest AYA at hte AYA Page or use the build-in Update Version
Besides the documentation work I also updated the docker container. I created 4 scripts to compile directly from the docker (without using VNC/lazarus) so you can directly compile in your linux installation, that there is a docker container behind it you barely notice. But it only can compile standard Free Pascal things, no LCL applications (missing pathes to the lcl units, also not easy possible, but without Lazarus make not much sense, I think)
The AROS compilation had a big problem, when you compile without -g option it tries to strip but the strip tool was not installed, so I added some more tools to make it possible to compile without -g (makes the executable much smaller)
On this I updated the lazarus version to the latest version 2.0.12 as well.
If you want to use the newest Version of the docker (with the AROS bugfix) start the “CheckForUpdate.sh” script if you also want to have the direct compile command download the CrossAmigaLazarus Package.
To be honest I don’t watch much TV, I like playing games much more but sometimes there are nice movies or interesting news, but mostly I’m repelled by the amount of commercials these days.
But nevertheless I have a satellite bowl and it connected to a DVB-S2 card in my Linux server with TVHeadend as TV server which works quite nicely especially together with Kodi. But the Webpage does not work very nicely, the it’s very complicated and the in browser watching of TV program does not work most of the time. So I seldom use it (basically only to program recordings).
In the past there was a nice VLC plugin for it make it very easy to use, sadly it’s not maintained for very long time. VLC moved on and the plugin does not work again, I got it to compile somehow but still no luck still does not work.
A long introduction to what I did now, the TVHeadend have a JSON based API, therefore it was rather easy to write a little program to get all the information from the Server show it in a window and select a channel to stream. And of course as I always do when I start a new program I also make it for Amiga style systems, MorphOS is this case. (but also for Linux 😉 )
I never came that far to compile LCL (and / or Lazarus) for AROS 64bit but of course I always cared about 64-bit compatibility on the way to implement it (as far as possible).
Now with 3.2 out and Lazarus adapted to it with some minor tweak it was possible to compile LCL stuff for AROS64, even more complicated stuff like EdiSyn.
Sadly there are still some bugs, especially in the external components I use. For example the ATTabs, as you can see the caption in the Tabs are missing and if you click on one some strange things happen. After all it is somehow working but not completely fine.
I’m playing with docker and how to put Free Pascal for Amiga Systems and even Lazarus inside a docker container. Works quiet nicely with the latest FPC (3.2.0) and Lazarus (2.0.10), sadly there are some bugs in the published MUI interface for Lazarus, or better left overs of old Free Pascal inconsistencies between the Amiga flavors. I fixed them in FPC but did forget to remove the workarounds in the LCL. So I had to patch the official LCL. Must also check them in the official repository. Sadly the OS4 the LCL compile does not work at all, something wrong with the resource stuff, so I removed it for now. I will look into it later. So still some stuff to work on.
To actually use the Lazarus IDE I also installed a VNC server and hence also a small as possible window manager, I played around with some simple one, most old simple window managers are very annoying (e.g. twm) but icewm seems to be nice (looks like Java though).
And why docker? It’s much easier to keep the software up to date and there are automatically running scripts to create, modify and start them. But there are some drawbacks. The first compilation of a LCL program for any Amiga-style system will need a long time (as seen in the video), because it will compile the whole LCL. This will happen for every start of the docker container. This is good to have a clean compilation of LCL (especially when developing on the actual LCL) but a bit annoying when only compile simple programs. There should be some ways around it. But for now for me that’s good enough.
I did a big mistake on the last AskYourAmiga release, by accident the MorphOS binary was missing and instead the OS4 binary was copied as MorphOS binary. Sorry for the confusion. Therefore I made a new release. But the MorphOS release is somehow strange (or better MorphOS is) after some picture loaded some pictures look wrong, wrong colors and seems also the size is wrong calculated. But not all pictures are affected only some but when it appears all these type pictures will become wrong. restart AskYourAmiga and try the same question try to load the picture and it works. Very strange, seems like something is crashing inside the datatypes system (but the log does not show anything related).
To be honest I did not try AskYourAmiga very much on the other Amiga Platforms, only on Amiga OS3.x m68k because on all the other you could theoretically use the browser for wolffram alpha. So I concentrate to make it run nicely on classic m68k Amiga.
Other changes with this version are pure internal, some little redrawing problems I got report from OS4 and some bugfixing I found myself (not cleared buffer, such stuff).
You can use the Update function of AskYourAmiga 0.2 (in Suggestion/History Window, it will download the archive and save it to where you want, you only have to unpack it) or you download it from this page.
A little bit improvement of the raycaster engine, now with simple texture mapping included. I had to invent some fixed point mathematics to make it fast enough on real m68k Amiga but still it works nicely and just a bit slower. I found a little bug in FreePascal when using functions Trunc() or Frac(), but Charlie thankfully saved the day and made a super quick fix of it.
Again a little video on my Amiga 1200 (68030/50Mhz, 68882/50Mhz, 32 color AGA Screen) and it’s still a single source code file of less than 20kb size (many of them are comments 😉 ). and the executable is less than 100k, not bad especially because I did not optimize for size, just for speed