English Amiga Board


Go Back   English Amiga Board > Support > support.WinUAE

 
 
Thread Tools
Old 17 November 2019, 13:26   #1
superfrog
Registered User

 
Join Date: Jun 2015
Location: San Francisco, USA
Posts: 136
Video output corruption on Picasso II with 1MB VRAM

Here's another RAM allocation issue...

Picasso II/II+ with 2 MB VRAM works fine [SS-01]. But if I drop it down to 1 MB (the default amount of RAM the real board originally shipped with) the display is corrupt to the point of being almost unusable [SS-02]. It's more usable with the original Picasso software [SS-03], and much worse with Picasso96. [See screenshots]

I also notice that with most of the RTG boards, when configured with the lowest possible amount of VRAM, ShowConfig reports that the board has the next-higher possible amount. For example, for Picasso II configured with 1 MB VRAM, ShowConfig reports that the board contains 2meg. For boards that have a 2 MB minimum, with the 2 MB setting ShowConfig reports 4meg. The higher amounts of configured RAM always report correctly. The UAEgfx boards do not have this issue. The amount of RAM is always reported correctly.

Perhaps there is some connection between the incorrect amount of RAM the OS sees and the display corruption?

https://eab.abime.net/zone/Picasso%2...0Corruption.7z
Attached Thumbnails
Click image for larger version

Name:	[SS-01] Picasso II w.2MB VRAM (Works).png
Views:	47
Size:	15.6 KB
ID:	65186   Click image for larger version

Name:	[SS-02] Picasso II+Picasso96 w.1MB VRAM (Corrupt).png
Views:	45
Size:	12.8 KB
ID:	65187   Click image for larger version

Name:	[SS-03] Picasso II+Picasso Driver w.1MB VRAM (Corrupt).png
Views:	46
Size:	16.2 KB
ID:	65188  

Last edited by superfrog; 17 November 2019 at 13:34. Reason: Add link to test case configs and hdfs
superfrog is offline  
Old 17 November 2019, 14:26   #2
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 44
Posts: 23,360
It is correct that autoconfig board size equals max supported VRAM size. (It makes board design simpler). Picasso IV is a special case (but it is also quite complex board), it supports both 4M and 2M board sizes.

Main problem is VRAM mirroring that happens when board has less RAM than Cirrus Logic chip can access and this mirroring is not fully correct in all situations. (Partially because emulation is from QEMU and it wasn't even attempting to support any weird edge cases..)
Toni Wilen is online now  
Old 18 November 2019, 12:50   #3
superfrog
Registered User

 
Join Date: Jun 2015
Location: San Francisco, USA
Posts: 136
Thanks for the explanation. It makes sense that the board allocates the maximum allowable amount of address space, even if not all of it is used. I notice with the Z3 boards that ShowConfig reports explicitly the size of the allocated address space, along with a "subset" value reflecting the actual amount of allocated space that is used by the currently installed VRAM.

With Picasso IV, I notice ShowConfig reports 1 allocated 2meg segment for board with 2 MB configured, and 2 allocated 2meg segments for board with 4 MB configured.

If the display corruption is a consequence of incomplete emulation of how the CL-GD542x chips behave when less than the max usable VRAM is installed, is it unlikely to ever be fixed, or can/will it be fixed at some point?

I only ask because, while it's mostly a non-issue that can be circumvented by simply allocating more RAM to the board, if it's a known issue that will never be fixed, then it should probably be noted in the release notes as a known issue with the emulation of these boards, just to save confusion for anyone who encounters display corruption when running with less than the max usable amount of VRAM. I searched the changelogs and found no such notation.
superfrog is offline  
Old 24 November 2019, 18:46   #4
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 44
Posts: 23,360
It will be fixed someday.

Main problem is driver size detection which is not simple, it basically configures CL chip memory controller using different parameters and checks how RAM works. Which means emulation most invalid memory mapping side-effects which is really complex and usually not worth the trouble.

Having driver sources would make it much easier to find out what it tries to do. Then developing a hack that passes the test should be relatively simple.
Toni Wilen is online now  
 


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

Similar Threads
Thread Thread Starter Forum Replies Last Post
Amiga 3000 Video Corruption when Cold dkedrowitsch support.Hardware 6 30 November 2018 15:44
Bridgeboard built-in CGA 4-color graphics output corruption superfrog support.WinUAE 5 23 August 2018 22:14
Picasso IV VRAM Diz_57 support.WinUAE 2 12 August 2014 22:24
Picasso II distorted output hese support.Hardware 7 17 February 2010 09:46
Video and Sound doesnt match (video output) hipoonios support.WinUAE 8 26 July 2009 01:25

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 15:06.


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