Short: Picasso96 system for Amiga graphics boards Author: Tobias Abt and Alexander Kneer Uploader: Tobias Abt Type: gfx/board Version: 1.43 This archive contains all you need to get Picasso96 up and running on your Amiga. Picasso96 offers support for many different Amiga graphics boards, has builtin HiColor and TrueColor support for intuition screens and many more... Requirements: - Kickstart and Workbench 3.0 (V39), - Motorola MC68020 processor or better, - CyberVision64, CyberVision64/3D, Domino, Merlin, oMniBus, PicassoII, PicassoII+, PicassoIV, Piccolo, Piccolo SD64, Pixel64, Retina BLT Z3, Spectrum or uaegfx (for UAE, the UNIX/unusable/usable Amiga Emulator). Picasso96 is ShareWare. Requested fee US$20 or DM30, free to use for PicassoIV and Pixel64 users (the manufacturers of those cards already paid for these licences) and the really few ones that already have sent us a donation. No distribution restrictions as long as the the archive is complete and none of the files within is changed. BBS notes may be added. Short history: Changes in 1.43: - rtg.library: - fixed and optimized DrawEllipse() in TrueColor - fixed complement Draw() in TrueColor (crawling ants bug) - fixed missing WaitBlit() in WriteChunkyPixels(), WritePixelArray8() and WritePixelLine8() subroutine - included optimized 24 bit CPU routines for BltTemplate() and BltPattern() by Niels Knoop (thanks a lot!) - fixed handling of the "ENV:Picasso96/PlanarOnlyDIPFDBUF" environment variable (cut'n'paste error, could therefore not work... :-))) - changed WritePixel() to gain a small speedup (thanks to Didier Levet for the suggestions) - PicassoIV: - PIP can now scale down vertically to some degree by skipping lines - added some synchronisation in PIP setup to prevent board from running amok with PalomaTV sometimes - CVision3D: - rearranged init function to behave better on ZorroIII systems - fixed scan doubler init and switch setting - BltPattern() no longer produces wrong patterns - fixed a stack problem when blitting in 32bit modes - doublescan modes are no fully visible - leftmost column of pixels is now visible again in 8bit modes - fixed memory clock setup which defaulted to ~6 MHz due to a bug - doubleclocked 8bit modes were accidently disabled (wrong refresh rates) - scan doubler access logic should now be correct (finally) - fixed interlace problems if vertical parameters had odd values - RetinaBLT: - fixed mode setting bug that prevented modes with vtotals greater than 1024 from working at all - fixed another bug with double scan modes Changes in 1.42: - rtg.library: fixed small bug with the "ShowModes" environment variable which did not work when switching from custom flag setting to "all" - added new environment variable "ENV:Picasso96/PlanarOnlyDIPFDBUF" which when set to "yes" removes the DIPF_IS_DBUFFER attribute form all non-planar Picasso96 modes. This is intended for Personal Paint users that work with animations. PPaint (at least upto version 7.2) does not check the screen bitmap format properly and assumes it to be planar which causes severe problems with chunky bitmaps. Using this variable prevents PPaint to use chunky screen modes for double buffer animations. - corrected some cases within the new Hi/TrueColor CPU conversion functions which caused wrong results or crashes especially when no blitter was available - optimized CPU line drawing routines (speed increases upto 50% depending on type of display and line) as well as 24bit ellipse drawing code - CVision3D: - fixed garbled text on 8 bit screens (e.g. when typing in CON:), was caused by blitter running amok when doing too small expansion blits - added hardware video window (PIP), works now, but still needs some little work, please test but don't complain :-)) - default memory clock is now 55 MHz (again) - fixed scan doubler handling - Pixel64: included correct driver in archive - Documentation: changed URL to the Picasso96 home page to reflect the new server location (http://picasso96.cogito.de/) - new P96Speed (version 1.0) included in archive Changes in 1.41a: - fixed integration of new Hi/TrueColor CPU conversion functions causing severe errors by wrong jumps generated by linker - CyberVision: fixed bugs in hardware line algorithm (lines were not drawn in some cases, result was different from CPU routine) and added support for textured lines. Changes in 1.41: - Draw() support in the hardware abstraction layer and can now be accelerated - added new Hi/TrueColor CPU conversion functions developed by Stefan Sommerfeld (thanks a lot!) - AttachSettings: added support for CVision3D (don't know why I forgot that in the first place... :-))) - emulation.library: found at least four wrong conversions in the support.asm/GetPixel() function - CVision3D: - implemented 24bit TrueColor modes (more economical and faster than 32bit and can use blitter in all cases) - hardware interrupt added in ZorroIII (ZorroII not yet possible) - minimum memory clock (default) now set to 55MHz - CyberVision: implemented hardware accelerated line algorithm (solid lines only) - Merlin: added some NOPs to avoid color expansion problems (thanks to Jan-Willem van Wieren for investigating that issue) - PicassoII: Code adjusted to avoid pixel errors in hicolor fonts and patterns on some cards. If it still doesn't suffice, activate the new tooltype "FONTSFIX=Yes" to switch from blitter to CPU rendering of the afflicted operations which should solve the problem for good. - RetinaBLTZ3: added support for external MacroSystem video switch, is now used automatically used. NOTE: if you DON'T own such a device, add the tool type "DisplayChain=No" to the monitor driver icon!!! - Picasso96API has three new functions: - p96EncodeColor - p96GetBoardDataTagList - p96GetRTGDataTagList new Develop.lha archive is available - french documentation added (unfortunately not quite up to date) - suomi installation and documentation added (thanks to Mikko Virtanen) Changes in 1.40: - fixed bug in rtg.library which could cause Enforcer hits during boot - fixed bug in rtg.library and PicassoIV.chip which caused crashes if a PicassoIV with 7.4 ROM was used without p4specials.library - fixed bug that caused screens sometimes to be black - new tags for mode id query functions for video output support - install script changed for ease of installation: - detects PicassoII's in segmented mode and issues a warning - new AttachSettings tool for basic settings file maintenance making things easier for first time Picasso96 users - Picasso96 is now ShareWare for users who don't own PicassoIV or Pixel64 boards and the installer script gives a hint about that - CVision3D: driver now working in ZorroII based Amigas as well - new environment variable "Picasso96/ShowModes": - "all": show all possible modes (including multiple modes of the same depth that are only different in their RGB format) - "essential": (default) the same behaviour as before, show only modes that are really different from each other - user supplied mask of RGB formats: decimal, hex($) or binary(%) value, see includes section about color formats; example: $e=%1110=14 allows only 24 bit true color and chunky modes Changes in 1.39: - implemented CPU function for planar BltPattern() with rp->AreaPtrn (still no support for bltmask and rp->AreaPtrn together) - fixed bug that caused enforcer hits with planar bitmaps in fast memory - remove some stupid mask considerations for Hi/TrueColor bitmaps (which caused problems on such screens using less than 256 colors) - Picasso96Mode has some extra features now: - corrected algorithm to look for unused DisplayIDs when cloning settings - new menue entry "Setting/Batch change IDs" which is used to renumber all of the DisplayIDs for the current settings - menu entry "Mode/Print mode" now prints mode lines for NetBSD 1.3, too Changes in 1.38: - fixed a dangerous bug in the clipping code (hi-words of some data registers were trashed) - implemented blitter emulation routines for planar bitmaps in fast memory except for: BltPattern() with rp->AreaPtrn as well as Flood() and Area#?() calls with rp->TmpRas->RasPtr pointing to fast memory; QBlit functionality is also missing for all bitmaps in fast memory - corrected BltBitMap() behavior to be same on all boards when blitting from bitmaps with less planes than the destination bitmaps has - new monitor tooltype "GrantDirectAccess": use this if you have problems with programs that use direct display memory access without using locking mechanisms like ShapeShifter on ZorroII Amigas with PicassoIV or with any Amiga using a CyberVision64 board; this tooltype when set to "yes" prevents bitmaps with different byte swapping requirements to be on the board simultaneously if they cannot be accessed at the same time without reconfiguring the board; when using PIP applications on ZorroII PicassoIV this tool type should be set to "no" (default) to allow all combinations of screen and PIP color formats - fixed a small bug that was possibly causing wrong colors with CLUT screens - PicassoIV: PIP handling (bandwidth calculations) improved, PIP windows on TrueColor screens are back, now switched off when window is occluded - Merlin: fixed a bug in blitter accelerated BltPattern causing enforcer hits in some cases - Merlin: planar to chunky blits wait for blitter ready flag between planes - Retina BLT Z3: minimum memory clock is now 55 MHz - CyberVision64: sprite colors are now set correctly when the mode changes Changes in 1.37: - removed SwapBitsRastPortClipRect bug (aka FastLayers/PictureManager bug) - removed bug causing crashes with PMTNG while editing the test screen - cybergraphics.library emulation now v41 compatible - included an emulation of the cgxvideo.library using the video overlay of the PicassoIV (not tested well, no CV64/3D overlay support yet, will not work with Isis because of tests for emulation) - added new board tool type "MemoryClock" which sets the memory clock (in MHz) of the board within the allowed ranges (you can check with CheckBoards to see the effectively used clock value). Boards that support variable memory clocks and the supported ranges (exceeding values will be clipped): - CyberVision64: 54-65 - CyberVision3D: 55-65 - Retina BLT Z3: 60-85 Note: Cirrus based boards already run at maximum speed and therefore do not support this tool type, Tseng based boards do not support variable memory clocks - PicassoII: added support for Pablo (all modes with 15 kHz and 50/60 Hz switch on the video encoder) and possibly fixed a bug with wrong colors - Retina BLT Z3: fixed a bug causing some blitter trash on 68030 based Amigas - extended PIP-API: - CLUT PIPs on Hi/TrueColor screens can have their own color table - PIP does no longer have to use the complete window interior