AtiVersion 01da.2130 SrmInit 01da.2140 SrmTerm 01da.22b8 SrmAsicGetPhysDev 01da.23c4 SrmCfgSetProperty 01da.2ce4 SrmCfgGetProperty 01da.2d18 SrmCfgSetPropertyEx 01da.2d4c SrmCfgGetPropertyEx 01da.2ec8 SrmClkSet 01da.3534 SrmIntrClientHook 01da.3928 SrmIntrClientUnhook 01da.39f8 SrmIntrEnable 01da.3a70 SrmIntrDisable 01da.3a84 SrmIntrWait 01da.3a98 SrmIntrWaitEx 01da.3af0 SrmIntrSignal 01da.3b54 SrmIntrProcessed 01da.3ba4 SrmIntrGetStatus 01da.3c1c SrmLoadLcdInit 01da.5474 SrmMemInit 01da.5644 SrmMemTerm 01da.57c8 SrmSurfGetLargestFreeBlockSize 01da.5818 SrmMemAlloc 01da.58f0 SrmMemAllocLock 01da.5b64 SrmMemAllocEx 01da.5ba8 SrmMemFree 01da.5bb0 SrmMemLock 01da.5d74 SrmMemUnlock 01da.5e9c SrmPwrInit 01da.6404 SrmPwrTerm 01da.647c SrmPwrSetState 01da.64d8 SrmPwrGetState 01da.66e4 SrmPwrSet 01da.6bf0 SrmRGBGammaValueSet 01da.74a0 SrmRGBGammaValueGet 01da.74d8 SrmRGBGammaSelectionSet 01da.7510 SrmRGBGammaSelectionGet 01da.7548 SrmUserCtxObtain 01da.767c SrmUserCtxRelease 01da.78c0 SrmUserCtxQuery 01da.7b90 SrmUserCtxActive 01da.7bf8 AhiDevRegRead 01da.a5b4 AhiDevRegWrite 01da.a630 AhiDevMemRead 01da.a6ac AhiDevMemWrite 01da.a71c AhiDevCfgRead 01da.a784 AhiDevCfgWrite 01da.a7ac AhiDrawIsIdle 01da.a7cc AhiDrawIdle 01da.a814 AhiDrawPM4 01da.a838 AhiInit 01da.a9d4 AhiTerm 01da.a9e4 AhiDevEnum 01da.a9f4 AhiDevOpen 01da.aae4 AhiDevClose 01da.abf0 AhiDevClientVersion 01da.ac6c AhiDispModeEnum 01da.ada4 AhiDispModeSet 01da.ae04 AhiDispModeGet 01da.b34c AhiDispModeClip 01da.b388 AhiDispSurfSet 01da.b470 AhiDispSurfGet 01da.b540 AhiDispState 01da.b584 AhiDispIsInVBlank 01da.ba4c AhiDispWaitVBlank 01da.ba80 AhiDispCursorState 01da.baac AhiDispCursorPos 01da.bb2c AhiDispCursorSet 01da.bba8 AhiDispOverlayCaps 01da.bd70 AhiDispOverlayState 01da.be54 AhiDispOverlaySurf 01da.befc AhiDispOverlayPos 01da.c574 AhiDrawAlphaBlt 01da.d610 AhiDrawFgColorSet 01da.dd68 AhiDrawBgColorSet 01da.dd98 AhiDrawBrushFgColorSet 01da.ddc8 AhiDrawBrushBgColorSet 01da.ddf8 AhiDrawBrushSet 01da.de28 AhiDrawClipSrcSet 01da.e5c0 AhiDrawClipDstSet 01da.e630 AhiDrawSurfSrcSet 01da.e6f0 AhiDrawSurfDstSet 01da.e854 AhiDrawRopSet 01da.e9c4 AhiDrawPixelOrderSet 01da.ea60 AhiDrawLineStyleSet 01da.eabc AhiDrawAlphaSet 01da.eafc AhiDrawBitBlt 01da.ebac AhiDrawBitBltMulti 01da.ee00 AhiDrawTransBlt 01da.f160 AhiDrawRotateBlt 01da.f44c AhiDrawMaskBlt 01da.f8bc AhiDrawSwapBlt 01da.fb8c AhiDrawMonoBltMulti 01da.fe14 AhiDrawTileBlt 01db.00b0 AhiDrawBitmapBlt 01db.06a4 AhiDrawChar 01db.1474 AhiDrawGlyph 01db.1720 AhiDrawLines 01db.19c4 AhiDrawSpans 01db.1cb4 AhiDrawStretchBlt 01db.1ee0 AhiGpioSet 01db.3338 AhiGpioGet 01db.3384 AhiIDCTOpen 01db.37e8 AhiIDCTClose 01db.39c4 AhiIDCTPropGet 01db.39dc AhiIDCTPropSet 01db.3b08 AhiIDCTFrameEnd 01db.3ca4 AhiIDCTFrameStart 01db.3d1c AhiIDCT8x8 01db.3f9c AhiIDCTMComp8x8 01db.4084 AhiIDCTMComp 01db.41f8 AhiPropertySet 01db.480c AhiPropertyGet 01db.4948 AhiPwrModeSet 01db.4ab0 AhiSurfGetLargestFreeBlockSize 01db.4ad0 AhiSurfAlloc 01db.4bac AhiSurfReuse 01db.4f54 AhiSurfFree 01db.5230 AhiSurfInfo 01db.5330 AhiSurfPlaneInfo 01db.53ec AhiSurfLock 01db.5488 AhiSurfUnlock 01db.5570 AhiSurfCopy 01db.55a0 DrvEnableDriver 01db.6ef4
#define ATI(A) (*(int(*)(...))GetProcAddress(ati_dll, A)) HINSTANCE ati_dll= LoadLibrary(L"ace_ddi.dll"); ATI(L"AhiInit")(0x11); void* asic; char info[0x14c]; ATI(L"AhiDevEnum")(&asic, info, 0); void* ctx; ATI(L"AhiDevOpen")(&ctx, asic, "test", 0); void* disp; ATI(L"AhiDispSurfGet")(ctx, &disp); void* surf; int siz[2]= {256,256}; ATI(L"AhiSurfAlloc")(ctx, &surf, siz, 5, 0); WORD* pix; ATI(L"AhiSurfLock")(ctx, surf, &pix, 0); for(int i= 0; i<256*256; i++) pix[i]= i; ATI(L"AhiDrawSurfSrcSet")(ctx, surf, 0); ATI(L"AhiDrawSurfDstSet")(ctx, disp, 0); ATI(L"AhiDrawRopSet")(ctx, 0xcccc); int pos[2]= {0,0}; int rect[4]= {10,10,10+256,10+256}; ATI(L"AhiDrawBitBlt")(ctx, rect, pos); ATI(L"AhiDrawIdle")(ctx, 0); ATI(L"AhiSurfFree")(ctx, surf); ATI(L"AhiDevClose")(ctx);