Monday, January 14, 2019

What you need is EasyRPG

by on Monday, January 14, 2019
First of all, let me thank two friends here: Szilárd Biró and Salvatore Abbate. The former, since he ported EasyRPG Player to AROS (and other amiganoid systems), the latter because I didn't notice that program until he submitted it to the AROS Archives, the main repository for AROS programs. As I had to learn very quickly, EasyRPG Player is an interpreter à la ScummVM for games written with RPG Maker 2000 and 2003. RPG Maker, in turn, is a very powerful game editor for PC, which allows creation of "japanese RPG" games (similar to the ones you'd have played on a Super Famicom or a Sony PlayStation) and not-only. Although 2000 and 2003 are very old releases, they still have a strong community at, where you can find dozens of playable games. But the story wouldn't end here. 

I immediately started to download games to test them under Icaros Desktop and the AROS port of EasyRPG Player. I initially stumbled upon a "show stopping" issue when I couldn't run the program under native AROS (the program just refused to work, while it was starting normally under Linux hosted Icaros), but luckily it worked just good in windowed mode. So, before integrating it into Icaros Desktop, I had to create a little script that would launch it in windowed mode at once. But that was straightforward. I needed little more time to figure out how games were supposed to run: in practice, they all include a Data subdirectoy which must become the 'root' of the game, and this main directory should also include four RPG_RT* files which are normally placed elsewhere. 

oh no! this bomb wouldn't explode!
When I had everything in place, I could successfully test many games created by the community, but two of them captured my attention: The Kidnapping of Princess Pri and Grimps: Squeaking of the Dead. The former worked out of the box, while the latter let me play the first levels only: later in the game, in fact, a compatibility issue between EasyRPG Player and the original RPG Maker routines stopped the joy. Grimps is a funny "move the blocks, avoid the enemies and blast the bombs" puzzle game, a sort of medley of Pengo, Bomberman and others. Unluckily for us, after moving bombs they didn't explode as they were supposed to do, so many levels were impossible to win. The issue was already known by both EasyRPG Player coders and Fredrik Brudin, who not only gave me permission to include his game in Icaros, but he even sent me a fixed version of Grimps that would have worked under EasyRPG Player! 

Victory! With the help of Fredrik Brudin, Grimps now works on Icaros as intended!

End of story: I have to thank some other people here: Fredrik Brudin from for Grimps: Squeaking of the Death, psy_wombats and Liberty for granting me permission to include The Kidnapping of Princess Pri as well. They will both debuct on Icaros Desktop 2.2.6, when the new version will be officially released (Princess Pri has been included also in the recently released beta for testers and supporters). 

Grimps and Princess Pri will be included in Icaros Desktop 2.2.6 and afterwards...

Icaros Desktop v2.2.6 beta for supporters

by on Monday, January 14, 2019
We're about in the middle of development of a new version of Icaros Desktop, so it's time for the usual "middle term" beta release, reserved to supporters (patrons pledging $15 or more) and beta testers. There are many enhancements here and there but, best of all, almost everything we've talked about here is already available in this beta (along with many other little and bigger enhancements).

New from Icaros Desktop 2.2.5

- added DCRaw 9.28 to C:
- deleted the obsolete (and wrong) 'dcdraw' drawer from Extras
- updated InstallerLG for i386 to latest version
- updated LibPNG to latest release
- updated MCC_NList to v1.25 for i386 and M68K
- added support to MUI4 ESC-A method to embed images
+ updated muimaster.library
+ updated rapagui in Libs/Hollywood
+ fix: Icon Editor now uses image buttons instead of text ones
- updated AmiCloud to v2.0-final
- updated webptools to latest version
+ included also the webptools development libraries
- updated VIM to latest release
- updated vic to output in a window
+ added to Magellan an option to show Icaros version
+ renamed the 'About' option in Magellan to 'About AROS'
- updated vmware svga hidd to use FHD, 4K and 1440p resolutions
- updated AROS kernel
- added EasyRPG Player to Extras/Emu
+ added the game 'The Kidnapping of Princess Pri'
- added a launcher script for EasyRPG Player in the same drawer
- updated AmiCast Player to latest release
- added Hex2 calculator to Extras/Applications
- added for scripts
- added generic script icon to user-executable scripts in S:
- added debug mode: logging can now be easily performed
+ added debugmode script in S:
+ added "Create debug log" option in Magellan's Icaros menu
+ modified default snoopy.prefs in Envarc: to log everything


> Download link on Patreon

Thursday, January 10, 2019

"Can you please send me a debug log?"

by on Thursday, January 10, 2019
How many times did you stumble upon a faulty application? Developers are smart people and always care about their programs but, due to the fragmented nature of AROS (which works on too much different architectures, both native and hosted), it may happen that a program, or part of it, will not work on Icaros Desktop as expected. Not a big trouble: usually, it's just matter of sending an email to the developer, describing the nature of the issue, explaining how to reproduce it, and waiting for a fixed release. Some times, however, these steps are not enough and the coder asks you for a "complete log", which involves some deeper knowledge about the system: running Snoopy and Sashimi in the background, saving system messages somewhere, compressing them and so on. But what if you don't know how to do this? No problem at all! Starting with Icaros Desktop 2.2.6, you'll have a new option in the Icaros menu to record logs. See how it will work in this video!

Friday, January 4, 2019

Making vic graphical

by on Friday, January 04, 2019
Starting with Icaros 2.2.4, Icaros Desktop provides a script in S: called vic (Version of ICaros), which basically shows the installed version of the distribution. The first implementation of this script was similar to a CLI command, meaning that it wrote its output in the current shell. Due to its shell script nature, however, it could not output to a file, so you couldn't for instance, use it in another script or redirect its output to a temporary file. Leaving it that way was quite pointless: making it graphical would have been nicer. Using it with Magellan even better. And that's it:

Oh, yes. This screenshots says '2.2.6', because my work on Icaros is progressing as usual. If you'd like to make your current vic script behave like this on your installation, you just have to edit S:vic this way:

gsar -s.0 -r. -o t:C_I >NIL:
gsar -s00 -r. -o t:C_I >NIL:
gsar -s0 -r -o t:C_I >NIL:
echo NOLINE "Icaros Desktop version: " >t:C_H
join t:C_H t:C_I AS t:C_L
advice "Icaros Desktop" t:C_L >NIL:
delete t:C_H >NIL:
delete t:C_I >NIL:
delete t:C_L >NIL:

PS: you need Icaros Desktop 2.2.5 to let it work, and you still have to execute it from a shell.

Thursday, January 3, 2019

A wonderful tale about collaboration

by on Thursday, January 03, 2019
Let me tell you a nice story to start, as best as possible, this brand new year. Until not-so-long ago, AROS had not an Icon Editor. So, when I noticed that Paul Bloedel released a Hollywood based one for AmigaOS 4.1, I asked him if he would have been so kind to port it to AROS. He immediately sent me a build, asking me to test it because he had not a working AROS installation for this purpose. After a couple of fixes, the program finally started, but showed no buttons in the Painting Tool window:

I immediately sent this image to Neil Cafferkey and Andreas Falkenhahn, respectively one of the main AROS developers (who has worked very much on Zune, our MUI re-implementation) and the author of Hollywood and its Rapagui plugin, used by Icon Editor to show the GUI. I also provided a full log collected with Snoopy and Sashimi. The problem here was a little Zune shortcoming, since

"I'd guess that Zune doesn't support embedding images inside Text.mui using the \A tag. Here's the relevant information from MUI_Text.doc: 
        ESC A[x]
             draw raw ARGB data taken from struct MUI_AlphaData pointed to by
             <x>, i.e. "\033A[deadbeef]". The address may be prefixed with a '$'.

This is how RapaGUI and MUI Royale embed images inside buttons, lists, etc."   (A. Falkenhahn, nov 26th 2018)

As Neil pointed out immediately after, AROS already provided a way to include the images in the buttons: 

"came across this snippet at External images like those from AISS are to be used like this

Looking at the Zune sources, it looks like the above would work. Is this a possible work-around? (N. Cafferkey, nov 28th)

This was, to me, a damn good suggestion, since it gave me the mandatory hint to learn how to include image buttons in my LUA-based scripts. That's exactly how I could create my (still orphan) volume slider and the GUI selector at Icaros startup. However, it was not the same for RapaGUI and MUI Royale:

"I'm afraid that isn't a feasible workaround because Hollywood uses image data directly from memory pixel data so using \330I would require Hollywood to save the pixel data to a file first which is of course very very cumbersome." (A. Falkenhahn, dec 3rd)

On the same day, Paul Bloedel sent me a customized version of Icon Editor with text buttons instead of icon ones, so I could add it to Icaros Desktop 2.2.5:

But the story does not end here. In the following days, Neil worked on Zune to add the missing method. 

"I've now implemented \33A for ABIv1, and hope to have it backported to ABIv0 in a few days.
I wouldn't say it was "very simple" to do however :-) It took quite a few  hours, although that included writing code to generate a test image, and comparing results with MUI." (N. Cafferkey, dec 21st)

The follwing day, Neil sent me a very nice Christmas present: an updated version of muimaster.library that supported \033A on AROS i386 ABIv0. One of the missing pieces was in my hands. But there was still a little problem:

"Hi, looking at the code, I can see that RapaGUI enables ESC-A support if MUIMasterBase -> lib_Version >= 20 which corresponds to MUI >= 3.9.
I can adapt this for AROS if needed but you'd have to tell me the minimum version of muimaster.library required for ESC-A support on AROS...
(A. Falkenhahn, dec 27th 2018)

Unluckily, there are many several V20 attributes still missing in our muimaster.library, so Neil prefered the safest solution to keep V19 for now, and gave the following suggestion. If you are writing an application for AmigaOS and/or AROS, please write it down and keep it somewhere:

"You can test for ESC-A suport in AROS in C with:
if (MUIMasterBase->lib_Version >= 20 || MUIMasterBase->lib_Version == 19 &&
MUIMasterBase->lib_Revision >= 52)"
(N. Cafferkey, dec 29th)

And, on december 30th, just one day before the end of 2018, I could finally get the other missing piece of the puzzle. 

"Ok, so here is an updated version of RapaGUI. Please report back if this is working correctly and then I'll enable ESC-A support for AROS in RapaGUI and MUI Royale." (A. Falkenhahn, dec 30th 2018)

I replaced the old AROS versions of muimaster.library and RapaGUI with the newer ones, started the older version of Icon Editor with graphic buttons and... tah dah...

We finally have Icon Editor working as it should, with proper icon based buttons! 

I often asked people to help me with porting and compiling stuff, made tests, sent bug reports and, as like as in this case, kept track of the progress. I have other two similar projects still open, I hope to talk about them in the future. It's part of a distribution mantainer job, but I am not the only one who can act like this. What does this teach to us? That the best way to advance is collaboration. The whole Amiga community should collaborate to make the difference. Have a wonderful 2019!

Friday, December 21, 2018

Icaros Desktop 2.2.5 available for download

by on Friday, December 21, 2018
Christmas would be a cool time to release Icaros Desktop 2... 25! However, who's looking here and installing an OS on Xmas? Maybe we'd better releasing Icaros a few days before! A new, amazing update to Icaros Desktop is now available for everyone. First of all, I have to thank Paul Bloedel for having ported his Icon Editor to AROS. A tool like this was still missing on our platform, but we finally have one and its quality worthed the wait. Icon Editor can import PNG files and other Amiga icon formats, allowing to create double state icons and manage them quickly. Powerful painting and drawing tools are applicable to the picture or the alpha channel, and the editor also includes nice image effects. But this is obviously not the only feature. We now have a much more compatible browser: OWB has been updated to support latest AmiSSL encryption and it seems to be also more stable with current websites. Unluckily, its executable weights 170 MB and, since it wouldn't fit into Icaros Desktop Light, we had to wait for a "stripped down" executable which has been used for the Light edition only. Icaros Desktop 2.2.5 also features some enhancements to the GUI: Magellan can now show the current IP address and calculate MD5 checksum for any file. We also got new versions for many programs like VIM, VAMP, AbkViewer, RNO Effects, Protrekkr (this should fix an annoying bug with native drivers), PlayCDDA and brand new programs like GenerateMD5, AnimWebConverter, Advice and the MiniScheme language. We have also fixed many glitches here and there. In a nutshell, be prepared for the best Icaros Desktop release so far! So what are you waiting for? Head to our DOWNLOAD page to get your copy and become patron to get new releases before anyone else!

Icaros 2.2.5 includes a collection of double-state icons tailored to HostBridge and host applications

OWB has been updated

New from Icaros Desktop 2.2.4

- updated RNOEffects to v1.3
- updated 68K Paula driver for AHI
- updated AbkViewer to v0.0.6 in Extras/Development/Tools
- added AISS to Icaros Desktop Light edition
- updated AROS system files to November 26th, 2018
- added Icon Editor to Utilities
+ added needed images from AISS to System/Images/TBImages
- modified GUI selector and added a icon for its drawer
- fix: restored Icaros' Download Fonts script for OWB
- added 15 public-domain (CC0) FHD images to Extras/Wallpapers
- updated MCC_BetterString to v11.33 on i386 and m68k
- updated MCC_TextEditor to v15.51 on i386 and m68k
- added double-state version of Dark Glass iconset
- added double-state version of Logos&Brand iconset
- updated Protrekkr to v 2.5.4 (fixes problems with native drivers)
- added GenerateMD5 to C
+ added options to generate and copy MD5 to Magellan
- Magellan can now show current IP Address
- updated PlayCDDA in Multimedia
- updated VAMP in Multimedia
- added AnimWebConverter to MediaEditors
- updated VIM to latest release
- updated MCC_NList on m68K
- updated MCC_TheBar on m68k
- fixed a bug in ZuneARC preventing lha archives extraction
- added quitaros command for Linux and Windows hosted Icaros
- updated OBW to use latest SSL encryption, it's also more stable
- built Advice for i386 and added to C
- added 68k Advice to AROS M68K
- added minischeme to Extras/Development/Languages
- AmiBridge's ADD SHORTCUT script does not open unwanted windows anymore
- updated Icaros Desktop manual to reflect latest changes

Magellan can now show current IP address and calculate MD5 chacksum for selected file

Icaros Desktop 2.2.5 includes a new collection of fantasy wallpapers, released under the CC0 license