Octoate sent me words about his template-project for Code::Blocks IDE (which is a free and powerful source-code editor). Sample project allows to compile SDCC Tutorial Part 3 ("Hello World"). An archive is provided with step-by-step description. You can get more information here (also added in Articles section). Thank you Octoate !
PC-CPC is an Amstrad CPC emulator being developed by Demoniak. While not being 100% accurate with Amstrad CPC emulation these days, it actually replays decently Pheelone and Phreaks demos.
Internally, this software is made using C++ and WinAPI : both can be easily embedded inside a C# application. As a consequence, I decided to integrate the emulator as a plugin directly into Phactory.
So now once the final DSK file is built, it can be immediately launched under emulator, saving some precious time in the process of adding code / quick testing / adding back other code / etc.
PC-CPC usage is currently optional, there is an option in Phactory to revert back to external launch of WinAPE if required.
I still don't know where this emulator integration will end - Demoniak is currently adding new appreciated debugging features inside the emulator, so I wonder if these additional floating dialogs should be embedded as panels inside Phactory or let them untouched... more information about Phactory can be found here.
I went further with my own development editor lately.
First, I switched the build pipeline from PhrozenC to SDCC/SDCC2Pasmo. As a consequence, I can now use a full-featured ANSI C compiler using Maxam-style syntax for inlined assembly code. Additionally to that, it's now possible to double-click in Output Window onto a build warning / error if any to open directly the corresponding source file at right line location (like Visual Studioactually does).
Next, I decided to do major user-interface updates. As I want this tool to be completely adapted to my own needs and likes, I used a dark gray theme to relax my eyes while programming (changing default Windows theme colors was not enough to me). Also, Project Explorer (allowing resources management in project) and Output Window (mostly used to view build results) panels are now located by default at the left, with auto-hide state enabled. This allows me to focus on an extended view of the currently activated plugin (while developing, it's important to keep concentration and avoid any kind of distractions).
Finally, I did major clean-ups. I removed many custom features I specifically added to generate data for Phreaks demo (entirely written using previous version of this tool). I also removed unused features in user interface, that way it's easier for me to maintain the application.
So basically, that's it. Some screenshots are visible on product description page (click here). And oh, BTW - I also renamed the project, Phactory being waayyyy cooler than the too-much classical CPC.Net name :)
My personal conclusion thanks to my own experience with z88dk and SDCC was that SDCC produced much better code than z88dk. Today I got confirmation from one of the z88dk authors here : "sdcc currently generates code which in general is smaller and faster than the one generated by z88dk [...] it does support a more complete subset of standard C compared to z88dk. It is actively maintained (releases about once a year) and keeps improving.". Don't get me wrong : competition is good and actually benefits to both projects. Still - basically it's a fact that today SDCC is the best C compiler available for Z80 developments.
I updated the article with a new Tips & Tricks : How can I retrieve parameters in a C function from inlined assembly code ? Click here to read it.
I updated the article with a new Tips & Tricks : How to use multiple C source-files in a single project ? Click here to read it.
Once again - a new release. From here this release is a stable version and recommended for everyone.
Changelog : fixed other minor issues with IX/IY registers handling, added better support for #< and #> SDCC's operations, and finally, added only required C lib code at end of generated source file.
Thanks a million to Optimus for providing such a great support ! :)
You can download latest version here.