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
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.
Finally Version 3.2.0 of FreePascal is released. This is the first final release contains the Amiga style systems fully usable. A while before I did some extra work to also create an Amiga-sytle installer, which will be also released with this. Today I will also release the 3.2.0 FreePascal packages for Amiga 68k, Amiga OS4, AROS for ARM, AROS for i386 and MorphOS. So basically all versions except AROS for x86_64 because that’s still too unstable to use (mainly the AROS 64 bit is still a moving target and I was not able to fix that, because AROS is simply not working after the last changes and my last questions about it got just ignored)
You notice, these files are still hosted on my server and not on the official FreePascal Server, as the last release 3.0 as well. I was told because my previous packages did not meet the standards for official FreePascal packages. Which was true, I did not care about and packed a lot additional stuff into, like fpgui or LCL and I did not know there are readme texts to add which are not in the official repository but in an external one.
For that release 3.2 I did a lot of work on finding out what would be a good Amiga style package and which docs/texts should be added. Therefore I created that installer package I release today. I also asked for a review and put on to the official FreePascal server, as an official Amiga FreePascal package or give me feedback on what I should further changed.
Sadly that did not happen, I did not get any feedback and the release archives are still nowhere to be found on the official servers, therefore missed for that release.
That whole story took away my motivation as well over the last month as well, it seems rather futile to continue to work on it, when nobody even really use it, which is still true, unfortunately, I have to admit.
The last long weekend is over and MCAmiga got a new milestone, the search is working for now. Time to make a release, I just tried it again on my Amiga1200/030/50/AGA and it still works nicely, redraw still slow, but it’s quite usable. I’m used to it, always used 64 colors screen with higher resolution. I guess this will be much better when there is a nice GFX card for Amiga1200, like the Warp1200. I really look forward to it, hope will be available to by soon.
Working on the Search function of MCAmiga, again try to get close to the function midnight commander is offering.
I put the search function into a thread that you easily can continue to work, even the search is still running, (as midnight commander also do it). Atm you can press F3 to view the file or F4 to edit or enter to jump to the file directly. It works already nicely but still needs a little bit work, especially the mouse control needs some care.
Because I got this question already some times, and I do not want to write it again and again, I just make this blog post that I can simple point to at any time 😉
Why my Programs does not work on AmigaOS4 X5000?
The problem is, that FreePascal itself does not know the X5000 CPU, and it seems to be not a normal PowerPC, but needs some special care. I heard something about special alignment problems. I don’t have a X5000, Charlie doesn’t have a X5000 and we do not know whats special about it to fix that issue. Besides, we both are not really using OS4, we both use Classic and MorphOS and I use additionally a big Part AROS (mainly i386 a bit ARM).
As some might notice, long time there was no working AmigaOS4 FreePascal, because I did not have any OS4 capable computer. I used mainly AROS, Charlie used mainly MorphOS and both we used some kind of Amiga68k and that was exactly the work shares we did in FreePascal. Charlie asked and explained some times that there could be an AmigaOS4 port (an older Version was still inside) if someone would step up as Maintainer for it. We didn’t want to do, we had AROS and Amiga68k and MorphOS already. Which is already much to work on. Besides OS4 is a completely different kind of fish (because of the Interfaces).
Then one day this thread came along and if you follow the thread you can see, Charlie decided to make the initial OS4 implementation and someone said, he will step up as maintainer, but sadly this didn’t happen. I’m too much of a FreePascal Amiga guy to let that port in such sorry state and started to implement the rest nevertheless, making me the maintainer for OS4, even I had no interest to be. Of course I’m a big fan, that all four platforms are now supported by FreePascal and due our continuing work on it, they are 99% compatible. (e.g we hid the OS4 Interfaces away, so you do not need to care about that when writing your software)
Recently I bought a AmigaOS4 computer (thanks again to the one sold me that, its working nicely), because in UAE it’s not really usable. But I only use it to test FreePascal, my programs the installer and so on. But for that a some thousands Euro machine would be overkill (and also waste of space). I try to keep the FreePascal AmigaOS4 at least somehow working but not more. In the end the message stays:
If you are interested in Pascal and Amiga(OS4) and want to help with the compiler doing a better job on X5000 (or any other computer as well) you can just do it, it’s open source, send us a patch. If you want to step up as maintainer for AmigaOS4, even better, contact ChainQ/Charlie or me, of course we will happily help. Do not fear, you will not be left alone.
Finished a little bit more MCAmiga testing, especially on MorphOS and AmigaOS4 there where some serious problems. On AmigaOS4 the device view did not work at all, just crashed, reason was a bug in the AmigaDOS unit of FreePascal. I fixed that exact problem already for other platforms, and now also on AmigaOS4. On MorphOS only tiny changes are needed, mostly related to the supplied lha being a little bit different than the one on classic, but still very close. AROS was a bigger problem, the lha command here is completely different, very limited actually, for example you cannot extract a single file.
I got a hint from Charlie to use cad to unpack archives, because it supports many different formats and it’s available for at least classic and MorphOS, I found out for AROS there is also a version in contrib, that means at least Icaros even comes automatically with it. AmigaOS4 seems not to have it, at least I did not find it. It works very nicely, easy to operate, but sadly it’s only for unpacking archives, no way to pack them. That means the functionality is limited to read only access in MCAmiga. Therefore I gave xad a lower priority over the native lha/lzx programs, except on AROS because there xad is the better choice, the native lha command does not work at all.
Besides that big feature for handling archives, I added a lot of small stuff, like Shift cursor keys to select file, or Ctrl cursor keys to jump fast up and down or to first item (left) or to last item (right). Start programs with enter and wait for finish or with Shift Enter an do not wait for it, so effectively start it in a new shell.
The Source is now also available on GitHub completely. I did put it there on the first release but I forget to push the changed source. I committed locally only. But now the full source should be there, so take it an improve it and most importantly have fun with it.
For now that is already a very useful program for me, more or less finished. I do not really need more than that, maybe one day one could add an editor to it, especially an hex editor. But at the moment I don’t need it.
The requirements did not change, still Amiga 68020+, 4 MB, AmigaOS3.x, AmigaOS4 (except X5000), MorphOS 3.x, AROS i386 ABIv0, AROS ARM ABIv0, AROS x64 ABIv1 NonSMP
Working on the lha handling inside MCAmiga, would be nice to have it like in Midnight commander where you can directly browse inside archive, add, remove files, and even edit files inside.
I got it somehow to work, still with some limitations, for example, LHA you cant create an empty directory, so I create the directory with a ‘delete_me’ file inside. Also when the directory is created “merged” on adding (usually means added together with its parent directory) you cant remove it, if will stay there, even empty. But still it works already very nicely. Until now you can copy files to archive, copy file from archive, make a new directory, rename files. View and edit files (also with external tools, file is extracted to temp dir). Also introduced the Tools menu (F2) well known from midnight commander.
I did not try on AROS/MorphOS or so until now, hmm curious if all LHA versions are the same, I should try some different versions 😉
Worked a little bit on the mouse control for MCAmiga, the mouse/video unit combination makes it very easy, exactly the same mechanisms than the keyboard events. So now you can also use the mouse to click on buttons or select files. The search and jump function was already included in the last version but I did not show them in a video, so I included them here.
The second part was to activate app window functionality, that you can drag and drop a file onto one of the two panels and the program will automatically jump to that directory and file. I did give me some headache though, because initially it did not work on Classic Amiga and MorphOS, and I found out that the FreePascal workbench unit had a big bug. The syscall offset of the needed Function AddAppWindowA was wrong. Now thats fixed as well.
Download as always for all Amiga systems on the programs page.