Return to main site

News Flash (September-05-2022)

These are the news about BareED for September 2022.

Improvement and fixes:

BareED 0.10037 (May 2022)

  • Fixed menu-item "Thai-Mode?" to enable Thai again... (already 2011 fixed but never released)
  • Find & Replace requester allows tab-key to be used to choose next/previous gadget (Joseph).
    Already 2014 implemented but never officially released.
  • Focus of Find & Replace requester after each click returned to editor window using tool-type "FOCUS=EDITOR" (Joseph). (2014)
  • Computing VBlank fixed. (2014)
  • Container width for objects of status line a little bit wider for supporting anti-aliasing fonts. (2014)
  • Layout of GUI elements a bit wider (concession to AfA_OS and anti-aliasing fonts) (Maximilian). (2017)

  • New features/bug fixes as of 2021/2022:

  • Files covering Thai letter sequences can now be saved and loaded as a UTF-8 encoded using the Unicode character set. For this the menu item "Load/Save Thai as Unicode/UTF-8?" was added.
    If the menu item "Load/Save Thai as Unicode/UTF-8?" is turned on, characters are not only written in UTF-8 format, but the Unicode character set is used to convert these characters.
    Watch out!
    This means as consequence that only ASCII and Thai letter sequences survive!
    However, the corresponding glyphs are still displayed as single-byte characters (limitation of the operating system) and for that to achieve, you need special fonts for it designed by Dr. Lyndon Hill.
  • AppIcon support implemented.
  • Iconification support - as long as no separate screen was opened (!) (suggested by Luca).
  • Possible buffer overflows for file names and other internal character strings are minimised by consistently replacing the "C-Standard-Lib" alike functions by own written respecting boundaries.
    BareED versions up to version 0.10013 already used safety variants but as these do not append a zero byte in all cases, own written are now used.
    As before, BareED only handles file names no longer than 255 characters internally; the same applies to the path names. The font names and the DAC names can be a maximum of 107 characters. However, in order that the DAC names fit into the corresponding menu, only the last 30 characters are displayed.

  • New tool-types:

    • FOCUS=EDITOR (2014)
      Return focus to editor window after having entered the string(s) in Find&Replace requester.
      Useful when using Gui4Cli scripts.
      Do not utilise those colours set in a project icon upon loading a file in question.
      See menu item "Adapt Colors?".
    • TIS620 or TIS-620
      Turn on TIS-620 (Thai) support from the outset.
      See menu item "Thai Mode?".
      Instead of reading and writing TIS-620 encoded files, use the Unicode character set and UTF-8.
      Even this tool-type is set or the corresponding menu item "Load/Save Thai as Unicode/UTF-8?" is turned on, a check will always ensuring that the read file is UTF-8. If it is not, it will be loaded as TIS-620 but saved as UTF-8! The bad side effect is that TIS-620 allows non-ASCII characters and non-Thai characters placed within this file, while Unicode does not, i.e. such UTF-8 saved file will likely contain also characters for a different code block (i.o.w. language)!
      Man, it's really time for a Unicode aware text system...
    • UTF-8-BOM
      Write along with the UTF-8 file the UTF-8-BOM - required by some MS software. Don't use it for Amiga nor *NIX systems!
      Show an AppIcon on Workbench - see menu item "Show AppIcon on WB?".
    • REQxxxx
      Remembered ASL requester positions und dimensions (only valid for BareED's program icon or a default-project icon).
      New tool-value for the DISABLE tool-type.
      The original behaviour of BareED was not to pay any attention to the fact that lines of text were covered by its own requesters, e.g. when using the Find&Replace requester. New versions now scroll the text content so that these text lines appear above or below the requester, if this is possible at all.
      Unfortunately, this involves time-consuming calculations. To bypass these calculations, this feature can be turned off and then BareED behaves the same as old versions.

  • Static menu items used as delimiter with inverted colours displayed correctly again (I didn't notice this because I don't use these concerned menu items but the equivalent key shortcuts).
  • Knob-bank (button-bank) supports descriptions for any knob (button) (a long, long time ago already suggested by Lyndon...).
  • Default-projects do now have a higher priority than BareED's own settings, while utilising also the base settings specified in BareED's icon.
  • Back-buffer remembering of colour values specified in a project icon instead of relying on adapted and probably not-quite-correct returned values by Graphics - minimises the chance that false colours make it into a project file.
  • Remembering of all used ASL requester positions and dimensions, either manually entered in BareED's icon or automatically in case saving a default-project.
  • BareED now stores about all of its supported tool-types in case a default-project is saved to disk, even those that are not used (disabled by parentheses in the concerned icon).
  • Status line can be turned on/off using "Settings" menu whenever required.
  • New menu items for saving presets to disk - either for using these from the outset (BareED) or for creating default-projects.
  • Changed all AllocMem() / FreeMem() calls to AllocVec() / FreeVec() - gaining some hundrets bytes of code.
  • Removed Enforcer/MuForce Hit in "THL AmigaGuide Demo" when this DAC application was forced to use a new ground (switching screen).
  • Find&Replace requester does not obscure search result any longer, if this is possible at all, by shifting page contents (a long, long time ago already suggested by Lyndon...).
  • DAC menu extended by new item to turn off running plug-ins.
  • DAC menu allows 20 plug-ins to reside herein, formerly 16.
  • Find&Replace requester does not cover the line of text if jumping to a line or bookmark is performed, by shifting page contents, if that is possible at all.
  • Increased drastically speed (300%+) for retrieving hash values for "THL_C_Cpp" as well as "THL_ARexx" by studying different compiler generated m68k code and simplifying it.
  • The signal evaluation occasionally could have caused an Enforcer/MuForce hit.
    I guess that this error was present since years but I didn't notice this till now, because a task switch in the middle of the evaluation had to occur in order to trigger it at all. Fixed for v0.10029.
    Two entire evenings spent to find out what went wrong.
    By the way, while I was at it anyhow, multiple events can now be collected and sent as one event to any DAC-application requesting a PageUpdateMessage; this gives significantly better results when debugging DAC / THL-applications because several re-drawings of the same line of text is suppressed and BareED almost instantly gets back control (new tool-type "CME", "CME" stands for: collect multiple events).
    Please, don't specify "CME" in BareED's icon unless you really have to as this could potentially lead to miss mouse moves or mouse button presses.
  • Listed application names in the DAC-menu strip will be now correctly compared in order to avoid launching the wrong one (e.g. "Test" and "Test1" could resulted in launching "Test1" if this one was placed before "Test" in the menu strip).
  • DAC/THL-applications could miss the removal of the entire archive when a new region was allocated and the old was freed. BareED forgot to inform all DAC / THL-applications about it, what led to trigger an Enforcer/MuForce hit in these concerned THL-applications.
  • Revision control can now be managed by using the corresponding menu items (date format selectable and up to 5 out of 10 lines of text can now be defined) and not only by adding those manually in the corresponding icon.
  • If the page offset changed horizontally due to jumping to the bottom of the page and the last line of this page contained only an empty line (linefeed), BareED missed to inform DAC / THL-applications to redraw entire page.
  • "THL AmigaGuide Demo" replaced by "THL_AGuide", which allows, like "THL_C_Cpp" and "THL_ARexx", to use user defined colours for identifiers. By the way, "THL_AGuide" does not base on "THL AmigaGuide Demo", instead it was written from scratch.
  • Enclosed new version of "THL C & C++" which is now called "THL_C_Cpp" because some compilers refused to accept object names containing "&" and/or "+" signs.
    Brought in line all by me written DAC and THL-applications (plug-ins), i.e. they now rely on the same header files.
  • Removed font "excel" from distribution because I don't want to see my fonts modified and used under different names without informing me in first place, what should have been the normaliest way of acting.
  • BareED does not run correctly under the Vampire hardware - so don't use BareED on these systems. You have been warned.
  • Slightly updated BareED's documentations. Since years of ignoring BareED's documentation (guide) I come to the conclusion that it must be written from scratch, but that's too much work for such an old program. So I marked only those chapters, which were updated.
  • Reworked developer material lined up.

  • BareED 0.10043 (September 2022)

  • .10038
    Completely revised obtaining pens; introducing the reallocation of pens, which is only performed if really necessary; i.e. if an already by the OS itself obtained and non-releasable pen is used, no further allocation is done by BareED, which minimises the chance for getting a different pen with a slightly different colour.
  • .10039
    Fixed applying the update format string for Canadian style revision control strings, for example "(11.08.2022)" became "(12.08.20)". Ouch.
    Revised also the catalogue files to that effect.
  • .10040
    DAC-port function pm_RedrawChars() extended ensuring that the length supplied is bound to one line of text only. Due to this check, two further validations take place upon facing a selected block of text. This all ensures that even if pm_RedarwChars() is called with invalid parameters, no harm can be done to BareED's displayed text anymore, i.e. dead debris, as caused by deselecting blocks of texts, or double displayed lines of text being now things of the past. Although this sounds trivial, it took me quite a lot of time to find out what went wrong, because pm_RedrawChars() itself feeds four other routines.
  • .10041
    Removed completely code for checking whether a block of text was selected, modified, or deselected which has got a huge impact speed-wise, because no more multiple events for a single action will be sent to the plug-ins in question accidentally. In 2007 (as far as I remember) I changed the entire process for rendering texts in order to support also anti-alias fonts but forgot disabling this function, which contradicts any effort in regard to have a central point for sending reliable results to running THL apps. The marking of a block of text does not any more slow down the machine to 10 percent of its normal speed in some circumstances.
    Function SendPageUpdateSettings() (main function to send messages to THL apps) is now also responsible for informing THL apps whether or not a block of text was deselected, instead of doing that in the concerned sub-routines, wasting resources which are not necessary.
  • .10042
    Upon inserting a block of text (e.g. inserting a text clip) and allocating a new storage area for the archive due to the old memory area had too little space left, no information about a new archive (new storage area) was given to the running THL applications, resulting in Enforcer/MuForce hits in these applications.
    The same routine had a bug that, when allocating a new storage area, didn't properly adjust the selected block of text area so that these pointers pointed to the old allocated storage area instead of the new one, which obviously caused an Enforcer/MuForce hit in BareED itself.
  • .10043
    I had messed up some things in the handling of projects (default projects), so that mostly only from the fallback project, which itself was deposited in BareED's icon as a tool-type, the settings were taken over. Now, the handling is performed accordingly BareED's documentation again.
  • THL_C_Cpp & THL_ARexx
    Reworked C style comment handling routines; reduced memory access, which means they are now a bit faster and nested comments are only shown for the next/previous 2.5 pages, although those apps were correct in showing the rest/beginning entirely in the remark's colour, I castrated them, as this slowed down editing considerably and as I often edit large C source codes, this was a showstopper.

  • Still, BareED does not run correctly under the Vampire hardware - so don't use BareED on these systems. You have been warned.