Cards.DLL
Боюсь, что я не знаю как работают функции и все остальное, но я могу вам помочь и дать имена и порядковые номера функций из этой DLL:
0 Card Display Technology 5 CDTANIMATE 4 CDTTERM 3 CDTDRAWEXT 2 CDTDRAW 1 CDTINIT
Благодаря Heath Ian Hunnicutt (heathh@cco.caltech.edu) код CARDS.DLL был дизассемблирован, вследствие чего и появился расположенный ниже материал.
cards.h
#include "crd.h"
/* * cdtInit: Инициализация карточного модуля * * pdxCard: получаем ширину карты * pdyCard: получаем высоту карты * returns: успешно или неудачно */ BOOL FAR PASCAL cdtInit(int FAR *pdxCard, int FAR *pdyCard);
/* * cdtDrawExt: Рисуем карту с заданными размерами * * x, y: координаты для отрисовки карты * dx,dy: размер для отрисовки * cd: карта для отрисовки * mode: способ передачи * returns: успешно или неудачно */ BOOL FAR PASCAL cdtDrawExt(HDC hdc, int x, int y, int dx, int dy,=20 int cd, int mode, DWORD rgbBgnd);
/* * cdtDraw: Отрисовка карты * * x, y: координаты для отрисовки карты * cd: карта для отрисовки * mode: способ передачи * returns: успешно или неудачно */ BOOL FAR PASCAL cdtDraw(HDC hdc, int x, int y, int cd, int mode, DWORD rgbBgnd);
/* * cdtTerm: завершает и очищает карточный модуль
*/ void FAR PASCAL cdtTerm();
cdt.h
#define CLOADMAX 5
/* Идентификаторы (ID) команд */ #define IDACLUBS 1 #define ID2CLUBS 2 #define ID3CLUBS 3 #define ID4CLUBS 4 #define ID5CLUBS 5 #define ID6CLUBS 6 #define ID7CLUBS 7 #define ID8CLUBS 8 #define ID9CLUBS 9 #define IDTCLUBS 10 #define IDJCLUBS 11 #define IDQCLUBS 12 #define IDKCLUBS 13
#define IDADIAMONDS 14 #define ID2DIAMONDS 15 #define ID3DIAMONDS 16 #define ID4DIAMONDS 17 #define ID5DIAMONDS 18 #define ID6DIAMONDS 19 #define ID7DIAMONDS 20 #define ID8DIAMONDS 21 #define ID9DIAMONDS 22 #define IDTDIAMONDS 23 #define IDJDIAMONDS 24 #define IDQDIAMONDS 25
#define IDKDIAMONDS 26
#define IDAHEARTS 27 #define ID2HEARTS 28 #define ID3HEARTS 29 #define ID4HEARTS 30 #define ID5HEARTS 31 #define ID6HEARTS 32 #define ID7HEARTS 33 #define ID8HEARTS 34 #define ID9HEARTS 35 #define IDTHEARTS 36 #define IDJHEARTS 37 #define IDQHEARTS 38 #define IDKHEARTS 39
#define IDASPADES 40 #define ID2SPADES 41 #define ID3SPADES 42 #define ID4SPADES 43 #define ID5SPADES 44 #define ID6SPADES 45 #define ID7SPADES 46 #define ID8SPADES 47 #define ID9SPADES 48 #define IDTSPADES 49 #define IDJSPADES 50 #define IDQSPADES 51 #define IDKSPADES 52
#define IDGHOST 53
#define IDFACEDOWN1 54 #define IDFACEDOWN2 55 #define IDFACEDOWN3 56 #define IDFACEDOWN4 57 #define IDFACEDOWN5 58 #define IDFACEDOWN6 59 #define IDFACEDOWN7 60 #define IDFACEDOWN8 61 #define IDFACEDOWN9 62 #define IDFACEDOWN10 63 #define IDFACEDOWN11 64 #define IDFACEDOWN12 65
#define IDFACEDOWNFIRST IDFACEDOWN1 #define IDFACEDOWNLAST IDFACEDOWN12
#define IDX 67 #define IDO 68 #define IDMAX IDDECK
/* Внутренние идентификаторы (ID) для анимации */ #define IDASLIME1 678 #define IDASLIME2 679 #define IDAKASTL1 680 #define IDAFLIPE1 681 #define IDAFLIPE2 682 #define IDABROBOT1 683 #define IDABROBOT2 684
/* Красный нелицевой кадр карты */ #define IDFRAME 999
#define FACEUP 0 #define FACEDOWN 1 /* используется для совместимости со старыми приложениями
IDFACEDOWNFIRST..IDFACEDOWNLAST */ #define HILITE 2 #define GHOST 3 #define REMOVE 4 #define INVISIBLEGHOST 5 #define DECKX 6 #define DECKO 7
crd.h
#include "cdt.h"
typedef int CD;
// Структура CaRD, описание карты typedef struct _crd { unsigned cd : 15; // карта # (1..52) unsigned fUp : 1; // карта рубашкой вверху/внизу PT pt; // верхний левый угол карты } CRD;
/* ПРЕДУПРЕЖДЕНИЕ: Соблюдайте порядок */ #define suClub 0 #define suDiamond 1 #define suHeart 2 #define suSpade 3 #define suMax 4 #define suFirst suClub
#define raAce 0 #define raDeuce 1 #define raTres 2 #define raFour 3 #define raFive 4 #define raSix 5 #define raSeven 6 #define raEight 7 #define raNine 8 #define raTen 9 #define raJack 10 #define raQueen 11
#define raKing 12 #define raMax 13 #define raNil 15 #define raFirst raAce
typedef int RA; typedef int SU;
#define cdNil 0x3c
#define cIDFACEDOWN (IDFACEDOWNLAST-IDFACEDOWNFIRST+1)
#define SuFromCd(cd) ((cd)&0x03) #define RaFromCd(cd) ((cd)>>2) #define Cd(ra, su) (((ra)
[001650]
Содержание раздела