English Amiga Board


Go Back   English Amiga Board > Support > support.Other

 
 
Thread Tools
Old 02 October 2022, 14:00   #481
macce2
Retro maniac
 
macce2's Avatar
 
Join Date: May 2005
Location: Finland
Age: 49
Posts: 1,219
@spudje

Many thanks for your help !!
I guess the webpage is quite awful indeed !
macce2 is offline  
Old 06 March 2023, 12:39   #482
Thomas Richter
Registered User
 
Join Date: Jan 2019
Location: Germany
Posts: 3,215
Right now, the 3.3.3 version of P96 appeared and can be ordered or downloaded at the icomp shop.

The major feature of this release is that it offers the emulation of planar bitplanes, even if the graphics card does not support them or if a program requests more than the maximum 4 bitplanes VGA offers. That should help you to promote even more legacy applications to the graphics card, we had such issues lately. For that, set "ENV:Picasso96/EmulatePlanar" to "Yes" and reboot.

Detailed release notes:


- Removed installer procedures for the Inferno card as the card
driver was apparently never developed. The Inferno is otherwise
based on the well-supported Cirrus chips, but information on the
card is missing.
- Apparently, some buggy software expects that the Draw() system
call preserves register a1. To avoid compatibility problems, the
rtg.library now also restores this register.
- WritePixel() under a simulated sprite pointer in planar modes
might not have worked correctly.
- In case allocating an interleaved bitplane failed, P96 would have
attempted to allocate a planar bitplane, but forgot to clear
the magic indicator that the bitplane is interleaved.
- In case non-displayable bitmaps were relocated to fast memory,
brush operations in DPaint 5.0 failed because the program was not
aware that the brush bitmap was no longer in chip memory.
P96 now sets for bitmaps in fast memory a non-documented flag such
that DPaint uses the CPU for blitting.
Note that earlier versions of DPaint do not provide CPU-blitting
as fall-back mechanism and use the blitter natively, there is
unfortunately no way how P96 could intervene.
- In case a board became inactive because the view went to another
board or the native video, the monitor hook was not informed on
this change. This may have broken tools such as the indiswitcher,
i.e. the indi may have not been turned on again.
- Conversion blits such as chunky to hi-color required P96 to allocate
a temporary buffer. This buffer is now statically allocated upfront
and re-used if possible, avoiding unnecessary memory fragmentation.
- In case planar displays were reorganized due to screen dragging,
the planar bitmap could have been damaged, then causing a
complete display breakdown.
- This release of P96 provides a new feature, namely the emulation
of planar screens of depth > 4, even on graphic cards that do not
support planar. To enable this emulation, set the environment
variable EmulatePlanar to YES, e.g. enter the following command
in the shell:

setenv SAVE Picasso96/EmulatePlanar Yes

and reboot the machine. The "4 bit" modes in the screen requester
now offer up to 256 colors, or even appear on graphics cards
that would not provide them otherwise.

The purpose of this planar emulation is to promote legacy
applications that are not aware of chunky bitmap organizations
to RTG screens. For that, configure your preferred mode promotion
utility to redirect native screens to the (new) "4 bit" screen
modes. This should allow you to run legacy applications on a
graphics card, regardless of the graphics card offering planar
modes, and regardless of the VGA limitation to at most 16 colors.
- The function that attempted to remove CybervisionPPC boot ROM
patches was not critial enough and might have replaced perfectly
fine ROM code with nonsense, then creating crashes. This happens
most prominently if a ROM module has been replaced by LoadModule.
This error may have created sporadic illegal exception alerts
(80000004) in some configurations.
- If the amiga blitter is not disabled (DisableAmigaBlitter=No) but
planes are directed to fast memory (PlanesToFast=Yes), then Bobs
such as icons dragged on the workbench screen were not rendered
correctly. P96 can now detect such cases and then renders the
icons itself instead of depending on the native graphics function.
- When allocating a displayable bitmap, P96 did not check whether
graphics card actually even supports the RGB format requested. The
bitmap allocator now fails if a RGB format is requested for a
displayable bitmap the card does not support.
- Some board drivers do not implement blitting through a (spatial)
mask correctly, i.e. BltMaskBitMapRastPort() creates artifacts.
This Os function is used to "cookie-cut" a shape through a binary
stencil. If you see defects on such functions, please add the
following tool type to the Monitor icon:

NOMASKEDBLITS=YES

Then save the icon, and reboot. This tool type instructs P96 to
perform the cookie-cut blit by the CPU in software. Note that
"MASK" relates to a spatial mask, and it should not be confused with
the mask that selects which bitplanes are affected. The hardware
accelerated mask is only used if all planes are included in the
blit.

Sorry, this release took 3 months longer than anticipated, mostly because we had one customer with "special" hardware where I had to find a workaround for a driver bug. (And, hey, Elbox, next time, you fix your drivers yourself and support your customers yourself, would you?) The workaround is mentioned above.

Have fun, and sorry for the delay....

Thomas
Thomas Richter is offline  
Old 06 March 2023, 13:05   #483
alexh
Thalion Webshrine
 
alexh's Avatar
 
Join Date: Jan 2004
Location: Oxford
Posts: 14,337
Thanks for all the hard work.
alexh is offline  
Old 06 March 2023, 14:34   #484
nogginthenog
Amigan
 
Join Date: Feb 2012
Location: London
Posts: 1,309
Thanks Thomas!
nogginthenog is offline  
Old 06 March 2023, 14:42   #485
hexaae
Bug hunter
 
hexaae's Avatar
 
Join Date: Jul 2006
Location: Italy
Age: 48
Posts: 2,161
Great news!
hexaae is offline  
Old 06 March 2023, 15:20   #486
Thomas Richter
Registered User
 
Join Date: Jan 2019
Location: Germany
Posts: 3,215
Maybe I should translate some of the release notes into "plain English" (i.e. make it less technical).

The "EmulatePlanar" switch works best in combination with screen promotion utilities. Promote the native output to an RTG planar mode, and many legacy applications that "poke into the frame buffer" would now work. They get a planar chipmem bitmap of up to 8 bitplanes, and P96 combines them into a chunky display if needed.

The Draw() workaround translates to "MusicX works again, despite programming defects".

NOMASKEDBLITS=YES translates to "make P96 work despite Elbox drivers" that do not support masked blits correctly.

Then, we have one really funky bug that crashed the system if you loaded a new graphics.library by LoadModule, and the graphics.library would end up in chip memory at some particular location. Due to a couple of miserable coincidences, this made P96 think that graphics is not original and need to be restored to its original locations, but those were not real code, but some junk locations in lower chip mem. graphics should *really* not be in chip memory, and if it is, you better try "LoadModule" with the NOMEMFKICK option. This happens if your hardware vendor did not equip your turbo board with proper auto-configuring memory. (Sigh)

The "bobs" related update translates to "you can now relocate bitplanes to fast (PlanesToFast) option,and at the same time keep the native blitter enabled", without workbench showing junk when drawing icons. This way, P96 will now use the native blitter whenever possible, but if some data ends up in fast memory, the CPU will take over. This did not work before, but only for the GELs system.

The "WritePixel" fix translates to "WB 3.1.4 and beyond shows now the test picture correctly when testing new screen modes". It is another oddity and a very old bug that was hidden in a rather obscure place.

Then, the DPaint 5 thing. Interestingly, DPaint 5 can blit both with the native blitter and the CPU, but the way how it determines whether to use the CPU or the blitter uses some arcane undocumented flag of the Os GetBitMapAttr() function. Probably CBM had ideas about RTG themselves, shipped preliminary information to EA how it should work, EA implemented the switch on this "reserved" bit, but the "bitplane is not native" bit never made it into the Os documentation, neither the Os. Who knows...
Thomas Richter is offline  
Old 06 March 2023, 17:21   #487
gdonner
Ancient Amiga User
 
gdonner's Avatar
 
Join Date: Mar 2018
Location: Elkhart, IN USA
Posts: 207
Thomas, thanks for all your hard work with this update! As always, it's much appreciated!

It has to be frustrating for you trying to track down elusive/obscure bugs, let alone implementing workarounds for them. :-\
gdonner is offline  
Old 06 March 2023, 18:52   #488
nogginthenog
Amigan
 
Join Date: Feb 2012
Location: London
Posts: 1,309
Quote:
Originally Posted by Boing-Ball View Post
Thanks Thomas…. Will look into re-subscribing as I believe these only last a year at a time?
This is correct. Mine expired also.
nogginthenog is offline  
Old 06 March 2023, 20:17   #489
shelter
Registered User
 
Join Date: Nov 2022
Location: #Amigaland
Posts: 156
Wow, first Amiga OS 3.2.2 and now this. Seems like a very nice "driver update" with some cool features.
The things yoo and other devs do for the Amiga, I can't really express it in words.
It's astonishing to say the least.
shelter is offline  
Old 06 March 2023, 20:42   #490
macce2
Retro maniac
 
macce2's Avatar
 
Join Date: May 2005
Location: Finland
Age: 49
Posts: 1,219
Is this new release free for purchasers of the previous P96 v3 ..?!
macce2 is offline  
Old 06 March 2023, 20:52   #491
Thomas Richter
Registered User
 
Join Date: Jan 2019
Location: Germany
Posts: 3,215
It depends when you bought the last version. Once you buy P96, you get one year of free updates, after that period, you'll have to buy again. I would typically provide new versions around Christmas, if not earlier, but this plan did not work out for 3.3.3 unfortunately, so timing was off. This was not on purpose - it just did not make sense to release something with a known issue.
Thomas Richter is offline  
Old 06 March 2023, 20:56   #492
macce2
Retro maniac
 
macce2's Avatar
 
Join Date: May 2005
Location: Finland
Age: 49
Posts: 1,219
My order from iComp was on 24.07.2022.
That site could be more complete, I guess..
Should I view my purchase history on iComp site and use the old link or
something...?!


Update: Yes, that seems to be the case;
the new updated file(-s) seem to open
with the old link(-s).


Many thanks for your hard work, Thomas !

Last edited by macce2; 06 March 2023 at 21:11.
macce2 is offline  
Old 06 March 2023, 22:51   #493
klx300r
Registered User
 
klx300r's Avatar
 
Join Date: Oct 2007
Location: Toronto, Canada
Posts: 1,593
Thumbs up

Thanks for the update ThoR to
klx300r is offline  
Old 06 March 2023, 23:02   #494
mfilos
Paranoid Amigoid
 
mfilos's Avatar
 
Join Date: Mar 2008
Location: Athens/Greece
Age: 45
Posts: 1,978
Thanks for the update Thomas! I'm so glad that P96 gets updated \o/
mfilos is offline  
Old 07 March 2023, 17:48   #495
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,335
Quote:
Originally Posted by Thomas Richter View Post
Then, the DPaint 5 thing. Interestingly, DPaint 5 can blit both with the native blitter and the CPU, but the way how it determines whether to use the CPU or the blitter uses some arcane undocumented flag of the Os GetBitMapAttr() function. Probably CBM had ideas about RTG themselves, shipped preliminary information to EA how it should work, EA implemented the switch on this "reserved" bit, but the "bitplane is not native" bit never made it into the Os documentation, neither the Os. Who knows...
I took a look at the GetBitMapAttr() code in Kickstart 40.63.

GetBitMapAttr() with BMA_FLAGS never returns with BMF_INTERLEAVED set, unless the bm_Pad field contains 0x805C. bm_Pad == 0x805C causes the following changes:

BMA_FLAGS can return with BMF_INTERLEAVED bit set.

BMA_WIDTH:
  • When bm_Pad != 0x805C, BMA_WIDTH always returns bm_BytesPerRow*8
  • With an interleaved BitMap and bm_Pad == 0x805C, BMA_WIDTH returns the stride, i.e. (plane1ptr - plane0ptr)*8

The check for an interleaved BitMap is as follows:
  • Depth must be > 1.
  • First and second bitplane pointers must not point to the same address.
  • bm_BytesPerRow must be greater than the difference between the first and second bitplane pointers.
mark_k is offline  
Old 07 March 2023, 18:15   #496
Thomas Richter
Registered User
 
Join Date: Jan 2019
Location: Germany
Posts: 3,215
Believe me, this is not related to BMF_INTERLEAVED, neither anything in the Kickstart, nor something implemented in the Os.
Thomas Richter is offline  
Old 09 March 2023, 12:38   #497
pcotter
Registered User
 
Join Date: Aug 2016
Location: Germany
Posts: 122
Sorry if this question is in the wrong thread but as the Native driver is interconnected with P96 i would like to know if Ftext is necessary still when using Native?
Thank you :-)

"FText V1.7
What it It?

FText is a replacement for the graphics.library routine Text(). This
patch causes text to be rendered in fastram instead of chipram..."
pcotter is online now  
Old 09 March 2023, 15:16   #498
pcotter
Registered User
 
Join Date: Aug 2016
Location: Germany
Posts: 122
anyway, did some tests and Ftext seems to work with Native...

PutText()
Attached Files
File Type: txt Ftext+NativeP96Speed.txt (1.9 KB, 34 views)
File Type: txt NoFtxt+NativeP96Speed.txt (1.9 KB, 32 views)
pcotter is online now  
Old 10 March 2023, 18:22   #499
gdonner
Ancient Amiga User
 
gdonner's Avatar
 
Join Date: Mar 2018
Location: Elkhart, IN USA
Posts: 207
Quote:
Removed installer procedures for the Inferno card as the card
driver was apparently never developed. The Inferno is otherwise
based on the well-supported Cirrus chips, but information on the
card is missing.
It's interesting that a prototype of DKB's Inferno card did/does(?) exist--see link below to an old post from the legendary Skipper Smith talking about his Wildfire--but both the Amiga Hardware Database and The Big Book of Amiga Hardware ambiguously list CyberGraphX drivers (v3 and v4) for it. Obviously those drivers were planned, rather than actually written:

Quote:
I like the one I have in my A2000, though it is currently not in
operation right now. I would not encourage you to consider getting one,
because you won't find much support for them and the pseudo-PCI slot that
it has never gotten used for anything- the promised Inferno video card
never got beyond the prototype stage (I have one of the prototypes, but it
is non-functional. I keep meaning to give it back to Dean).
Source URL: https://groups.google.com/g/comp.sys.../c/EPaTNdTyLpU

FWIW, if an actual Inferno card does exist, there is at least one owner with a DKB Wildfire card that it could be connected to--Retro Hack Shack:

[ Show youtube player ]

Last edited by gdonner; 10 March 2023 at 18:43.
gdonner is offline  
Old 10 March 2023, 22:31   #500
Magic
Registered User
 
Join Date: Aug 2007
Location: USA
Posts: 359
Thank you so much to everyone!
Magic is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
P96: What's the right way to do X? Warty Coders. General 2 21 December 2020 00:00
Providing 2 fire button support / cd32 joypad support amigapd request.Other 0 13 July 2015 17:20
Portaudio support (was: WinUAE support for ASIO drivers) Amiga1992 support.WinUAE 57 28 March 2009 21:15
Classic WB P96 Anubis project.ClassicWB 5 08 May 2006 14:30
amiga-news.de: Collected software-news Paul News 0 14 November 2004 15:50

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 07:28.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.47189 seconds with 16 queries