Gfx chipset detection howto?

2 posts / 0 new
Last post
alfkil
alfkil's picture
Offline
Last seen: 3 months 3 days ago
Joined: 2011-05-10 22:02
Gfx chipset detection howto?

Is it possible (and if so how) to detect what gfx chipset a certain screen is running on in a system friendly - and preferably standardized - manner?

salass00
salass00's picture
Offline
Last seen: 6 months 1 week ago
Joined: 2011-02-03 11:27
If you get the DisplayID of

If you get the DisplayID of the screen you can use p96GetModeIDAttr().

  1. CONST_STRPTR board_name = NULL;
  2. uint32 display_id;
  3. if (IIntuition->GetScreenAttr(screen, SA_DisplayID, &display_id, sizeof(display_id)) == sizeof(display_id)) {
  4. if (IP96->p96GetModeIDAttr(display_id, P96IDA_ISP96)) {
  5. board_name = IP96->p96GetModeIDAttr(display_id, P96IDA_BOARDNAME);
  6. } else {
  7. /* Not a Picasso96 mode (OCS, ECS or AGA?) */
  8. }
  9. } else {
  10. /* Failed to get DisplayID of screen */
  11. }

Using P96IDA_BOARDNUMBER you can also get the board number which you can use to get more information with IP96->p96GetBoardDataTags() (there is f.e. P96BD_BoardName which should be same as obtained in the code above and P96BD_ChipName).

Log in or register to post comments