#DeluxeDraw

2025-10-26

Running on Linux too.

#DeluxeDraw #DeluxeUI #foss #golang

2025-08-25

I extracted the Sinclair font from a Spectrum ROM and generated a .bdf file from it that I can use with Deluxe Draw and any other program that supports the bdf format 🙂

UPDATE:
Here is my updated repo with sinclair.bdf and many other fonts.
github.com/ha1tch/bdf-fonts/tr

#ZXSpectrum #Spectrum #Speccy #DeluxeDraw #retrocomputing

2025-08-21

guiscii

Draw UI in plain text → get working Deluxe UI widgets.

Introducing guiscii: Look mum, no XML!!! Refocusing now to improve the GUI code so I can ship proper UIs in my tools.

#gui #deluxedraw #deluxeui #foss #golang #guiscii

2025-07-24

Studying palette icons in Deluxe Paint and Photoshop. It's about time that Deluxe Draw gets rid of its text-based buttons.

#pixelart #DeluxeDraw #DeluxeUI

2025-07-24

This is another prototype where I'm putting together some of the earliest optimised canvas drawing I had written for the first Deluxe Draw version (last month), I replaced the bespoke hardcoded GUI elements with Deluxe UI widgets (newly written, in the last couple of weeks), and re-implemented parts of (last week's) ZX Draw code example I had written for Deluxe UI.

In theory, if this experiment succeeds, I should be able to deliver a Deluxe Draw that is able to work with both, modern layered pixmap painting, and with old ZX Spectrum mode painting. And with Deluxe UI running unmodified on Mac, Linux, and Windows!

So far, so good!

#ZXSpectrum #Spectrum #Speccy #DeluxeDraw #DeluxeUI #pixelart #golang #foss

2025-07-20

Not much to report. Working on a new attempt to reconcile the Deluxe Draw prototype I had written earlier with the second prototype of a ZX Spectrum painting program, fusing both into a single concept. I made a little progress today!

#DeluxeUI #DeluxeDraw

2025-07-18

Also, this is the Deluxe UI demo program in the 'examples' folder called "w98", which aims to offer a custom theme that looks like Windows 98, this time running on Linux too.

#DeluxeUI #DeluxeDraw #foss #golang #w98

2025-07-18

Deluxe UI with ZX Draw on Linux, and a native host OS dialog box that actually works!

Ensuring that the toolkit works across all three major desktop GUIs may not look like much if you're coming from Electron-world but it does matter a lot that this is just a small self-contained binary with minimal OpenGL dependencies (also no JVM, .NET CLR, GTK or QT needed).

At least to me it does matter! This gives me more confidence that I can actually write competent desktop GUI stuff and complete #DeluxeDraw for general pixel art as intended, and maybe the Postman substitute "Getman" as well (especially without massive Electron / Chrome / Node dependencies)

#ZXDraw #ZXSpectrum #Speccy #DeluxeUI #DeluxeDraw #golang #foss #NOELECTRON

Screenshot of a Linux desktop screen running a ZX Spectrum pixel painting program called ZX Draw / ZX Spectrum Paint, based on the Deluxe UI toolkit. The program is showing the classic Head Over Heels load screen from ZX Spectrum days, with a "File - Open" dialog box overlaid on top, waiting for the user to select from four .scr Spectrum screen files.
2025-07-18

Minor rendering problems on Linux and Windows, tested on actual running machines. These errors have already been fixed on Mac. Only need to port the fixes. It ports!!

#DeluxeUI #DeluxeDraw #Getman #foss #golang

2025-07-17

OOPS! WHAT HAVE I DONE? 🤣

#DeluxeDraw #DeluxeUI #golang #GETMAN. #webdev

2025-07-16
2025-07-16

Alright, painting, saving, and loading works now. Still fixing some menu problems with the z-order.

#DeluxeDraw #pixelart #foss #ZXSpectrum #Speccy #Spectrum #golang

2025-07-15

Just for fun another little throwaway app that has helped me to find some problems with the menu system (they're not always observing the z-order, as you can see in the screenshot).

So far it seems that you can actually build a working app using this, save for minor details. OS host integration is almost working too. All in all a great experiment to wrap another Deluxe Draw work day!

#golang #foss #zxspectrum #speccy #spectrum #pixelart #DeluxeDraw

2025-07-15

It kind of makes sense for creative apps like a pixel art tool to be able to pick colours. I'm not sure I would do a good job of coming up with a competent replacement to be honest.

This is exactly where some host OS components make sense.

#DeluxeDraw #golang #foss

2025-07-15

Experimenting with native OS integration of Deluxe Draw for stuff that makes sense to offload to the host OS.

We already have OS dialog boxes, and they already work just fine, but I'm considering whether it makes sense to integrate other parts too, like modal windows and system menus, on certain hosts.

#DeluxeDraw #foss #golang

2025-07-14

DPF validation. What's not to like?

#golang #foss #dpf #pixelart #pixmap #bdf #DeluxeDraw

2025-07-14

If you so choose, you can use ASCII palette indices in DPF files, just like you would in XPM files. But in DPF there's no reason you wouldn't use any Unicode codepoint for palette indices. In fact, if you use coloured square emojis instead of plain ASCII characters,.
If you do it that way, when you cat a .dpf file with icons, what you will get will be... oh surprise!

...icons!

#DeluxeDraw #pixelart #foss #golang #xpm #dpf #bdf

2025-07-13

Now I'm thinking how to reconcile the typical layered pixmap editor that Deluxe Draw aims to implement with the ZX Spectrum colour model.

That would require the editor to support layers of different resolutions:

  1. background plane with attributes (32 x 24)
  2. bitmap plane on top (256x192) acquiring colours from the attribute layer underneath.

It could conceivably be construed as a blend mode of sorts. That might possibly work.

The blend mode seems doable, the different resolutions per layer is more tricky or possibly hacky.

#DeluxeDraw #foss #golang #pixelart

2025-07-13

It kind of works. Obviously this is not Deluxe Draw itself, but a little icon editor I hacked together quickly, I just couldn't stand all the palette buttons with only text.

As a welcome side effect, the DPF file format used for icons will be the same format I'm going to use for Deluxe Draw palettes. A palette file is a DPF file that only has palette information and no pixels in it. If you think of it for a moment, it makes you question why nobody else did it the right way before.

Palettes are metadata about pixels. There's no good reason to create palette file formats, palettes are part of the same thing.

#DeluxeDraw #golang #foss #pixelart

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst