📄 ppsm.h
字号:
#ifndef PPSM_H
#define PPSM_H
#ifndef __PPSM_INTERFACE__
#define __PPSM_INTERFACE__
#endif
#include "asixsys.h"
#ifdef __PPSM_INTERFACE__
#include "ppsmtype.h"
#include "ppsmmsg.h"
#endif
typedef void (*VOIDFUNC)(void *);
/* PPSM MACROS */
#define PPSM_CURSOR_OFF ASIX_CURSOR_OFF
#define PPSM_CURSOR_ON ASIX_CURSOR_ON
#define PPSM_CURSOR_REVERSED ASIX_CURSOR_REVERSED
#define REPLACE_STYLE GPC_REPLACE_STYLE
#define AND_STYLE GPC_AND_STYLE
#define OR_STYLE GPC_OR_STYLE
#define EXOR_STYLE GPC_XOR_STYLE
#define NOT_STYLE GPC_NOT_STYLE
#define COPY_STYLE GPC_COPY_STYLE
#define SOLID_LINE GPC_SOLID_LINE
#define DOT_LINE GPC_DOT_LINE
#define DASH_LINE GPC_DASH_LINE
#define DASHDOT_LINE GPC_DASHDOT_LINE
#define BLACK GPC_BLACK
#define WHITE GPC_WHITE
#define DARKGREY GPC_DARKGREY
#define LIGHTGREY GPC_LIGHTGREY
/* PPSM INTERFACE FUNCITONS*/
/* ATV */
#define ActiveAreaEnable(areaId,type,mode,xSrc,ySrc,xDest,yDest,wndId) \
SysActiveAreaEnable((PDWORD)(areaId),(DWORD)(type),(DWORD)(mode),(SHORT)(xSrc),(SHORT)(ySrc),(SHORT)(xDest),(SHORT)(yDest),(DWORD)(wndId))
#define ActiveAreaDisable( areaId) \
SysActiveAreaDisable((DWORD)(areaId))
#define ActiveAreaSuspend( areaId, flag) \
SysActiveAreaSuspend((DWORD)(areaId),(DWORD)( flag))
#define ActiveAreaRead( areaId, xSrc, ySrc, xDest, yDest) \
SysActiveAreaRead( (DWORD)(areaId), (PSHORT)(xSrc), (PSHORT)(ySrc), (PSHORT)(xDest), (PSHORT)(yDest))
#define ActiveListPush() SysActiveListPush()
#define ActiveListPop() SysActiveListPop()
#define ActiveAreaToFront( areaId) SysActiveAreaToFront((DWORD)(areaId))
#define ActiveAreaPosition(areaId, xSrc, ySrc, xDest, yDest) \
SysActiveAreaPosition((DWORD)(areaId), (SHORT)(xSrc), (SHORT)(ySrc), (SHORT)(xDest), (SHORT)(yDest))
/* MESSAGE */
#define SendMessage(taskid, pmsg) SysSendMessage( (ID)(taskid),(PMSG)(pmsg))
#define RecvMessage(pmsg, timeout) SysRecvMessage((PMSG)(pmsg), (int)(timeout))
#define SendMessageTo( mbxid, pmsg) SysSendMessageTo((ID)(mbxid), (PMSG)(pmsg))
#define RecvMessageFrom( mbxid, pmsg, timeout) \
SysRecvMessageFrom( (ID)(mbxid), (PMSG)(pmsg), (int)(timeout))
//STATUS IrptGetData(P_U32 sData, P_U32 *data, P_U32 size);
STATUS AdvSendMessage(U32 taskId, P_MESSAGE msg, U8 flag);
STATUS AdvMessageDelete(U32 taskId, U16 type, U32 shortData);
#define GetPos(msg, px, py) SysGetPos(msg, px, py)
#define GetPosData(data, px, py) SysGetPosData(data, px, py)
/* LMALLOC */
#define Lmalloc(nb) SysLmalloc((DWORD)(nb))
#define Lfree(blk) SysLfree((void *)(blk))
#define Lrealloc(area, size) SysLrealloc((void *)(area), (DWORD)(size))
#define Lcalloc( size) SysLcalloc((DWORD)(size))
STATUS MoveBlock(P_U32 srcAddr, P_U32 destAddr, U32 size);
/* GPC */
#define InitGC(vramWidth, vramHeight)\
SysInitGC(vramWidth, vramHeight)
#define GetGC( ) SysGetGC( )
#define GetCurGC() SysGetCurGC()
#define FreeGC(pGC) SysFreeGC(pGC)
#define GetDisplayX( ) SysGetDisplayX( )
#define GetDisplayY( ) SysGetDisplayY( )
#define GetLogicalX(pGC) SysGetLogicalX(pGC)
#define GetLogicalY(pGC) SysGetLogicalY(pGC)
#define GroupOn(pGC) SysGroupOn( pGC ) //by zhuli 2002.2.4
#define GroupOff(pGC, xSrc, ySrc, xDest, yDest) SysGroupOff( pGC, (WORD)(xSrc), (WORD)(ySrc), (WORD)(xDest), (WORD)(yDest) ) //by zhuli 2002.2.4
#define SetDotWidth(pGC, newWidth, oldWidth)\
SysSetDotWidth(pGC, (WORD)(newWidth), (PWORD)(oldWidth))
#define ClearScreen(pGC, rgb)\
SysClearScreen(pGC, rgb)
#define DrawDot(pGC, rgb, Pos, yPos, style)\
SysDrawDot(pGC, rgb, (WORD)(Pos), (WORD)(yPos), style)
#define DrawHorz(pGC, rgb, xSrc, ySrc, width, dotLine, style)\
SysDrawHorz(pGC, rgb, (WORD)(xSrc), (WORD)(ySrc), (WORD)(width), dotLine, style)
#define DrawVert(pGC, rgb, xSrc, ySrc, height, dotLine, style)\
SysDrawVert(pGC, rgb, (WORD)(xSrc), (WORD)(ySrc), (WORD)(height), dotLine, style)
#define DrawLine(pGC, rgb, xSrc, ySrc, xDest, yDest, dotLine, style)\
SysDrawLine(pGC, rgb, (WORD)(xSrc), (WORD)(ySrc), (WORD)(xDest), (WORD)(yDest), dotLine, style)
#define DrawRec(pGC, rgb, xSrc, ySrc, xDest, yDest, dotLine, style)\
SysDrawRec(pGC, rgb, (WORD)(xSrc), (WORD)(ySrc), (WORD)(xDest), (WORD)(yDest), dotLine, style)
#define DrawCircle(pGC, rgb, xCenter, yCenter, radius, style)\
SysDrawCircle(pGC, rgb, (WORD)(xCenter), (WORD)(yCenter), (WORD)(radius), style)
#define DrawEllipse(pGC, rgb, xCenter, yCenter, xLength, yLength, style)\
SysDrawEllipse(pGC, rgb, (WORD)(xCenter), (WORD)(yCenter), (WORD)(xLength), (WORD)(yLength), style)
#define DrawVector(pGC, rgb, numberOfPoints, pointPtr, style, mode)\
SysDrawVector(pGC, rgb, numberOfPoints, pointPtr, style, mode)
#define PutRec(pGC, bitmap, xSrc, ySrc, width, height, style, reserved)\
SysPutRec(pGC, (PIXEL *)(bitmap), (WORD)(xSrc), (WORD)(ySrc), (WORD)(width), (WORD)(height), style, reserved)
#define SaveRec(pGC, bitmap, xSrc, ySrc, width, height, reserved)\
SysSaveRec(pGC, (PIXEL *)(bitmap), (WORD)(xSrc), (WORD)(ySrc), (WORD)(width), (WORD)(height), reserved)
#define ClearRec(pGC, rgb, xSrc, ySrc, width, height, style)\
SysClearRec(pGC, rgb, (WORD)(xSrc), (WORD)(ySrc), (WORD)(width), (WORD)(height), style)
#define InvRec(pGC, xSrc, ySrc, width, height)\
SysInvRec(pGC, (WORD)(xSrc), (WORD)(ySrc), (WORD)(width), (WORD)(height))
#define DrawText(pGC, text, xSrc, ySrc, xDes, yDes, font, rgb, style)\
SysDrawText(pGC, rgb, (WORD)(xSrc), (WORD)(ySrc), (WORD)(xDes), (WORD)(yDes), text, style)
#define TextOut(pGC, text, xSrc, ySrc, font, rgb, style)\
SysTextOut(pGC, rgb, (WORD)(xSrc), (WORD)(ySrc), text, style)
#define SetColor(pGC, rgb) SysSetColor(pGC, rgb)
#define SetBkColor(pGC, rgb) SysSetBkColor(pGC, rgb)
#define DrawMonoImage(pGC, bitmap, xSrc, ySrc, width, height, frntColor, bkColor)\
SysDrawMonoImage(pGC, (PBYTE)bitmap, (WORD)(xSrc), (WORD)(ySrc), (WORD)(width), (WORD)(height), frntColor, bkColor)
#define TextOutEx(pGC, text, xSrc, ySrc, font, rgb, style, length, exstyle, bkrgb)\
SysTextOutEx(pGC, rgb, (WORD)(xSrc), (WORD)(ySrc), (PBYTE)(text), (WORD)(length), style, exstyle, bkrgb)
#define SetBkFillMode( pGC, style )\
SysSetBkFillMode( pGC, style )
#define GetFont(pGC, font1, font2) SysGetFont(pGC, font1, font2)
#define SetFont(pGC, font1, font2) SysSetFont(pGC, font1, font2)
#define GetFontSize(pGC, font1_W, font1_H, font2_W, font2_H)\
SysGetFontSize( pGC,(PBYTE)(font1_W),(PBYTE)(font1_H),(PBYTE)(font2_W),(PBYTE)(font2_H))
#define AlignString( str, winXSrc, winXWidth, align )\
SysAlignString( str, (WORD)(winXSrc), (WORD)(winXWidth), align )
#define SetCursorPosition(pGC, xPos, yPos)\
SysSetCursorPosition(pGC, (WORD)(xPos), (WORD)(yPos))
#define SetCursorSize(pGC, cursorWidth, cursorHeight)\
SysSetCursorSize(pGC, (WORD)(cursorWidth), (WORD)(cursorHeight))
#define SetCursorStatus(pGC, status)\
SysSetCursorStatus(pGC, status)
#define SetCursorBlinkFrequency(pGC, frequency)\
SysSetCursorBlinkFrequency(pGC, frequency)
#define SetCursorStyle(pGC, cursorstyle)\
SysSetCursorStyle(pGC, cursorstyle)
#define CreateCursor(pGC, xPos, yPos, cursorWidth, cursorHeight, status, frequency, cursorstyle)\
SysCreateCursor(pGC, (WORD)(xPos), (WORD)(yPos), (WORD)(cursorWidth), (WORD)(cursorHeight), status, frequency, cursorstyle)
#define GetCursorStatus( pGC, status )\
SysGetCursorStatus( pGC, status )
#define StartCursor(pGC) SysStartCursor(pGC)
#define StopCursor(pGC) SysStopCursor(pGC)
#define FreeCursor(pGC) SysFreeCursor(pGC)
#define AdjustCursorDisp(pGC) SysAdjustCursorDisp(pGC)
#define GpcTest(pGC) SysGpcTest(pGC)
#define LoadBitmap( resource, pal ) SysLoadBitmap( (BYTE *)(resource), pal )
#define FreeBitmap( hbmp ) SysFreeBitmap( (DWORD)(hbmp) )
#define GrizzleBitmap( resource, pal ) SysGrizzleBitmap( (BYTE *)(resource), pal )
#define SetBMPPalette( hbmp, palette, oldPalette )\
SysSetBMPPalette( hbmp, (DWORD *)(palette), (DWORD **)(oldPalette) )
#define SetBMPData( hbmp, data, oldData ) SysSetBMPData( hbmp, (BYTE *)(data), (BYTE **)(oldData) )
#define ModifyBMPPalette( hbmp, index, color, oldColor )\
SysModifyBMPPalette( hbmp, (DWORD)(index), (DWORD)(color), (DWORD *)(oldColor) )
#define DisplayBMP( pGC, x, y, hbmp ) SysDisplayBMP( pGC, (WORD)(x), (WORD)(y), (DWORD)(hbmp) )
#define DisplayBMPEx( pGC, x, y, hbmp, style, trColor ) SysDisplayBMPEx( pGC, (WORD)(x), (WORD)(y), (DWORD)(hbmp), style, trColor )
#define GetBMPPixel( pGC, x, y, hbmp, color ) SysGetBMPPixel( pGC, (WORD)(x), (WORD)(y), (DWORD)(hbmp), color )
// follow macro defined for matching ppsm functions
#define CursorSetStatus( status )\
SysSetCursorStatus( GetGC(), status)
#define CursorGetStatus( status )\
SysGetCursorStatus( GetGC(), status)
/* TIMER */
#define CreateTimer( t_id, interval, func, arg, mode ) \
SysCreateTimer((PDWORD)(t_id), (DWORD)(interval),(VOIDFUNC)(func),(void *)(arg), mode )
#define FreeTimer( t_id) SysFreeTimer( (DWORD)(t_id))
#define StartTimer( t_id) SysStartTimer( (DWORD)(t_id))
#define StopTimer( t_id) SysStopTimer( (DWORD)(t_id))
#define ReadTimer( t_id) SysReadTimer( (DWORD)(t_id))
#define SetTimer(t_id, interval, func,arg) \
SysSetTimer((DWORD)(t_id), (DWORD)(interval),(VOIDFUNC)(func),(void *)arg)
#define SetDateTime( date, time ) \
SysSetDateTime( date, time )
#define ReadDateTime( date, time ) \
SysReadDateTime( date, time )
#define SetTime( time ) SysSetTime( time )
#define SetDate( date ) SysSetDate( date )
#define GetTime( time ) SysGetTime( time )
#define GetDate( date ) SysGetDate( date )
#define GetElapsedTime( elapse, start, end ) SysGetElapsedTime( elapse, start, end )
#define GetElapsedDays( elapse, start, end ) SysGetElapsedDays( elapse, start, end )
#define CompareTime( timL, timR ) SysCompareTime( timL, timR )
#define CompareDate( dateL, dateR ) SysCompareDate( dateL, dateR )
#define TimeElapse( end, start, elapse ) SysTimeElapse( end, start, elapse )
#define DateElapse( end, start, elapse ) SysDateElapse( end, start, elapse )
/* TASK */
STATUS TaskTerminate(U32 taskId);
STATUS TaskHook(U32 taskId, P_VOID entryCallback, P_VOID exitCallback);
STATUS AdvTaskCreate(P_U32 taskId, P_VOID procAddr, S16 xSrc, S16 ySrc, \
S16 xDest, S16 yDest, S32 stackSize, U16 newScreen, \
U16 screenWidth, U16 screenHeight, P_U8 bitmap );
STATUS TaskStart(U32 taskId);
/* PEN */
extern void PenEnable( void );
extern void PenDisable( void );
#define PenIrptEnable PenEnable
#define PenIrptDisable PenDisable
#define PenSetRate( freq )
#endif /* PPSM_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -