OS4 DepotLogo by Alkaron 
(anonymous IP: 3.239.236.140,0) 
 HomeRecentStatsSearchMirrorsContactInfoDisclaimerConfigAdmin
 Menu

 Features
   Crashlogs
   Bug tracker
   Locale browser
 
 Categories

   o Audio (331)
   o Datatype (50)
   o Demo (188)
   o Development (562)
   o Document (21)
   o Driver (93)
   o Emulation (143)
   o Game (910)
   o Graphics (477)
   o Library (105)
   o Network (218)
   o Office (60)
   o Utility (853)
   o Video (65)

Total files: 4076

Full index file. Download
Recent index file. Download




 Links

  Amigans.net
  OpenAmiga
  Aminet
  UtilityBase
  IntuitionBase
  AmigaBounty


Support the site


 Readme for:  Graphics » Misc » flashmandelng.lha

FlashMandelNG

Description: Mandelbrot & Julia fractals for OS4 Amiga
Download: flashmandelng.lha       (TIPS: Use the right click menu if your browser takes you back here all the time)
Size: 6Mb
Version: 3.1
Date: 19 Jan 21
Author: Dino Papararo / Edgar Schwan
Submitter: Dino Papararo
Email: dino papararo/gmail com
Homepage: http://www.schwan-clan.de
Requirements: AmigaOS4 compatible platform with or without Altivec extensions
Category: graphics/misc
Replaces: graphics/misc/flashmandelng.lha
License: Freeware
Distribute: yes
Min OS Version: 4.0
FileID: 11557
 
Images:
 
Videos:
Comments: 18
Snapshots: 9
Videos: 1
Downloads:  (Current version)

[Show comments] [Show snapshots] [Show videos] [Show content] [Show crashlogs] 
Full  functional  program  for  rendering  Mandelbrot  &  Julia  fractals  with
different  exponents.  After  more  than  20 years FlashMandel is developed and
tested again on a real  Amiga:  Pegasos  II  G4()1GHz  2GB  Ram  -  Radeon  9250
-AmigaOS4.1fe :-)

FlashMandel uses handmade assembler routines for max speed, and  this  is  it's
main  feature.  With  new  implemented  altivec  routines, for altivec version,
renderings are all near realtime! I think it's one of  the  fastest  mandelbrot
and  julia  sets  rendering  program  ever  seen on a single core cpu. Due it's
development  for  AmigaOS  it  lacks  of  multiprocessing  features.  But  once
imlemented  it  can  be adapted for sure to work on more cpu cores. It could be
possible even a GPU port, but on my Pegasos II with a Radeon 9250 gfx  card  we
have  only  OpenGL 1.3 compatibility so it's not possible to use GPU to speedup
calcs :-(

FlashMandelNG primary features are:

Uses Reaction GUI, Arexx port, Localization, Arbitrary precision math with  GMP
Library  and don't need any installer, just click 'n run! C and Asm sources are
also included, you can recompile it just  typing  MAKE!  It's  faaast  even  on
emulated  Amigas  and  can render even with direct memory access (TURBO OPTION)
..under x86 emuation it's faster than many others x86 native  fractal  programs
;-)  Saved  pictures  can  be  reloaded  and  further explored at all supported
screen's resolutions. It's really cool and totally free ;-)

Additional developing notes:
FlasdhMandelNG is developed with GCC 8.4.0 under Pegasos II and AmigaOS  4.1fe.
Altivec  code  was firstly developed and tested under Powermac G5 Quad hardware
with MacOSX Leopard 10.5.8 OS and XCode 3 IDE && Ubuntu Mate 16.04 LinuxPPC  OS
and  CodeBlocks  IDE. ..Now I can test it directly on my Pegasos II ;-) Altivec
code is the most optimized ever seen and can be used as good programmig  guide.
Many  many  thanks  and  greetings  to  my  friend  Edgar  Schwan,  FlashMandel
CoDeveloper,  for  his  great  efforts  in  Localization,  Arexx  and  Reaction
integration.

In archive we have two binaries:
1) FlashMandelNG_OS4 -> critical routines are written in handmade assembler for
max speed on powerpc cpus 2) FlashMandelNG_OS4_altivec -> critical routines are
written in C but with Altivec directives, processing 4 pixels per time!

I'd like to add another binary for Tabor ans its SPE unit, for now I could  not
with it due GCC v8 incompatibilities with SPE code; ..maybe in the next release
we got it!

..so what version is the faster one?  On  a  G4  latest  FlashMandelNG  Altivec
versions are about 3x faster than FPU version because it processes 4 pixels per
time! ..but it's also less accurate due Float32 single  precision  calculations
(limited  by  hardware)  vs  Float64 FPU doubles, so for deep zooms you need to
switch sooner to high precision math.

About precision one on main features of  FlashMandel  is  the  ability  to  use
arbitrary  precision  math.  To  archieve  this I used GMP library, Edgar did a
great jb porting it from linux sources ..and now  we  have  it  also  on  Amiga
systems :-)

FlashMandelNG_OS4 is Giftware, If you like it please sent me nice goodies  ..An
email  or  common  postcard  is  ok  too!  :-)  It's  possible to include it in
magazines and CDs, if so please let me to have a free copy ;-)

History:

New in 3.1 Implemented Histogram coloring algorithm as  currently  decribed  on
wikipedia,  now you can display a wider range of colors at same time. Recoded a
lot of stuff following the current best "C Programming practices", i.e. no more
use  of  global  vars  for inner functions. Fixed still some serious bugs, this
update is a "must have".

New in 3.0 Finally Reaction GUI is fully  reimplemented,  Edgar  did  really  a
superb  work  about  this!  I  reworked  also color remapping to gave some nice
alternative, i.e. try GUI remapping. A lot of bugs  were  fixed  some  of  them
really dirty, I have also cleanup the code and gained some small speedup!

New in 2.9 Now Altivec C routines uses full intrinsics, generated  code  should
be very mear to full handmade asm. Small bugfixes and code cleanup.

New in 2.8 These are last days of COVID-19 quarantine in Italy, next week  I'll
come  back  to my daily work, ..so I decided to try to unlock once for all full
potential of Altivec vector  unit  and...  I  did  it!  :-)  Now  FlashMandelNG
processes 4 pixels per time in the altivec version and it's nearly realtime for
zooms with low/mid iterations. One of the most  important  issues  was  how  to
control  Altivec  power  without loosing speed. So I took a challenge vs myself
and I won it! The my Altivec algorithm is fastest ever  seen,  preserving  full
power  and using a smart and efficient control for results! :-) Altivec version
speeded up to 3x!! Have fun!

New in v2.7 Minor speed improvements, I think to have reached tha max possibile
performances  on a G4. Only Altivec code can be highly speedup until to 4x, I'm
working on it! Fixed running multiple instances of FlashMandel.  Now  only  RTG
screens  are  supported.  Recompiled with GCC 8.4.0 and latest adtools. Various
minor bugfixes and improvements.

New in v2.6 Raised up GMP Library to actual latest version 6.2.0 (Edgar Schwan)
Implemented   periodicity   checking  to  speed  up  renderig  in  black  areas
(Mandelbrot set). Speeded up a bit Altivec version, we still calc one pixel per
time,  I'd  like  to  do  4  pixels per time using full Altivec power. Bugfixed
rendering Z^n+C with of power set to 16  or  more.  Raised  max  iterations  to
2^31-1. Fixed Load and Save pictures. Removed all debug symbols.

New in v2.5 Due Covid19 virus in few weeks I did what I used to do in years due
my  lack  of time.. Finally I have implemented GMP Library numeric support. Now
you can zoom into Mandelbrot and Julia sets until  4096  precision's  bits  are
saturated. On current Amiga generations maybe you need to live for 500 years to
saturate all precision bits.. Eventually I  can  improve  precision  bits  even
furter  :-)  I  changed a bit the main recursion algorithm and now calculations
are about 10% faster! I discovered and fixed some other annoyng bugs,  at  this
time  only  the  Arexx  and Reaction code parts and needs to be revisioned, all
other code is all updated. At this time Reaction GUI isn't implemented  because
it  was  developed with Reactor Tool. Sadly Reactor doesn't support PowerPc but
only 68k, so object file generated can't be linked with other sources and  than
GUI fallback to system GadTools. If there will be ever a new release of Reactor
with PPC/OS4 support I'll be happy to reintroduce Reaction GUI and  give  again
to  FlashMandel  the  right  look!  I decided also to renew iff chunk format of
saved pictures, so now you can't load old fractals and continue zooming inside.

New in v2.3 Old heavy bug fixed - if Flashmandel didn't found a locale  catalog
crashed at startup Other fixes and little improvements applied

New in v2.2 Now finally with a real Amiga and sadly in Covid-19 era in Italy, I
had  a  lot  cpu power, and a lot of time, to test and fully bugfix and cleanup
nearly all the code. Lowered resolution of all pictures to 1280x720  to  reduce
archive size, old pictures are incompatible to this new version. Added some new
palettes and changed  default  one.  Reviewed  some  Arexx  scripts.  Refreshed
english docs.

New in v2.1 Partial MorphOS compatibility via OS4EMU -  Load  and  save  didn't
work  Reworked  and  eliminated  all  pre  AGA  stuff.  Now we have 3 different
binaries, normal GCC code, Altivec code and New PowerPC handmade  asm  version.
Added  DUTCH  catalog language - thanks to Bennymee for translation Minor fixes
and changes.

New  in  v2.0  (Re)Enabled  AREXX  support   (Please   download   and   install
AWNP_2-54.lha archive from Aminet to let it run) Fixed tooltypes

To Do: 
AmigaOne Tabor A1222 specific SPE version 
Add  24  bit  screens  
Fix/Improve AREXX Scripts/Benchmarks

"Bottomless wonders spring from simple rules, which are repeated without  end."
cit. Benoit Mandelbrot

 Enjoy,

Amiga Rulez! 



Copyright (c) 2004-2021 by Björn Hagström All Rights Reserved
Amiga OS and its logos are registered trademarks of Hyperion Entertainment