amiga-news DEUTSCHE VERSION
.
Links| Forums| Comments| Report news
.
Chat| Polls| Newsticker| Archive
.


.
  Per page
Show titles only
.


Archiv 'Updates for hardware and software products'


25.Jan.2024



AmigaOS 4: Code analysis with Cpppcheck V2.13r1
In September 2022, George 'walkero' Sokianos made an AmigaOS 4 port of Cppcheck, a static code analysis tool for the C and C++ programming languages, available for the first time. The tool is designed to be able to analyze your C/C++ code even if it has non-standard syntax common in embedded projects. The latest official version 2.13 has now been ported. (dr)

[News message: 25. Jan. 2024, 11:51] [Comments: 0]
[Send via e-mail]  [Print version]  [ASCII version]
25.Jan.2024



Programming assistance: AmiBlitz 3 templates for RTG Amigas and Apollo V4
Sami Vehmaa wants to encourage more people to develop games for the Amiga platform and to this end offers templates for the RTG version of AmiBlitz 3 on itch.io with "AB3_Templates". After he had already started to publish the source codes of some games written with it last year (amiga-news.de reported), he has now not only made the complete package available free of charge, but has also published a version specially adapted for the Apollo Vampire V4 and called "Amiblitz3 Vampire!". (dr)

[News message: 25. Jan. 2024, 06:41] [Comments: 0]
[Send via e-mail]  [Print version]  [ASCII version]
24.Jan.2024



Game Construction Kit: RedPill 0.9.33
RedPill, developed by Carlos Peris, is a game construction kit written in Amiblitz 3.99, which allows the development of games from various genres (e.g. Agonman). RedPill is compatible with AGA and ECS, the "player" for playing the finished creations requires a total of 1.5 MB RAM. Jens 'Farbfinsternis' Henschel has written a tutorial.

As the developer explains to us, the new version 0.9.33 now allows the special output of the game code for an A500 or similar system by using fewer resources and disabling some functions. There are also a lot of general optimisations and a new screen for editing and converting images, as can be seen in this YouTube video. The changes in detail:
  • Added a new Build Game option to target low end machines (like A500 with 1MB). This reduces the maximum number of level objects (from 64 to 32) and disables some code like CD32 audio and storage among others to reduce memory needed and increase performance of the games.
  • Multiple optimizations in all fronts reducing the CPU and memory required by games.
  • When forcing NTSC resolution the game will use less Chip memory.
  • Static objects are now updated first, I hope this do not break old games as sometimes the execution order could be different.
  • Added a new screen for Frame manipulation, copy&pasting, rotating, scaling, can be done in this screen. Find more information in the guide.
  • Default input key for Fire 1 has been changed to left caps key.
  • In Game Setup screen there is a new Mem Info section that will give an estimation of the memory used by the game. Take it with a pinch of salt.
  • Build does not copy diskfont.library anymore as it is not needed.
  • Fix in Collision Down being triggered when there was any collision.
  • Optimization in tile accessing.
  • Small optimization in palette processing.
  • Optimization in action trigger processing.
  • Compression for SFX has been deactivated as sometimes it fails and others prevent loading.
  • In Screen setup screen now you can decide if you want subpixel scrolling or not.
  • When Building a project there are warning messages if the files cannot be compressed.
  • When loading a project, this loading action now can be cancelled.
  • Files ".pal" in projects are now used in a different way.
  • Camera limits code has been simplified.
  • Fixes in the FX rendering.
  • Action trigger Frame by Angle fixes.
  • Animation frames are now cleared when starting a new project.
  • When compressing projects, if the asset is not properly compressed now it tries to load the file without compression.
  • Refactoring of level loading and tileset loading that reduces the exe size and memory usage.
  • Refactoring of the main loop camera and display system.
  • Trigger actions system optimization.
  • Small optimization in Change Tile trigger.
(dr)

[News message: 24. Jan. 2024, 04:53] [Comments: 0]
[Send via e-mail]  [Print version]  [ASCII version]
22.Jan.2024



Image editing: RNOEffects 2.0 for all Amiga systems
Developer 'jPV^RNO' has updated RNOEffects from its family of RNO applications to version 2.0. RNOEffects is a simple image editing programme with a focus on batch conversion options and alpha channel-based effects. Highlights of the update include the pixel editor tool and saving images in palette mode (YouTube video). The complete changes:
  • Added the "Pixel editor" tool with configurable pixel drawing options for left, middle, and right mouse buttons
  • Added the "Color picker" tool to show colour information under the mouse pointer and to pick and store multiple colour values temporarily
  • Added the "Area selector" tool which can be used to apply certain effects on a limited area of an image
  • Added the "Toolbox" tool to reduce pull-down menu use
  • Added support for saving images in the palette mode (1-8 bits), optionally with 16 pre-defined palettes including the MagicWB palette
  • Palettes can be saved in IFF ILBM, RGB32, LoadRGB4, and LoadRGB32 formats
  • Palette images can be saved as chunky data
  • Chunky image data and separate palettes can be saved as a C source code
  • Added an option to use an opacity map to apply an effect partially on an image (works with Blur, Contrast, Draw/Brush, Gamma, Modulate, Monochrome, and Tint effects)
  • Added "Chroma key" and "Luma key" effects to make colour ranges transparent
  • Batch converted images can be saved as a video
  • Added MagicWB support for the icon saving
  • Added information about the program state in the window title
  • Added Undo button on effects' windows
  • Function key shortcuts can be used to save images in several formats
  • Added an option to swap the main image with the buffer image
  • The Opacity map effect can use the buffer image as an opacity map
  • Added an option to invert the Opacity map effect
  • Added opacity map examples in the OpacityMaps directory
  • Renamed the "Reduce alpha" effect to "Alter alpha" and added an option to remove the whole alpha channel from an image
  • Background images can be centered in the Background effect
  • Added an option to clear the current image
  • Undo buffer wasn't initialised when loading an image at startup
  • Fixed colour picking with scaled images
  • Fixed Charcoal and Edge effects for images with transparency
  • Better window resizing when loading images
  • Skip arrow key operations if a command key is pressed simultaneously so as not to affect mouse pointer control via the keyboard
  • Arranged effects in an ordered format in the menu - into categories
  • Included JPEG2000, PCX, and TIFF plugins
  • Added support for saving images in JPEG2000 and TIFF formats
  • Select specific image/state to load of icon with multiple images
  • Added a setting to load icon properties and use them in icon saving options
  • Files can be drag'n'dropped into a batch conversion file list
  • Tool windows open at startup if they were open when settings saved
  • Other minor fixes
RNOEffects is available for all Amiga systems on Aminet. (dr)

[News message: 22. Jan. 2024, 22:12] [Comments: 0]
[Send via e-mail]  [Print version]  [ASCII version]
22.Jan.2024



AmigaOS 4: elf.library V54.1
Hyperion Entertainment has released the new version 54.1 of the elf.library (Executable and Linkable Format) for AmigaOS 4, which is available via AmiUpdate. Changes since version 53.30:
  • Added AmigaDOS pattern support in load-time-blacklist (as an example "amissl_v#?.library" will now exclude all of the AmiSSL sub-libraries without having to list each separate library explicitly).
  • Reduced Elf_Collector process to a bare minimal process without all the pointless and unused decorations, backed off the priority to -5 and increased the polling wait to 1 second, increased the cache flush time to 300 seconds.
  • Added ADDR24 reloc support required for kernel 54.48 and higher.
  • The filesize parameter from Openelf.c was downsized from INT64 to UINT32 and then passed to ObtainCachedElfHandle() where the value was then stored in the elfhandle as an INT64. Remove the downsizing in Openelf.c and ObtainCachedElfHandle() to pass and store only INT64 now.
  • Fixed CopyDataSegment() reloc failures from being silently ignored (was returning successfully, instead of an error).
  • Rewrote CopyDataSegment() to no longer need to load relocs from disk each time it is called. Instead, the required relocs and information are stored during ElfLoadSeg() for later use. This allows applications to set OET_NoDOS when opening the file handle, instead of needing to maintain a file lock until the application exits.
  • CopyDataSegment() will now additionally use a .bss, .sdata or .sbss section as the reference for the baseOffset, if a .data section is not present.
  • Fixed several bugs with error handling in Elf32_LoadSegment. Previously, a failed read would lead to either an infinite regress or a deadlock.
  • Implementation of Elf32_CallConstructors and Elf32_CallDestructors. These are now called from inside InitSHLib in place of __shlib_call_constructors and __shlib_call_destructors. This has the benefit of being compiler and stdlib independent (so more generic). It also solves the problem, that the previous solution would in fact not work but (due to some problem with gcc __attribute__((section)) probably) would call an incomplete array of constructor functions.
  • Fixed bug in the storing of any data relocs, which would crash if the buffer needed to be enlarged.
  • Fix CloseElfTag in Elf32_CallConstructors and Elf32_CallDestructors.
  • Ensure that RELA section has been loaded in Elf32_OpenReloc.
  • Add GST_Load, TRUE to RelocateSectionTags in Elf32_CallConstructors/Destructors.
  • Added crash condition to OpenElfTags() in Elf32_CallConstructors/Destructors.
  • Fix a case of very bad error handling in Elf32_HandleRelocs (Timberwolf).
  • Fix a bug in relocbuffer.c. ElfSeek would not be called before ElfRead in Elf32_RefillRelocBuffer, which would lead to faulty reads. Several names have been changed to better clarify structure. This completes the fix for Timberwolf in the last revision.
  • Elf32_CallConstructors/Destructors have been updated to account for .init_array and .fini_array sections.
  • Open/CloseElfTags calls have been updated in the same two functions to account for correct reopening/reclosing of elfhandles.
  • Fix closing of OET_ReadOnlyCopy DOS filehandle in CloseElfTags.
  • Added GetSOHandles() function.
  • Change Elf32_CallConstructors/Destructors to handle .ctors/.dtors array starting with -1 instead of NULL, which fixes shared objects crashing that were compiled using newlib SDK >= 53.84.
  • Change Elf32_CallConstructors/Destructors to better handle missing NULL termination in .ctors/.dtors and added debug output to report such cases.
  • DLOpen() will now return NULL if any attempt is made to use it to open an ELF file that is not actually a shared object type.
  • Fix OpenElf() not initializing the shared object array, which caused CloseElf() to crash unless ElfLoadSeg() had been called.
  • Fix internal elfhandle flag never actually being set for shared objects, due to the code being placed before the header was read.
  • Program header loadable segments are now always loaded as segments unless the .rodata section is contained in a section containing an executable section, in which case sections in that segment are loaded separately, as before.
  • Don't unnecessarily call CacheClearE() individually for each and every reloc applied during ElfLoadSeg(), as we already flush that memory from the caches soon after anyway. This should speed up the loading of large executables.
  • RelocateSection() now correctly flushes the processor cache when R_PPC_JMP_SLOT relocs make changes to the PLT.
  • Elf32_CallConstructors/Destructors no longer attempts to relocate .ctors/.dtors, as ElfLoadSeg() will have always already done this.
  • Elf32_CallConstructors/Destructors no longer needs to open and reread the file, as the section indices are now saved by Elf32_OpenSOLib() before unloading the string sections.
  • Do not ignore ELFCMD_DOS_SEEK errors.
  • Correct autodoc for ELFCMD_DOS_SEEK to specify OFFSET_BEGINNING instead of OFFSET_CURRENT and changed return value to be boolean.
  • Fix recursive loop, which overflowed stack and crashed, which could happen when attempting to load a corrupt file, if there is an issue with the section name string table.
  • Check section headers for signs of corruption and, instead of crashing, display a message on failure and fail gracefully.
  • Protect against attempted incorrect/large/invalid memory allocations when loading sections from a corrupt file.
  • Add new error code ELF32_INVALID_HEADER to .
  • UnloadSection() no longer crashes if no sections have been loaded.
  • Fix crashes triggered by R_PPC_REL24 relocs, mistakenly caused by an out of range address during the resolution of undefined symbols, instead of jumping to the PLT.
  • Fix symbol cache not adding entry, if the cache needs to be enlarged.
  • Fully utilise the symbol cache when reading the symbol name.
  • OpenElf() needs to close the file, if it opened one, should there be an issue reading the headers.
  • Fix incorrect detection of invalid headers where OET_MemoryAddr has been specified instead of a file.
  • Add filename to give context to the ElfLoadSeg() error requesters. Further tweak to the pointer equality fix, to completely skip R_PPC_REL24 and R_PPC_LOCAL24PC relocs with a st_value of 0, as the relative branches will already be correct - no relocation required. Fix Elf32_BlacklistCheck() from crashing when passed a handle with no filename set (e.g. OET_MemoryAddr). Replace semaphore usage with mutexes
(dr)

[News message: 22. Jan. 2024, 22:01] [Comments: 0]
[Send via e-mail]  [Print version]  [ASCII version]
22.Jan.2024



Platform game: Abbey(s) of the Dead V1.1
The developer 'UltraNarwhal' has released an update to its extended port of "Abbey(s) of the Dead" (YouTube video), which was released at the beginning of December and includes a few minor graphical tweaks. (dr)

[News message: 22. Jan. 2024, 21:26] [Comments: 0]
[Send via e-mail]  [Print version]  [ASCII version]
22.Jan.2024



8/16-bit emulator for Mac OS and Linux: Clock Signal v2024-01-22
Thomas Harte's Clock Signal is an emulator for various 8- and 16-bit platforms aiming to be invisible to the user. The idea is to simply start the source medium without configuring the emulator oneself. Clock Signal is available for Mac OS and Unix-compatible systems. While there is also an Amiga emulation included, it "remains wilfully inaccurate" for now. Changes:
  • fixes broken horizontal scrolling on the Master System;
  • correctly declines to page on the Electron if receiving interrupt acknowledgments;
  • corrects mismapping of Apple II inverted characters;
  • avoids automatic key repeat on the early Apple IIs;
  • with thanks to @ryandesign avoids potential performance issues on multi-GPU macOS machines with macOS 10.15+.
(dr)

[News message: 22. Jan. 2024, 07:07] [Comments: 0]
[Send via e-mail]  [Print version]  [ASCII version]
1 10 15 ... <- 20 21 22 23 24 25 26 27 28 29 30 -> ... 35 904 1778

.
Masthead | Privacy policy | Netiquette | Advertising | Contact
Copyright © 1998-2024 by amiga-news.de - all rights reserved.
.