home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 4 / AACD04.ISO / AACD / Hardware / Picasso96 / Picasso96.readme < prev    next >
Text File  |  1999-11-16  |  20KB  |  372 lines

  1. Short:    Picasso96 system for Amiga graphics boards
  2. Author:   Tobias Abt and Alexander Kneer
  3. Uploader: Tobias Abt <tabt@gmx.de>
  4. Type:     gfx/board
  5. Version:  2.0
  6.  
  7. This archive contains all you need to get Picasso96 up and running on your
  8. Amiga.  Picasso96 offers support for many different Amiga graphics boards,
  9. has  builtin  HiColor and TrueColor support for intuition screens and many
  10. more...
  11.  
  12. Requirements:
  13. - Kickstart and Workbench 3.0 (V39) or later,
  14. - Motorola MC68020 processor or better,
  15. - Altais, CyberVision64, CyberVision64/3D, Domino, Merlin, oMniBus,
  16.   PicassoII, PicassoII+, PicassoIV, Piccolo, Piccolo SD64, Pixel64,
  17.   Retina BLT Z3, Spectrum or uaegfx (for UAE, the UNIX/unusable/usable
  18.   Amiga Emulator).
  19.  
  20. Picasso96 is ShareWare. Requested fee US$20 or DM30, free to use for
  21. PicassoIV and Pixel64 users (the manufacturers of those cards already
  22. paid for these licences) and the really few ones that already have
  23. sent us a donation.
  24.  
  25. No distribution restrictions as long as the the archive is complete
  26. and none of the files within is changed. BBS notes may be added.
  27.  
  28. Short history:
  29.  
  30. Changes in 2.0:
  31. - version bump due to large improvements.
  32. - first Draco Altais support.
  33. - rtg.library:
  34.   - all Amiga graphics functions using the blitter now have working fallback
  35.     routines using the CPU instead if necessary.
  36.   - *NEW FEATURE*: added functionality to patch the most common native
  37.     Amiga chipset screen modes to use a Picasso96 board to ease use and
  38.     installation of Picasso96 on systems that don't have a native Amiga
  39.     chipset (like the Macrosystem Draco) or that have no monitor attached
  40.     to the native chip set signal connector or that don't have a flicker
  41.     fixer and no 15 kHz capable monitor. To enable this feature add the
  42.     tool type "FakeNativeModes=Yes" to the monitor driver of one of your
  43.     cards (defaults to "Yes" with the Draco Altais and "No" for all other
  44.     cards) and remove all native Amiga monitor drivers (!). Now, when the
  45.     system uses one of the native Amiga screen modes (currently only
  46.     LowRes, HighRes and SuperHighRes and their interlaced counter parts),
  47.     a 640x480 31kHz 60Hz screen mode on the graphics card will be used.
  48.     Note: this mode is not configurable and it is not intended to be,
  49.     because you should use real Picasso96 screen mode IDs whenever you
  50.     can. Its only intention is to get the workbench on a VGA compatible
  51.     screen when the current screenmode.prefs contains an invalid mode
  52.     id. May also be useful for some (stupid) programs that default to a
  53.     custom screen with a native Amiga screen mode after installation.
  54.   - added checks and patches to support Draco (thanks go to Jürgen
  55.     Döffinger for doing a big part of the work).
  56.   - fixed BltBitMap rendering bug when blitting from 24 bit RGB to 32 bit
  57.     BGRA (and also BGR to RGBA) (discovered by Niels Knoop).
  58.   - fixed wrong line drawing on clipped planar Amiga bitmaps (thanks
  59.     to Thomas Richter for finding and describing the bug).
  60.   - found a wrong CyberFMT assignment that could cause HiColor bitmaps
  61.     to get the wrong color format when used with programs using the
  62.     cybergraphics.library API.
  63.   - fixed slightly wrong MonitorSpec->ratio* values.
  64.   - rearranged main library files and linking to ease replacing object
  65.     files with own routines for programmers participating in the
  66.     Picasso96 rtg.library development.
  67.   - added support for non-disk based board drivers (for drivers that
  68.     will be launched automatically by UAE).
  69.   - board drivers can now suppress the loading of settings and the
  70.     creation of the edit screen mode used by Picasso96Mode. This is
  71.     useful for drivers that generate their own display ids like UAEgfx.
  72.   - fixed a possible race condition problem with the rtg.library memory
  73.     pool management functions.
  74.   - *NEW FEATURE*: software sprite routines will use on-board blitter 
  75.     when available. Therefore boards which have a blitter reserve about
  76.     12 KB of their memory for sprite and back buffers. This might affect
  77.     the size of the largest screen that can be opened in some systems
  78.     (mostly with 1MB cards).
  79.   - fixed rendering problem with softsprites on Hi/TrueColor screens
  80.     where transparent part was visible.
  81.   - *NEW FEATURE*: alerts (Alert(), DisplayAlert(), TimedDisplayAlert())
  82.     now are rendered into the front most screen if it is a Picasso96 one.
  83.     After termination of the alert, the display is restored.
  84.   - *NEW FEATURE*: board drivers can now prevent the loading and attaching
  85.     of settings files. Useful for the UAEgfx driver that creates its own
  86.     modes and cannot use standard settings definitions at all.
  87.   - *NEW FEATURE*: new environment variable "DisableAmigaBlitter" which
  88.     even forces blits on standard planar Amiga bitmaps to be performed
  89.     by the CPU. Set to 'yes' to enable this feature. If you don't use
  90.     native Amiga screens, this could improve some operations on fast
  91.     processors. On the other hand, Amiga screens will be slower.
  92.     Defaults to 'No'.
  93.   - *NEW FEATURE*: new environment variable "PlanesToFast" which when
  94.     set to 'Yes' will allocate planar bitplanes to fast memory except
  95.     when the caller requested a visible or standard bitmap. Defaults
  96.     to 'No'.
  97.   - Flood() patch added (our thanks go to Olaf Barthel for the code).
  98.   - BitMapScale() now scales between all combinations of RGB formats
  99.     but needs to allocate some temporary memory, if this fails, nothing
  100.     will be scaled... we should do a simple, braindead and slow fallback
  101.     routine that needs no buffer for that case.
  102.   - some internal optimisations, removal of unused code etc.
  103.   - implemented CPU version of AreaEnd() which is important for the 
  104.     Draco, but with 68040 and 68060 systems this one is also faster
  105.     than the original using the blitter (at least with ECS).
  106.   - fixed bug in AreaEnd() which caused crashes (e.g. IconEdit filled
  107.     ellipses that extended into negative rastport coordinates).
  108.   - fixed BltMaskBitMapRastPort() bug with standard planar Amiga bitmaps.
  109.   - fixed bogus softsprite savebuffer restoration in upper left corner.
  110.   - fixed bugs that caused CVision 3D to clear a small odd rectangle
  111.     sometimes.
  112.   - added functionality to our custom semaphore routines and found a
  113.     bad bug, too. Rechecked all possible scenarios.
  114.   - fixed BltPattern bug which sometimes caused wierd results when the
  115.     DisableAmigaBlitter environment variable was set.
  116.   - fixed a small problem with LoadView that led to incomplete wakeup
  117.     after a program had temporarily changed the display with LoadView(0).
  118.     Thanks to Pavel Narozny and Thomas Richter for pointing that out.
  119.   - possible enforcer hit in AllocBitMap() fixed by Thomas Richter.
  120.   - Draw() bug with line pattern on obscured clip rects and another
  121.     possible race condition issue in Draw() fixed by Thomas Richter.
  122.   - fixed a rare but serious bug triggered by Picasso96Mode, causing it
  123.     to crash.
  124. - PicassoIV, PicassoII, Piccolo, Piccolo SD64, Pixel64, Spectrum (all
  125.   Cirrus based boards):
  126.   - fixed mouse sprite rendering problem at top of the screen when
  127.     BIGSPRITE was selected (also Thomas Richter).
  128.   - fixed yet another sprite rendering problem that could cause illegal
  129.     memory accesses with autoscroll screens (again Thomas Richter).
  130. - PicassoIV:
  131.   - more and finer pixel clocks for better mode adjustment.
  132. - CVision3D:
  133.   - fixed ZorroII YUV422 PIP problem using the wrong memory aperture
  134.     (Pavel Narozny)
  135.   - extended memory clock range from 45 to 77 MHz - still defaults to
  136.     55 MHz
  137.   - implemented hardware acceleration for 2D line drawing
  138. - RetinaBLT Z3 and Draco Altais (NCR chip driver changes by Jürgen
  139.   Döffinger):
  140.   - small changes with masked blits (less overhead).
  141.   - implemented hardware support for BltPattern.
  142.   - hardware sprite uses color 3 as inverted color now (unlike all other
  143.     cards).
  144. - added Draco checks to monitor driver.
  145. - InstallScript and Installation:
  146.   - Added the Draco Altais.
  147.   - Added PVS, the Picasso96 Variable Setter by Ralph Torchia (requires MUI).
  148.   - Creates ENV:Picasso96 and ENVARC:Picasso96 during installation and
  149.     updates. Also creates all supported variables and sets them to the
  150.     default values. Deletes everything during uninstall, too.
  151.   - if the install script is activated and the system language is not
  152.     properly selected (no or invalid ENV:Language) or there is no
  153.     translation of the install script for that language, you now will
  154.     be asked to choose a language first.
  155.   - therefore only one 'Install' icon necessary.
  156.   - added icon for the Picasso96.readme file so that the users can
  157.     read about the recent changes more easily.
  158.   - renamed the Installer script icon to 'Setup' to better reflect that
  159.     the script handles installation, updates and deinstallation
  160.   - added nederlands and norsk translations (Pieter Roodnat and Uwe Kubosch)
  161. - Picasso96API:
  162.   - fixed bug in 1.43 that caused the width and height parameters of PIPs
  163.     to be ignored when opening the PIP.
  164.   - *NEW FEATURE* user can now allocate private bitmaps that do not need
  165.     to be locked. Especially useful for programs that need temporary fast
  166.     memory bitmaps for rendering.
  167.   - p96WritePixel(): fixed softsprite image trashing bug.
  168.   - moved some functionality to the rtg.library.
  169. - cybergraphics.library emulation:
  170.   - WriteRGBPixel(): fixed softsprite image trashing bug.
  171.   - fixed some CGX API function return values to be more compatible with
  172.     the public documentation.
  173.   - DoCDrawMethodTagList(): fixed bug with obscured cliprects.
  174.   - moved some functionality to the rtg.library.
  175.  
  176. Changes in 1.43b:
  177. - rtg.library:
  178.   - fixed "DOpus crawling ants" bug (clipped lines with patterns
  179.     went wrong)
  180. - removed some potential problems in the InstallPicasso96 script
  181. - included current printer patch
  182.  
  183. Changes in 1.43a:
  184. - rtg.library:
  185.   - fixed silly bug introduced with changes in WritePixel().
  186.  
  187. Changes in 1.43:
  188. - rtg.library:
  189.   - fixed and optimized DrawEllipse() in TrueColor
  190.   - fixed complement Draw() in TrueColor (crawling ants bug)
  191.   - fixed missing WaitBlit() in WriteChunkyPixels(), WritePixelArray8()
  192.     and WritePixelLine8() subroutine
  193.   - included optimized 24 bit CPU routines for BltTemplate() and
  194.     BltPattern() by Niels Knoop (thanks a lot!)
  195.   - fixed handling of the "ENV:Picasso96/PlanarOnlyDIPFDBUF" environment
  196.     variable (cut'n'paste error, could therefore not work... :-)))
  197.   - changed WritePixel() to gain a small speedup (thanks to Didier Levet
  198.     for the suggestions)
  199. - PicassoIV:
  200.   - PIP can now scale down vertically to some degree by skipping lines
  201.   - added some synchronisation in PIP setup to prevent board from running
  202.     amok with PalomaTV sometimes
  203. - CVision3D:
  204.   - rearranged init function to behave better on ZorroIII systems
  205.   - fixed scan doubler init and switch setting
  206.   - BltPattern() no longer produces wrong patterns
  207.   - fixed a stack problem when blitting in 32bit modes
  208.   - doublescan modes are no fully visible
  209.   - leftmost column of pixels is now visible again in 8bit modes
  210.   - fixed memory clock setup which defaulted to ~6 MHz due to a bug
  211.   - doubleclocked 8bit modes were accidently disabled (wrong refresh rates)
  212.   - scan doubler access logic should now be correct (finally)
  213.   - fixed interlace problems if vertical parameters had odd values
  214. - RetinaBLT:
  215.   - fixed mode setting bug that prevented modes with vtotals greater
  216.     than 1024 from working at all
  217.   - fixed another bug with double scan modes
  218.  
  219. Changes in 1.42:
  220. - rtg.library: fixed small bug with the "ShowModes" environment variable
  221.   which did not work when switching from custom flag setting to "all"
  222. - added new environment variable "ENV:Picasso96/PlanarOnlyDIPFDBUF"
  223.   which when set to "yes" removes the DIPF_IS_DBUFFER attribute form all
  224.   non-planar Picasso96 modes. This is intended for Personal Paint users
  225.   that work with animations. PPaint (at least upto version 7.2) does not
  226.   check the screen bitmap format properly and assumes it to be planar
  227.   which causes severe problems with chunky bitmaps. Using this variable
  228.   prevents PPaint to use chunky screen modes for double buffer animations.
  229. - corrected some cases within the new Hi/TrueColor CPU conversion
  230.   functions which caused wrong results or crashes especially when no
  231.   blitter was available
  232. - optimized CPU line drawing routines (speed increases upto 50% depending
  233.   on type of display and line) as well as 24bit ellipse drawing code
  234. - CVision3D:
  235.   - fixed garbled text on 8 bit screens (e.g. when typing in CON:), was
  236.     caused by blitter running amok when doing too small expansion blits
  237.   - added hardware video window (PIP), works now, but still needs some
  238.     little work, please test but don't complain :-))
  239.   - default memory clock is now 55 MHz (again)
  240.   - fixed scan doubler handling
  241. - Pixel64: included correct driver in archive
  242. - Documentation: changed URL to the Picasso96 home page to reflect the
  243.   new server location (http://picasso96.cogito.de/)
  244. - new P96Speed (version 1.0) included in archive
  245.  
  246. Changes in 1.41a:
  247. - fixed integration of new Hi/TrueColor CPU conversion functions
  248.   causing severe errors by wrong jumps generated by linker
  249. - CyberVision: fixed bugs in hardware line algorithm (lines were
  250.   not drawn in some cases, result was different from CPU routine)
  251.   and added support for textured lines.
  252.  
  253. Changes in 1.41:
  254. - Draw() support in the hardware abstraction layer and can now be
  255.   accelerated
  256. - added new Hi/TrueColor CPU conversion functions developed by Stefan
  257.   Sommerfeld (thanks a lot!)
  258. - AttachSettings: added support for CVision3D (don't know why I forgot
  259.   that in the first place... :-)))
  260. - emulation.library: found at least four wrong conversions in the
  261.   support.asm/GetPixel() function
  262. - CVision3D:
  263.   - implemented 24bit TrueColor modes (more economical and faster than
  264.     32bit and can use blitter in all cases)
  265.   - hardware interrupt added in ZorroIII (ZorroII not yet possible)
  266.   - minimum memory clock (default) now set to 55MHz
  267. - CyberVision: implemented hardware accelerated line algorithm (solid
  268.   lines only)
  269. - Merlin: added some NOPs to avoid color expansion problems (thanks to
  270.   Jan-Willem van Wieren for investigating that issue)
  271. - PicassoII: Code adjusted to avoid pixel errors in hicolor fonts and
  272.   patterns on some cards. If it still doesn't suffice, activate the
  273.   new tooltype "FONTSFIX=Yes" to switch from blitter to CPU rendering
  274.   of the afflicted operations which should solve the problem for good.
  275. - RetinaBLTZ3: added support for external MacroSystem video switch, is
  276.   now used automatically used. NOTE: if you DON'T own such a device,
  277.   add the tool type "DisplayChain=No" to the monitor driver icon!!!
  278. - Picasso96API has three new functions:
  279.   - p96EncodeColor
  280.   - p96GetBoardDataTagList
  281.   - p96GetRTGDataTagList
  282.   new Develop.lha archive is available
  283. - french documentation added (unfortunately not quite up to date)
  284. - suomi installation and documentation added (thanks to Mikko Virtanen)
  285.  
  286. Changes in 1.40:
  287. - fixed bug in rtg.library which could cause Enforcer hits during boot
  288. - fixed bug in rtg.library and PicassoIV.chip which caused crashes if a
  289.   PicassoIV with 7.4 ROM was used without p4specials.library
  290. - fixed bug that caused screens sometimes to be black
  291. - new tags for mode id query functions for video output support
  292. - install script changed for ease of installation:
  293.   - detects PicassoII's in segmented mode and issues a warning
  294.   - new AttachSettings tool for basic settings file maintenance making
  295.     things easier for first time Picasso96 users
  296.   - Picasso96 is now ShareWare for users who don't own PicassoIV or
  297.     Pixel64 boards and the installer script gives a hint about that
  298. - CVision3D: driver now working in ZorroII based Amigas as well
  299. - new environment variable "Picasso96/ShowModes":
  300.   - "all": show all possible modes (including multiple modes of the same
  301.          depth that are only different in their RGB format)
  302.   - "essential": (default) the same behaviour as before, show only modes
  303.          that are really different from each other
  304.   - user supplied mask of RGB formats: decimal, hex($) or binary(%) value,
  305.          see includes section about color formats; example: $e=%1110=14
  306.          allows only 24 bit true color and chunky modes
  307.  
  308. Changes in 1.39:
  309. - implemented CPU function for planar BltPattern() with rp->AreaPtrn (still
  310.   no support for bltmask and rp->AreaPtrn together)
  311. - fixed bug that caused enforcer hits with planar bitmaps in fast memory
  312. - remove some stupid mask considerations for Hi/TrueColor bitmaps (which
  313.   caused problems on such screens using less than 256 colors) 
  314. - Picasso96Mode has some extra features now:
  315.   - corrected algorithm to look for unused DisplayIDs when cloning settings
  316.   - new menue entry "Setting/Batch change IDs" which is used to renumber
  317.     all of the DisplayIDs for the current settings
  318.   - menu entry "Mode/Print mode" now prints mode lines for NetBSD 1.3, too
  319.  
  320. Changes in 1.38:
  321. - fixed a dangerous bug in the clipping code (hi-words of some data
  322.   registers were trashed)
  323. - implemented blitter emulation routines for planar bitmaps in fast memory
  324.   except for: BltPattern() with rp->AreaPtrn as well as Flood() and Area#?()
  325.   calls with rp->TmpRas->RasPtr pointing to fast memory; QBlit functionality
  326.   is also missing for all bitmaps in fast memory
  327. - corrected BltBitMap() behavior to be same on all boards when blitting
  328.   from bitmaps with less planes than the destination bitmaps has
  329. - new monitor tooltype "GrantDirectAccess": use this if you have problems
  330.   with programs that use direct display memory access without using locking
  331.   mechanisms like ShapeShifter on ZorroII Amigas with PicassoIV or with any
  332.   Amiga using a CyberVision64 board; this tooltype when set to "yes" prevents
  333.   bitmaps with different byte swapping requirements to be on the board
  334.   simultaneously if they cannot be accessed at the same time without
  335.   reconfiguring the board; when using PIP applications on ZorroII PicassoIV
  336.   this tool type should be set to "no" (default) to allow all combinations
  337.   of screen and PIP color formats
  338. - fixed a small bug that was possibly causing wrong colors with CLUT screens
  339. - PicassoIV: PIP handling (bandwidth calculations) improved, PIP windows
  340.   on TrueColor screens are back, now switched off when window is occluded
  341. - Merlin: fixed a bug in blitter accelerated BltPattern causing enforcer
  342.   hits in some cases
  343. - Merlin: planar to chunky blits wait for blitter ready flag between planes
  344. - Retina BLT Z3: minimum memory clock is now 55 MHz
  345. - CyberVision64: sprite colors are now set correctly when the mode changes
  346.  
  347. Changes in 1.37:
  348. - removed SwapBitsRastPortClipRect bug (aka FastLayers/PictureManager bug)
  349. - removed bug causing crashes with PMTNG while editing the test screen
  350. - cybergraphics.library emulation now v41 compatible
  351. - included an emulation of the cgxvideo.library using the video overlay
  352.   of the PicassoIV (not tested well, no CV64/3D overlay support yet, will
  353.   not work with Isis because of tests for emulation)
  354. - added new board tool type "MemoryClock" which sets the memory clock
  355.   (in MHz) of the board within the allowed ranges (you can check with
  356.   CheckBoards to see the effectively used clock value). Boards that
  357.   support variable memory clocks and the supported ranges (exceeding values
  358.   will be clipped):
  359.   - CyberVision64: 54-65
  360.   - CyberVision3D: 55-65
  361.   - Retina BLT Z3: 60-85
  362.   Note: Cirrus based boards already run at maximum speed and therefore do
  363.   not support this tool type, Tseng based boards do not support variable
  364.   memory clocks
  365. - PicassoII: added support for Pablo (all modes with 15 kHz and 50/60 Hz
  366.   switch on the video encoder) and possibly fixed a bug with wrong colors
  367. - Retina BLT Z3: fixed a bug causing some blitter trash on 68030 based
  368.   Amigas 
  369. - extended PIP-API:
  370.   - CLUT PIPs on Hi/TrueColor screens can have their own color table
  371.   - PIP does no longer have to use the complete window interior
  372.