00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifndef _CACEDEFINES_H_
00030 #define _CACEDEFINES_H_
00031
00032
00033 #define MAX_CARDS 48
00034 #define MAX_STACK 64
00035
00036 enum
00037 { B_SOF=0,
00038 B_ID,
00039 B_SRR,
00040 B_IDE,
00041 B_EXT,
00042 B_RTR,
00043 B_RES,
00044 B_DLC,
00045 B_DAT,
00046 B_CRC,
00047 B_ACK,
00048 B_EOF,
00049 B__MAX
00050 };
00051
00052 #define maskMS "\x00\x80\xC0\xE0\xF0\xF8\xFC\xFE\xFF"
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063 #define maskLS "\x00\x01\x03\x07\x0F\x1F\x3F\x7F\xFF"
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073 enum
00074 { LEFT,
00075 RIGHT
00076 };
00077
00078 #define _GETBYTE(n) (n>>3)
00079 #define _GETBIT(n) (n-(_GETBYTE(n)<<3))
00080
00081 #define _BYTES2BIT(byte,bit) \
00082 (_GETBYTE(byte)+bit)
00083
00084 #define GRABBIT(data,bit) (maskLS[9-bit]&data)>>bit
00085
00086 #define SETERROR(n) channel[handle].error.last=n
00087
00088 int _stdcall rightshifteverything(
00089 unsigned char*from,
00090 int distance,
00091 int size);
00092
00093 int _stdcall setatbit(
00094 unsigned char*structure,
00095 unsigned char*toset,
00096 int start,
00097 int size);
00098
00099 int _stdcall getatbit(
00100 unsigned char*structure,
00101 unsigned char*toset,
00102 int start,
00103 int size);
00104 #endif