Delphi 12 And C++Builder 12 Community Editions Released!

We are thrilled to announce the launch of Delphi 12 Community Edition and C++Builder 12 Community, two full-featured, free versions of our renowned Delphi IDE and of our flagship C++Builder IDE.

The Community Edition versions are designed to empower startups, students, and hobbyists to create robust and scalable Delphi applications across multiple platforms, including iOS, Android, Windows, and macOS or powerful C++ applications for Windows.

While the Community Edition program is not new, Embarcadero is making the Community Edition version and license for the most recent 12.1 release of Delphi and C++Builder available today. While there was often a delay in bringing CE to the latest versions, Embarcadero has decided to release the Community Editions earlier to offer all of the great new features of Delphi 12 and C++Builder 12 to the developer community at large.

RAD Studio 12.1 Athens has been released

Embarcadero is very excited to announce the release of RAD Studio 12.1 Athens along with Delphi 12.1 and C++Builder 12.1.

RAD Studio 12.1 Athens release primarily focuses on enhancing the new features in RAD Studio 12, adding further refinements and addressing customer requests. At the same time, we have completed the development of the new C++ Win64 Clang–based compiler and toolchain, which was initially released in 12.0.

C++ and Visual Assist in RAD Studio 12.0

Embarcadero recently released a new blog post by David Millington about Visual Assist in the upcoming C++Builder 12.0 release.

Back in August, we gave a preview webinar of what is being worked on internally for C++, covering a preview of the updated Clang compiler, and our initial integration of Visual Assist.

The thing is, we held out a little. The preview was quite conservative. We didn’t share everything. In fact, we only shared about a third of what we’re shipping for Visual Assist.

Read the full post here:

Delphi Language: Modernizing String Literals

Marco Cantu has posted a blog article about a couple of new features that are coming in Delphi 12.0: Long String Literals, and Multi-line String Literals!

The 12.0 version of Delphi (and RAD Studio) introduces a very significant set of changes to the way the Delphi compiler handles string literals… With the coming release, it will be possible to have string literals longer than 255 characters… Delphi 12 will add support for multiline strings. In this case, you have to adopt a different syntax…

See his blog for full details:

https://blog.marcocantu.com/blog/2023-09-yukonbeta-stringliterals.html

Behind the Build: RAD Studio and C++Builder 12.0

Embarcadero recently released a new video by David Millington on YouTube about the upcoming RADStudio/C++Builder 12.0 release.

C++Builder 12 brings some massive improvements. We’d like to give you a look behind the scenes and a preview of what’s coming. Expect to see in-development tech, an exciting, unfiltered, behind-the-scenes look at what’s coming soon in two major areas: the new Clang toolchain, with massive improvements across the RTL, STL, linker, debugger, and more; and the Visual Assist integration, providing navigation, search, and refactoring for C++.

I’m an Embarcadero MVP!

I am now officially a new Embarcadero MVP!

To be honest, I have been offered this role before, but I turned it down at the time. Being a (now legacy) member of TeamB, Borland’s version of an MVP program, carried enough perks to last me awhile. But now, I can happily say that I finally accept this offer, so cheers to Embarcadero!

So, I guess I’ll have to start using this blog for something meaningful, like reporting news and tips and stuff about Delphi and C++Builder. And keeping up with my social medias. Oh, and finally upgrading my Windows PC so I can install the latest RAD Studio. 🙂

I’ve created a new category in this blog for all future Embarcadero-related posts going forward.

Happy blogging ahead!

Final shutdown of Yahoo Groups mailing list

As I mentioned a month ago, due to recent changes to Yahoo Groups, I have decided to shut down my email mailing list for good.  Future announcements will now be posted only to this blog.

As soon as Yahoo puts together all of the data I have posted to that group for me to download, I will delete the group permanently. I will archive any relevant data to this blog as time permits.

If you have not already done so, you can use your favorite RSS feed reader to subscribe to this blog.

Until next time…

Status Update

Long time no write!  Sorry about that.  I’m still around.  After my latest dead laptop, I have been using a loner laptop and have not been working on any of my projects for awhile.

Due to recent changes to Yahoo Groups, I’ve decided that after this upcoming new year, I’ll be shutting down my email mailing list for good.  Future announcements will be posted only to this blog.

If you have not already done so, you can use your favorite RSS feed reader to subscribe to this blog.

Until next time…

New MSAgent engine for Android

Can you imagine Merlin, Genie, and all of the other MSAgent characters flying around on an Android device? Well, now you can, because I have begun work on an MSAgent engine for Android.

I have been able to get Merlin to appear in a test app running in an Android emulator.  And on modern Android screen resolutions, he doesn’t take up a whole lot of screen space, which is a plus, so he might actually look good on phones and tablets alike.

I have some basic pieces working:

  • load ACS file from device/SDCard
  • an asynchronous request queue (TODO: canceling requests, syncing requests between multiple characters)
  • playing animations (TODO: stopping/interrupting animations)
  • show/hide, w/ state animations
  • moving the Character around the screen, either with touch input (dragging) or in code, w/ state animations
  • gesturing, w/ state animations

Although it is possible to display a Character on top of the app’s UI, and even on top of Android screens when the app is in the background, I did come across some odd quirks in managing the Character’s top-level window.  This might limit MSAgent to just in-app usages.  At least the character would stay on top of the app UI (good for tutorials and such).  Will keep experimenting with it.

I did start work on TextToSpeech output, but discovered some shortcomings with Android’s TTS framework, the most important of which is that there are no notifications of when individual words/phonemes are spoken.  That means words in the speech balloon cannot be highlighted while the character is talking (unless the text is broken up into individual words and feed into the TTS engine one at a time, which is likely to cause lag).  That also means that proper mouth overlays cannot be displayed.  This is a big issue for user experience.  Not sure if these will be solvable without resorting to third-party solutions.

I am trying to make it as functional as possible.  I’m not really expecting this to be a full implementation like on Windows, just due to some shortcomings of Android and differences between how Android and Windows work in general.  But it is an interesting challenge to see how far I can take it, it gets me back into playing with MSAgent, and it helps further my learning of Android app development.

I will try to put together a little video soon to show what I have so far.

When I have an Android library that is viable outside of my development environment, I will probably put it up on SourceForge or GitHub or something.