Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
  You are not logged in - nap
ALBERT 1.0.47 (Preview)   [2023]

ALBERT 1.0.47 (Preview) Released by :
Hokuto Force [web]

Release Date :
7 April 2023

Type :
Other Platform C64 Tool

Website :
https://www.luigidifraia.com/software/

User rating:**********  9.9/10 (18 votes)   See votestatistics
**********  10/10 (9 votes) - Public votes only.

Credits :
Code .... The Chaos Engineer of Hokuto Force
Graphics .... The Sarge of Bonzai, Fairlight
Design .... The Sarge of Bonzai, Fairlight
Test .... The Sarge of Bonzai, Fairlight
Help .... Flavioweb of Asura, Digital Monastery, Hokuto Force

Download :

Look for downloads on external sites:
 Pokefinder.org


Summary
Submitted by TCE on 7 April 2023
ALBERT - Easter 2023 Preview
============================

Welcome to ALBERT, the pixel editor for extended Commodore 64 images. In case you were wondering, ALBERT was named after Albert Charpentier, one of the VIC-II designers. However, ALBERT is also an acronym that stands for "Advanced Lightweight Bitmap Extender with Raster Tech".

ALBERT provides pixel artists with a single editor to create artwork that can only be displayed with the support of native code for the Commodore 64, without requiring the assistance of an assembly coder.
In its basic, publicly available, form, users can pixelate multicolor images that extend into the left and right borders of the visible screen, using multicolor sprites to display the extra pixels.
Individual sprite colors can be set on a per-sprite basis with just two exceptions, due to the so-called "bad lines". In fact, there are no demo-style nearly-whole-RAM-consuming tricks at play here.

The technical details in a nutshell:

- 2 whole columns of sprites in each side-border, for a total of 96 extra pixels (48 fat pixels) that get the total image width to 416 pixels (208 fat pixels),
- no glitches and no bugs in any of the sprites all the way to the external edges (try "Debug borders" in VICE's Commodore 64 emulator),
- stable code for PAL and NTSC machines.


Projects
========

Designs can be saved to project files for later modification. In fact, the application ships with a few example projects under the `sample-projects` folder.
A project contains all workstages, unless these were explicitly flattened by the user using the "Edit->Clear History" menu item.


Saving Workstages
=================

Workstages, also referred to as checkpoints in the history of changes, can be saved to PNG files. These can then be used to produce a timelapse to illustrate all production stages of the creative process behind a project.


Importing PNG Images
====================

Currently ALBERT can import non-native images as long as they are 24-Bit PNG files with a width of 416 pixels and a height of 200 pixels. Some of these restrictions will be lifted in future versions.
The color conversion method used to import images is based on a simple "nearest match" approach, which references the palette currently active: different palettes will produce different results at conversion time.


Exporting to PNG
================

The current contents of the drawing canvas can be exported to PNG images, handy for being used as screenshots e.g. when uploading a release to CSDb.


Exporting to Executable PRG
===========================

The current contents of the drawing canvas can also be exported to executable PRG files, which include the necessary support code for PAL and NTSC machines.
Executable files are crunched using Exomizer 3.1.1, whose binaries are included in the distribution archive of this application in order to ensure a seamless and consistent experience for end-users across a variety of supported operating systems.


Keyboard Keys
=============

The available key shortcuts, which are not already menu item accelerators, are detailed below:

Keys 1-8: set color for the pen associated to the left mouse button
Keys , and .: decrease and increase brush size for freehand drawing
Key a: replaces pixel color from pen 2's to pen 1's
Key x: swaps pixel color from pen 2's to pen 1's
Key b: activates the pen tool
Key e: activates the erase tool
Key g: activates the flood fill tool
Key space: activates the pan tool, until released
Key r: activates the rotation tool, until released; left click and drag the canvas around to rotate it while active
Key Alt (left): temporarily activates the color picker tool if it makes sense base on the active tool (pen, erase, fill, pan)
Key Shift (left or right): locks the drawing direction if the pen tool is active or snaps the rotation angle by the nearest multiple of 15 degrees if the rotation tool is active (r key)
Key z: when reference grids are active, press it to switch their color between two different shades of grey and improve cell grid visibility
Key Shift (left or right) + z: when reference grids are active, press both to toggle the pixel grid on and off
Cursor Keys: translate the canvas


Lua Functions
=============

A number of Lua functions are provided for programmatic drawing. Here's a comprehensive list:

drawclear (): clear the canvas using the current background color
drawfill (pos_x, pos_y, color): flood fill starting at the given coordinates
drawbrush (pos_x, pos_y, color): draw a brush at the given coordinates
drawline (from_x, from_y, to_x, to_y, color): draw a line with width 1 connecting the given coordinates
drawcircle (center_x, center_y, color): draw a hollow circle with line width 1 and centered at the given coordinates
drawcirclef (center_x, center_y, color): draw a filled circle centered at the given coordinates
drawstar (top_left_x, top_left_y, width, height, color): draw a hollow star
brushsize (size): set brush size; valid values are 1 through 16
checkpointon (): enables the creation of checkpoints in the history of changes after a drawing operation, if it modifies the contents of the canvas
checkpointoff (): disabled the creation of checkpoints in the history of changes after a drawing operation
checkpointsave (): creates a checkpoint in the history of changes, which is useful to compound multile drawing operations in a single checkpoint while checkpointing is globally disabled
exportpng (full_path): saves the canvas to a PNG file
invalidateon (): enables the automatic refresh of the canvas display after a drawing operation, if it modifies the contents of the canvas
invalidateoff (): disables the automatic refresh of the canvas display after a drawing operation
drawrefresh (): causes a refresh of the canvas display

Note that these functions, including names and input parameters, might change between now and the date when the first official release of ALBERT will be published.


Known Issues
============

Under macOS:

- If a user drags a project file on the main program window while it's partly hidden behind another window and there are unsaved changes for the active project, then the dialog to confirm whether you want to continue will be hidden behind all of the mentioned windows.
The confirmation dialog is modal, which means that unless the user moves other windows out of the way to show it and interact with it, the main program window will appear unresponsive.
- The radio menu items do not update based on the currently active item.

Unfortunately there is no obvious workaround for either one of these issues.


Future Plans / Unfinished Features
==================================

The following items are almost entirely based on my availability of free time:

- Additional extended modes: hi-res sprites, expanded sprites, overlapping sprites, etc.
- Additional key shortcuts, including the ones for colors 9-15
- Linux builds
- Additional brush shapes and outlines
- Handling of selections: clip drawing operations, copy, cut, and paste
- Handling of clipboard contents
- Color correction tool at the point of importing non-native images
- Bespoke canvas size upon creating a new project
- A version based on GTK 3 is not entirely out of question as I've been careful to minimize migration efforts required to upgrade
- Multiple image editing mode


Help Wanted
===========

If you have successfully packaged Linux GTK 2/3 applications under Debian 11 with Flatpak and wish to lend a hand, I'd welcome your help.


Reporting Issues
================

Until I get a chance to set up an issue tracker, you can head to the following URL and use my contact form for reporting issues with ALBERT: https://www.luigidifraia.com/contact/
Remember that if an issue can't be repeated at will by the individual who reports it, then it might be quite hard for me to find its root cause and fix it.


Credits
=======

ALBERT and the supporting Commodore 64 "stable" code were written by Luigi Di Fraia a.k.a. TCE.
UI design, UX, and help testing was provided by Joachim Ljunggren a.k.a The Sarge.
Help, suggestions, and ideas for the Commodore 64 code were contributed by Flavioweb.
Exomizer was written by Zagon. For additional information visit: Exomizer V3.1.1
Search CSDb
Advanced
Navigate
Prev - Random - Next
Detailed Info
· Summaries (1)
· User Comments (32)
· Production Notes
Fun Stuff
· Goofs
· Hidden Parts
· Trivia
Forum
· Discuss this release
Support CSDb
Help keep CSDb running:



Funding status:




About this site:
CSDb (Commodore 64 Scene Database) is a website which goal is to gather as much information and material about the scene around the commodore 64 computer - the worlds most popular home computer throughout time. Here you can find almost anything which was ever made for the commodore 64, and more is being added every day. As this website is scene related, you can mostly find demos, music and graphics made by the people who made the scene (the sceners), but you can also find a lot of the old classic games here. Try out the search box in the top right corner, or check out the CSDb main page for the latest additions.
Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.113 sec.