Archives by ALB42

Amiga „Cluster“ with FPU

Posted by ALB42 on 16. November 2015One Comment

The flickering is much better, the picture was painted too often and the message loop was polled too seldom. Optimized this a little bit, now it happens very seldom. When I started this tests first I implemented a simple Speedtest which does the same calculation for one second and then count the successfully calculated pixels.
So of course would be nice to have it also in this graphical server and optimize the number of pixels requested from each client. I noticed the Amiga 1200 with 68060 50Mhz only finished 3-4 Pixels per second, I know it is slow, but that slow. (Besides this I’m surprised how fast the MacMini with MorphOS is, nice :-)) But then I remembered that the m68k freepascal does not use the FPU. By default it uses softfloat routines, which of course are very slow. But my automatic compiler server also compiles the FPU version of all units (enable at compiler with -Cf68881 and use FPU compiled units). The fpu compiled version is much, much faster now 200 px/s. Wow now the amiga really add some pixels to finished image. (Before also some, but less than a line ;-))

Speed test of the "Amiga Cluster"

Speed test of the „Amiga Cluster“

It should be noted that the 192.168.0.122 (and 127.0.0.1) is a Computer with eight cores but only one is used here (in fact, two because 127.0.0.1 is AROS hosted on the same computer), I didn’t implement multicore threading.

We are working together

Posted by ALB42 on 15. November 2015No Comments

I played again a little bit with networking things, especially on different platforms. Very nice that the most sources now compile out of the box at Linux, AROS, Amiga and MorphOS only very little ifdefs inside, and even they could be omitted by extending the Amiga-like-RTLs with some unix functions.

I wrote a little Lyapunov calculation program which sends the pixels to calculate via network to other computers to let them calculate. Lyapunov is very good for such things because it has very little inputs and results but rather long calculation time per point.

I compiled and run the client for all platforms I have available currently:

  • i386-AROS (Linux Hosted – AMD FX 8120)
  • powerpc-MorphOS (Mac Mini)
  • m68k-amiga (Amiga1200 68060/50)
  • x86_64-linux (AMD FX 8120)
  • i386-linux (Intel Atom 230)
  • arm-linux (Raspberry pie 1)

All compiled from the same source.
The Server and Image Viewing is done at AROS.
The power of Freepascal/Lazarus at its very best.

The white pixels are already send to some client but the result is not arrived.

The image is flickering a little bit (therefore in the movie sometimes no image to see) because I didn’t care much about the image plotting. I’m not sure why the image is flickering maybe the network communication take too much time so not enough time to draw the image.

Baking 0.1 alpha Amiga LCL together

Posted by ALB42 on 25. Oktober 2015One Comment

I created a archive of my complete LCL for m68k AmigaOS 3.x. Much things already working (all PaintEvent things does not work, so Labels, Panels and so on does not appear, but should also not crash).

So if anyone want to try Lazarus LCL on a real Amiga or UAE here is the archive, be careful its 55Mb and you will need at least 16 Mb to compile the examples, for bigger programs you might need even more.

Download Amiga LCL 0.1 alpha

for more informations read the „ReadMe“ inside the archive.

MUI is picky

Posted by ALB42 on 25. Oktober 2015No Comments

I found out why some elements at Amiga/MorphOS are not shown (like the scrollbars and comboboxes) it seems that MUI has very tight size constraints usually MinHeight = MaxHeight. And MUI is rather picky, if you give a bigger place at layout hook, it does not paint anything. I do not understand why a Button needs this tight size constraints, maybe I want bigger buttons.. but ok, not a big thing.. I will try to implement that also in the AROS LCL and maybe should check how to use the LCL constraints.

Amiga LCL with working size constraints

Amiga LCL with working size constraints

The second good thing is that the crash at close is disappeared at Amiga OS, but at MorphOS its still there, so I guess the issue is not solved. I will write an other test program to test the dynamically creation and destroying of MUI elements. But in principle one could think about a lcl AmigaOS release (its already much more than the first AROS lcl release 😉 )

LCL on a „real“ AmigaOS

Posted by ALB42 on 23. Oktober 2015No Comments

I played again a little bit with Lazarus/LCL and I was able to get the thing compile on a real AmigaOS 3.9 with MUI 3.8. The result looks rather the same as my previous tries in MorphOS.
But different from the one from m68k AROS it makes the double strange that all windows in the m68k AROS are fullscreen. A bug in Zune? Who knows. The size calculation seems to be different as in i386-aros LCL, the windows are smaller.

HexEdit 0.2

Posted by ALB42 on 22. Oktober 2015No Comments

The Hex Editor slowly gets into shape. Most important function, editing and Value showing. The Value is automatically showed in different types (as Byte, Word, LongWord, QWord) and even more important both endian styles(Big / Little). Later will insert also a function to insert a value as the combined types in both endian styles. For now I only need it for small files, so I load the complete file to RAM and then show it. Later maybe I make a viewer version for very big files, which work directly on Harddisk. But at the moment its not needed.

HexEdit 0.2

HexEdit 0.2

HexEdit 0.2

HexEdit 0.1

Posted by ALB42 on 20. Oktober 2015No Comments

At the moment I need a HexViewer and sometimes also a HexEditor but even at Linux I’m not very satisfied with the functions with the available HexEditors. So I decided to write my own, of course I write it for Linux/Windows (there I need it) but now I always care about that it will also work for AROS. So I compiled it for AROS as well and it worked without any additional actions. At the moment its just a HexViewer. (use cursor keys for move the cursor, page up down to scroll a page, home and end jump to start/end, Tab change binary part to char part)
But I need Editing, search and replace and jump to special positions.

HexEdit 0.1

HexEdit 0.1

HexEdit 0.1

There is music in the air

Posted by ALB42 on 17. Oktober 2015No Comments

Deadwood announced a ALSA AHI driver for AROS Hosted which I tried today, the first version crashed AROS completely. But now the second really works very nice. I take out my mp3player again and it is working very nicely, debugging this way is much better ;-).
When I wrote the mp3 player I wanted to make a video with sound, but sadly I noticed the sound recording of RecordMyDesktop seems not to work, its all quiet the whole time. I tried some trick I found online, (direct alsa, pulseaudio and so on) but nothing helped its all quiet. Then I tried some other programs and finally I found one working kazam has not so many options but enough for my needs. So here is my first youtube video with sound 😉

The sound is a free one from youtube Hero Theme by MK2.

Linking directly

Posted by ALB42 on 16. Oktober 2015One Comment

As I said before much better would be to link directly to the C LinkLibs instead of writing this wrapper libraries, in the past I always failed because of the autoinit stuff. But now when creating the libraries I learned a little bit more about how it work and finally I was able to make a statically linked connection directly from freepascal unit to AROS C LinkLib. And it works 🙂

Freepascal program links to C Linklib

Freepascal program links to C Linklib