Archives for AROS

Virtual Lazarus FAQ

Posted by ALB42 on 21. April 2016No Comments

Some questions to this virtual machine arrived so I started to write a FAQ for the Virtual Lazarus bundle I created. Also made a separate page for this product. There is not much of a response until now… lets hope for later.

Questions and Answers

Q: How to change the default keymap?

A: Open xterm and type „setxkbmap us“, replace the us (= american layout) by your favourite keyboard layout (de, us, fr, ….). To make it permanent for every boot, edit /home/test/.profile and add the setxkbmap call to end of the file.

 

Q: How did you transfer the compiled programs to the target computer?

A: I used the VMware shared folder on the host computer and used samba to access from MorphOS the program. Amiga/UAE and AROS can directly access the files on the harddisk but with dedicated computers of course samba would also work.

 

Q: The AROS compilation seems to be different from the previous AROS release?

A: Yes, the LCL diverted fro AROS on the one side and Amiga/MorphOS on the other side. this is the first try to join them, but its not on par currently. (For example Groupboxes does not work in this version also speedbuttons look weird and so on) So if you experience problems just compile your program at AROS again, or wait for bugfixes 😉

 

Q: How to compile for Amiga/AROS/MorphOS?

A: You can set by hand in Project Options. But I suggest you use my prepared config file as shown in the video. Open „Menu – Project -Project Options“ press import (button on the lower edge) choose the „/home/test/AllAmigaPlatforms.xml“. Now you have build settings for all four platforms.

 

Q: Synedit (or other package) is missing in the component icon list?

A: Make sure this package is already supported for Amiga style systems (SynEdit is 😉 ) and go to Package – Install/Uninstall Packages and choose to install. Lazarus have to compile again after installing/uninstalling an package.

 

Q: Are there examples/How to know which components are availabel for our systems?

A: Examples are available at GitHub. If you want to download directly to this virtual machine just open a xterm and type „git clone https://github.com/alb42/fpc-tests.git“. you will find a directory named fpc-tests in your home directory with a sub directory LCL, where you can find many test code examples to use, and test which elements are working, or not.

 

Q: I added a TMemo to my program now it does crash on MorphOS an/or Amiga. Whats wrong?

A: TMemo uses the Texteditor.mcc class as MUI implementation. Sorry I didn’t added a error handling for such case currently, because at AROS it’s installed by default.

Create programs for all Amiga platforms with Lazarus

Posted by ALB42 on 20. April 20166 Comments

I created a virtual machine with my compiled Lazarus source and cross compilers for Amiga, AROS and MorphOS. The virtual machine is for VMWare Player. Lazarus and a short description is placed on the Desktop. Should be really easy to use. I used the shared folder feature of VMWare to place the data where the other OS can reach them.

 

At the start I wanted to use DSL (Damn Small Linux) but sadly I didn’t get it to run (mouse does not move), so I changed to an other one. But the DSL stayed as name. Therefore the package is rather big (1.6 GB packed, 9 GB unpacked).
I hope someone is brave enough to try it and give some feedback.

 

Virtual machine with Lazarus Amiga, AROS, MorphOS:
VM Lazarus (1544 MB)
MD5: cf3e14797f9ba9882ee66247ee1fbc9f
 
Check also the FAQ.
 

I also create a little Introduction Video for this virtual machine use to show how easy it is.

EdiSyn 0.54 Second Try

Posted by ALB42 on 9. März 2016No Comments

EdiSyn had some problems on the experimental Icaros, Menu look very strange sometimes it also crashes. I fixed the problem and re-uploaded the archive for EdiSyn. Because yesterday I played around with printing so a basic printing option is also included. It’s really very easy, its like copy the the text file to PRT: with a small header to make the font smaller.

EdiSyn 0.54

Posted by ALB42 on 8. März 2016One Comment

I did some tiny fixes in EdiSyn and some big changes in the LCL also have an influence to the editor. So it makes sense to release EdiSyn again.
 
Fixed Errors:

  • Some redrawing errors, multiple redrawing removed, so it should be faster now.
  • Default colors after introducing the new highlighter restored
  • Buttons of message windows fix, correct index of clicked button
  • green marker for Hints in Freepascal output
  • Basic printing (text only to PRT:)
  • Bugfix for menu in experimental Icaros

 

Download as always on the EdiSyn Page

 

Edisyn_054

AROS 64bit Distribution

Posted by ALB42 on 5. März 2016One Comment

I played around with AROS64 and freepascal for x86_64-aros. the compiler self works nicely, only sometimes some crashes because it does not make it’s own stack like the other amiga/aros implementations. I should really implement that soon.

 

For that I got the AROS source and compiled my own AROS 64 bootable CD and setup a qemu with it. There is no official AROS 64bit distribution now. I remember some announced one long time before but nothing happend. So now I will release my little work, together with a working freepascal compiler and named it „The 100% useless AROS distribution“ or short T100pUAD.

The Distribution gets its own page: T100pUAD Page

 

It includes some ore themes and freepascal, later I will try to improve it more and update it to the latest changes, maybe the 64bit get a little boost, it really needs it.

 

The freepascal IDE I did not get to work, always crash at the same place, but it’s deep inside of AROS and maybe some memory corruption before. So rather hard to find a reason.

Spying on MUI

Posted by ALB42 on 20. Februar 20166 Comments

I wrote a program to Inspect MUI properties. Very helpful to read out positions and recheck the size calculations of LCL. The main problem at the start was how to tell the program which object I want to inspect. The idea was to type the address from debugout. But then I noticed that the Userdata of the intuition Window structure points to the MUI Window.mui object. Thats means I can simply browse through all the windows on the screen and search for windows with a Userdata and try to find if it is a MUI object. Check if the Class of the object is „window.mui“. I tested also with other UserData contents, „mostly“ it does not crash.
 
But this only works on AROS, I tried the same on MorphOS but there the UserData is always nil. Seems they use an other method to link them together, its a pity.

The program for i386-AROS is named MUIInspector and can be downloaded here:
 
MUIInspector 1.0 for AROS
 
MUIInspector
 
Sadly many important fields of the MUI object are not readable so not all important things can be read back to the list.
 
Be warned, when the program which is inspected is quickly changing, means destroy/create objects, maybe the MUIInspector is crashing. So its really only a debugging tool for me, but maybe other find it interresting as well

VarArgs Changes

Posted by ALB42 on 24. Januar 2016One Comment

This weekend I did some bigger changes in the AROSUnits for better use of variadic functions in the SDK. The „array of const“ is replaced by „array of PtrUInt“ for all variadic wrappers. Because of this changes all this wrappers can be defined as inline and the arrays does not need to be copied inside the wrapper so it should be a little bit faster (even the effect is not that big I guess).
Also all dependencies to objfpc is removed so if someone want to write a freepascal program without objfpc dependency it should be possible now.
All this changes were discussed here.
But this all means that sources using such variadic functions must be changed, I changed already the fpGUI, LCL and example sources.

About this year … 2015

Posted by ALB42 on 31. Dezember 2015One Comment

This year freepascal got a big advance on many levels, in general with the freepascal 3.0 and for the Amiga-style systems also. Even more advances on the LCL/Lazarus topic on Amiga, AROS and MorphOS.

 

It began in 2014 already, when I restarted the MUI LCL implementation for AROS. Begin of 2015 I cared more about some applications to test the implementation especially the owner drawn things. So I wrote ColorIt and FPCMines for AROS and tried to write or port some little apps and some more.

 

A milestone reached in march 2015 when I got the SynEdit component to work. The little test program I used to play around with the needed changes in LCL grew on requests from the AROS community to a full usable Editor, which got the name Edisyn. By improving the editor many additional features are included into LCL, like key events, advanced mouse events, tabs, scrollbars, colors and much more.

 

With all this improvements I felt ready to give the lazarus ide another try and finally at least it starts. So we are on a good way to bring lazarus natively to work on AROS.

 

But how about the other platforms (AmigaOS and MorphOS)? I did already some changes in the code with the other platforms in mind. When the resource support was enabled in freepascal I took the opportunity to try to port the LCL for MorphOS and m68k AmigaOS. Which somewhat worked but not in the same way as in AROS especially the layout did not work and the program always crashed on the end. But it gave me much insight how MUI is working also for AROS Zune which is a little bit more error tolerant than the original MUI.

 

Also on the freepascal front some new things appeared, the support for x86_64 AROS was included, but sadly because of the ABI difference the port is still not finish and unusable. I’m waiting for the ABI switching feature in freepascal. The implementation is done just I need the decision to do it in the proposed way.

 

In October I did something unusual for me, I did C coding for AROS, trying to code a dynamic Amiga-style Library (in this case sql) to use it in freepascal AROS. But later I found out this wrapper library is not needed and I can directly use the C linklibs as they are.

 

At the end of the year I took more work again on the MorphOS and m68k Amiga LCL and finally got it to work. So the first LCL programs can be compiled for MorphOS and m68k Amiga.

 

What 2016 will bring

I hope I can join the two LCL implementations (AROS on the one side and MorphOS and Amiga on the other) together again. Bring the MorphOS port to the same level as AROS, that maybe Edisyn will work. The next logical step would be to continue on lazarus ide and try to make it somewhat usable.

Merry Christmas

Posted by ALB42 on 24. Dezember 20155 Comments

to everyone who read this 😉 I hope you have a nice christmas meal and some quiet time with the family, I will certainly have.

As Greeting to everyone I wrote a little program, nothing special, just a christmas tree and some falling snowflakes (needed 10 minutes to write in lazarus, I watched the clock).

 

merrychristmas

 

You can download this little program for:
Amiga, AROS, MorphOS and if someone is interested the Source