AGP

Drivers for various video cards
  • I know almost nothing about AGP, but imho it stays in the last century, forever.

    PCIe is faster, cheaper, better standardized, not that much copper-dependant, and has no limit reached yet.
  • Also it is hard to find AGP based mainboard
  • I have a lot of AGP based mainboards and AGP cards at home, I already wrote half of the code so I'll test it when I get home.
    AGP is indeed old (pre 2004) but the effort required to simply enable the card is nihil to the possible speed gain (x2, x4 or even x8) on this older hardware.
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • Driver seems to be working (detection of card and its properties is correct) but i have zero increased FPS on all demos :(

    I feel like I should focus on my main project again, so if somebody else feels like investigating, here is the code to load the driver:
    Spoiler:

    Code: Select all

    format binary as ""
    
    use32
            db      'MENUET01'
            dd      1
            dd      start
            dd      i_end
            dd      mem
            dd      mem
            dd      0, 0
    
    start:
            mov     eax, 68
            mov     ebx, 16
            mov     ecx, drvname
            int     0x40
    
            test    eax, eax
            jz      .fail
    
            mov     [control], eax
    
            mov     eax, 68
            mov     ebx, 17
            mov     ecx, control
            int     0x40
    
      .fail:
            mov     eax, -1
            int     0x40
    
    drvname db      'AGP', 0
    control dd ?
            dd 1
            dd 0
            dd 0
            dd 0
    i_end:
    align 16
    rb 16
    mem:
    
    AGP3 spec is here: http://download.intel.com/support/mothe ... /agp30.pdf
    (see page 43-49 or appendix B for starters)
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • I think performance boost will be only for DMA transfers, not for CPU
  • Serge wrote:I think performance boost will be only for DMA transfers, not for CPU
    Oh, then I wrongly assumed KolibriOS used DMA already!
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • hidnplayr wrote: Oh, then I wrongly assumed KolibriOS used DMA already!
    It's can works on old ATI cards, but no acceleration is used now
  • Serge wrote:
    hidnplayr wrote: Oh, then I wrongly assumed KolibriOS used DMA already!
    It's can works on old ATI cards, but no acceleration is used now
    I have some ATI rage II d, would it benefit from this, and how?
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • No, I mean Radeons. RageII is too old
  • Ok, I have an ATI radeon HD 3650 on AGP I could use to test when I find the time.
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • Hi! I have ATI Radeon 9600 on AGP. Can I help you with testing?
  • Albom wrote:Hi! I have ATI Radeon 9600 on AGP. Can I help you with testing?
    1. compile the code posted above and save it somewhere on your kolibrios image (for example: /rd/1/agp)
    2. compile the driver code from SVN and save it in /rd/1/drivers/agp.obj
    3. In kolibriOS, run the program you compiled in step 1, the driver will output some information on the debug board
    4. now see if you notice any improvements in graphics speed
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • I've tested the driver with the last nightbuild. Quote from the boardlog.txt:
    AGP driver loaded.
    Searching for AGP card...
    AGP3 device found
    8x speed
    Side band addressing
    AGP device enabled
    Upd. Results of MGB:
    Spoiler:
    BEFORE.png
    BEFORE.png (6.02 KiB)
    Viewed 11211 times
    AFTER.png
    AFTER.png (6.13 KiB)
    Viewed 11211 times
  • Well, it seems to be working but gained result isnt as large as expected. It's because most graphical operations are performed by the CPU I think.

    But hey, it works, it could be usefull in the future.
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • Who is online

    Users browsing this forum: No registered users and 2 guests