Something completely different

There's a time to code and a time to ski. I've been in Bad Gastein in Austria last weekend. Despite the really bad weather forecast, we really were lucky:

We even got some powder :))):

The only thing, we did not get enough, was sleep. In Bad Gastein you can find very good party locations, no typical Austrian After Ski stuff, but nice (and drunken) people from Sweden, Denmark and Norway and cool live bands everywhere (also from these countries).

So if you want to listen to Iron Maiden and AC/DC instead of "Anton aus Tirol", Bad Gastein is your place to go ;). Best band in my eyes I've seen there were the Afterskindians with singer (and pyromaniac ) Johan Fahlberg, who played in the Silver Bullet Bar. No (publishable) pictures from inside the bar, sorry ;).


Another Screenshot

So what am I doing at the moment? Not much visible in screenshots.

I am cleaning up the code, I have written so far. It was quite some try and error stuff in there, many different ways to do one thing, as I wanted to get a feeling, what works, and what makes problems.

Now it was time to clean up the mess and do some bug hunting, everything now works as expected. Not everything you wish, everything I have done so far ;).

So have a look yourself:

You can see here workbench running in an AROS window, three open shells, one is AmigaOS3 and the other three are from AROS. You can resize, move and depth-arrange all those windows. You can type in those windows and click on the icons. Speed is nearly normal E-UAE speed, not faster obviously.

What does not work at the moment for AmigaOS:
- close gadget
- menus
- border gadgets
- non Workbench Screens

So far no patches to AROS are required. AmigaOS got one SetFunc for CloseWindow, because otherwise it would have been too dangerous, that a window structure gets freed during access from the AROS task.

I really think, that border gadgets are the most difficult task remaining, as there might be everything in there. I have only tried WordWorth for a test so far, but WW has plenty of custom border gadgets, those a really a feature, C= should have never introduced.

And of course you cannot start AmigaOS programs from wanderer icons yet. So far, you need an open AmigaOS window (for example) workbench, to launch others.


I can type, click and move my mouse!

If you have the right idea, difficult stuff is much easier, than the stuff you thought would be trivial. It took me days, until I had the window swapping and positioning working. It just took me 20 minutes, to be able to type in a simple shell window from the AROS side.

So I could launch my first AmigaOS program from an AROS window :).

Now for the mouse. What I really hated in E-UAE for AROS is the bad mouse synchronization. I hate double mouse pointers, one following the other quite some pixels after. Getting the actual mouse coordinates from AROS is simple, I have programmed quite some traps now. But what to do with them? How do I place the AmigaOS mouse? I found an old program (SetMouse) on Aminet. Freeware and *with* sources. It saved me a lot of work, so thanks to Ketil Hunn, who did this some 15 years (!) ago.

The AmigaOS mouse is now always *exactly* below the AROS mouse!

Hey people, release your sources! It's really a pity, how many useful programs there would be on Aminet and how much someone could learn from them, if we just have the sources. (And we could also port them, but that is another issue).

So now, I can move the mouse, click on gadgets, resize windows, type where I want.

Hey, we are getting closer :).


Integrate e-uae .. even more

Now there are window titles, they are not updated at the moment, but this is boring work, really trivial.

The next issue was to move/raise etc. the windows. First there can be an os3 application, which resizes its own window. Then the AROS window needs to be resized accordingly.

Then the AROS user of course should be able to resize his AROS windows, which contain os3 windows, which then must be resized.

I had though out a good solution, which just did not work :(. I found some minor bugs (a lot of os3 workbench windows are simple refresh, they are cloned, but I needed AROS smart refresh ones..), but still everything was unstable.

If you move one window in front of another, Intuition does not do that at once, the MoveWindowInFrontOf call returns and the windows are shuffled later on, when Intuition "finds time". So my way of sorting needed to be thought over and I think, I maybe found a way to do it. At least, it seems to be stable now.

You can now also close an aos3 window and the according AROS window task is signaled an closes his window before he dies.

So move/close/resize/raise windows works now :). Closing AROS windows as no effect so far.

No screenshot for today, you have to trust me ;).

And btw, I think, I found a name for this project, too:


I'll keep you posted.