Rev 33 | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 154 | pmbaty | 1 | #pragma once |
| 33 | pmbaty | 2 | /* *INDENT-OFF* */ |
| 3 | /*>>> epd.h: subprogram prototypes for epd.c */ |
||
| 4 | /* Revised: 1996.06.23 */ |
||
| 5 | /* |
||
| 6 | Copyright (C) 1996 by Steven J. Edwards (sje@mv.mv.com) |
||
| 7 | All rights reserved. This code may be freely redistibuted and used by |
||
| 8 | both research and commerical applications. No warranty exists. |
||
| 9 | */ |
||
| 10 | /* |
||
| 11 | Everything in this source file is independent of the host program. |
||
| 12 | Requests for changes and additions should be communicated to the author |
||
| 13 | via the e-mail address given above. |
||
| 14 | */ |
||
| 15 | /* |
||
| 16 | This file was originally prepared on an Apple Macintosh using the |
||
| 17 | Metrowerks CodeWarrior 6 ANSI C compiler. Tabs are set at every |
||
| 18 | four columns. Further testing and development was performed on a |
||
| 19 | generic PC running Linux 1.3.20 and using the gcc 2.7.0 compiler. |
||
| 20 | */ |
||
| 21 | void EPDFatal(charptrT s); |
||
| 22 | void EPDSwitchFault(charptrT s); |
||
| 23 | voidptrT EPDMemoryGrab(liT n); |
||
| 24 | void EPDMemoryFree(voidptrT ptr); |
||
| 25 | charptrT EPDStringGrab(charptrT s); |
||
| 26 | void EPDStringFree(charptrT s); |
||
| 27 | charptrT EPDStringAppendChar(charptrT s, char c); |
||
| 28 | charptrT EPDStringAppendStr(charptrT s0, charptrT s1); |
||
| 29 | liT EPDMapFromDuration(charptrT s); |
||
| 30 | charptrT EPDMapToDuration(liT seconds); |
||
| 31 | gamptrT EPDGameOpen(void); |
||
| 32 | void EPDGameClose(gamptrT gamptr); |
||
| 33 | void EPDGameAppendMove(gamptrT gamptr, mptrT mptr); |
||
| 34 | void EPDTokenize(charptrT s); |
||
| 35 | siT EPDTokenCount(void); |
||
| 36 | charptrT EPDTokenFetch(siT n); |
||
| 37 | siT EPDCICharEqual(char ch0, char ch1); |
||
| 38 | pT EPDPieceFromCP(cpT cp); |
||
| 39 | siT EPDCheckPiece(char ch); |
||
| 40 | pT EPDEvaluatePiece(char ch); |
||
| 41 | siT EPDCheckColor(char ch); |
||
| 42 | cT EPDEvaluateColor(char ch); |
||
| 43 | siT EPDCheckRank(char ch); |
||
| 44 | rankT EPDEvaluateRank(char ch); |
||
| 45 | siT EPDCheckFile(char ch); |
||
| 46 | fileT EPDEvaluateFile(char ch); |
||
| 47 | eovptrT EPDNewEOV(void); |
||
| 48 | void EPDReleaseEOV(eovptrT eovptr); |
||
| 49 | void EPDAppendEOV(eopptrT eopptr, eovptrT eovptr); |
||
| 50 | eovptrT EPDCreateEOVStr(charptrT str); |
||
| 51 | eovptrT EPDCreateEOVSym(charptrT sym); |
||
| 52 | eovptrT EPDCreateEOVInt(liT lval); |
||
| 53 | eovptrT EPDLocateEOV(eopptrT eopptr, charptrT strval); |
||
| 54 | siT EPDCountEOV(eopptrT eopptr); |
||
| 55 | void EPDReplaceEOVStr(eovptrT eovptr, charptrT str); |
||
| 56 | eopptrT EPDNewEOP(void); |
||
| 57 | void EPDReleaseEOP(eopptrT eopptr); |
||
| 58 | void EPDAppendEOP(epdptrT epdptr, eopptrT eopptr); |
||
| 59 | eopptrT EPDCreateEOP(charptrT opsym); |
||
| 60 | eopptrT EPDCreateEOPCode(epdsoT epdso); |
||
| 61 | eopptrT EPDLocateEOP(epdptrT epdptr, charptrT opsym); |
||
| 62 | eopptrT EPDLocateEOPCode(epdptrT epdptr, epdsoT epdso); |
||
| 63 | siT EPDCountEOP(epdptrT epdptr); |
||
| 64 | void EPDDropIfLocEOP(epdptrT epdptr, charptrT opsym); |
||
| 65 | void EPDDropIfLocEOPCode(epdptrT epdptr, epdsoT epdso); |
||
| 66 | void EPDAddOpInt(epdptrT epdptr, epdsoT epdso, liT val); |
||
| 67 | void EPDAddOpStr(epdptrT epdptr, epdsoT epdso, charptrT s); |
||
| 68 | void EPDAddOpSym(epdptrT epdptr, epdsoT epdso, charptrT s); |
||
| 69 | epdptrT EPDNewEPD(void); |
||
| 70 | void EPDReleaseOperations(epdptrT epdptr); |
||
| 71 | void EPDReleaseEPD(epdptrT epdptr); |
||
| 72 | charptrT EPDFetchOpsym(epdsoT epdso); |
||
| 73 | epdptrT EPDCloneEPDBase(epdptrT epdptr); |
||
| 74 | eovptrT EPDCloneEOV(eovptrT eovptr); |
||
| 75 | eopptrT EPDCloneEOP(eopptrT eopptr); |
||
| 76 | epdptrT EPDCloneEPD(epdptrT epdptr); |
||
| 77 | epdptrT EPDSet(rbptrT rbptr, cT actc, castT cast, sqT epsq); |
||
| 78 | void EPDSetCurrentPosition(rbptrT rbptr, cT actc, castT cast, sqT epsq, |
||
| 79 | siT hmvc, siT fmvn); |
||
| 80 | epdptrT EPDGetCurrentPosition(void); |
||
| 81 | cT EPDFetchACTC(void); |
||
| 82 | castT EPDFetchCAST(void); |
||
| 83 | sqT EPDFetchEPSQ(void); |
||
| 84 | siT EPDFetchHMVC(void); |
||
| 85 | siT EPDFetchFMVN(void); |
||
| 86 | rbptrT EPDFetchBoard(void); |
||
| 87 | cpT EPDFetchCP(sqT sq); |
||
| 88 | charptrT EPDFetchBoardString(void); |
||
| 89 | gtimT EPDGetGTIM(gamptrT gamptr); |
||
| 90 | void EPDPutGTIM(gamptrT gamptr, gtimT gtim); |
||
| 91 | charptrT EPDGenBasic(rbptrT rbptr, cT actc, castT cast, sqT epsq); |
||
| 92 | charptrT EPDGenBasicCurrent(void); |
||
| 93 | epdptrT EPDDecodeFEN(charptrT s); |
||
| 94 | charptrT EPDEncodeFEN(epdptrT epdptr); |
||
| 95 | epdptrT EPDDecode(charptrT s); |
||
| 96 | charptrT EPDEncode(epdptrT epdptr); |
||
| 97 | void EPDRealize(epdptrT epdptr); |
||
| 98 | void EPDInitArray(void); |
||
| 99 | charptrT EPDPlayerString(cT c); |
||
| 100 | void EPDSANEncode(mptrT mptr, sanT san); |
||
| 101 | mptrT EPDSANDecodeAux(sanT san, siT strict); |
||
| 102 | siT EPDIsLegal(void); |
||
| 103 | siT EPDIsCheckmate(void); |
||
| 104 | siT EPDIsStalemate(void); |
||
| 105 | siT EPDIsInsufficientMaterial(void); |
||
| 106 | siT EPDIsFiftyMoveDraw(void); |
||
| 107 | siT EPDIsThirdRepeatIndex(gamptrT gamptr); |
||
| 108 | siT EPDIsDraw(gamptrT gamptr); |
||
| 109 | mptrT EPDMateInOne(void); |
||
| 110 | void EPDExecuteUpdate(mptrT mptr); |
||
| 111 | void EPDRetractUpdate(void); |
||
| 112 | void EPDRetractAll(void); |
||
| 113 | void EPDCollapse(void); |
||
| 114 | void EPDReset(void); |
||
| 115 | void EPDGenMoves(void); |
||
| 116 | siT EPDFetchMoveCount(void); |
||
| 117 | mptrT EPDFetchMove(siT index); |
||
| 118 | void EPDSetMoveFlags(mptrT mptr); |
||
| 119 | void EPDSortSAN(void); |
||
| 120 | siT EPDPurgeOpFile(charptrT opsym, charptrT fn0, charptrT fn1); |
||
| 121 | siT EPDRepairEPD(epdptrT epdptr); |
||
| 122 | siT EPDRepairFile(charptrT fn0, charptrT fn1); |
||
| 123 | siT EPDNormalizeFile(charptrT fn0, charptrT fn1); |
||
| 124 | siT EPDScoreFile(charptrT fn, bmsptrT bmsptr); |
||
| 125 | siT EPDEnumerateFile(siT depth, charptrT fn0, charptrT fn1, liptrT totalptr); |
||
| 126 | charptrT EPDMoveList(gamptrT gamptr); |
||
| 127 | pgnstrT EPDPGNFetchTagIndex(charptrT s); |
||
| 128 | charptrT EPDPGNFetchTagName(pgnstrT pgnstr); |
||
| 129 | charptrT EPDPGNGetSTR(gamptrT gamptr, pgnstrT pgnstr); |
||
| 130 | void EPDPGNPutSTR(gamptrT gamptr, pgnstrT pgnstr, charptrT s); |
||
| 131 | charptrT EPDPGNGenSTR(gamptrT gamptr); |
||
| 132 | charptrT EPDPGNHistory(gamptrT gamptr); |
||
| 133 | void EPDCopyInPTP(gamptrT gamptr, epdptrT epdptr); |
||
| 134 | void EPDCopyOutPTP(gamptrT gamptr, epdptrT epdptr); |
||
| 135 | charptrT EPDFetchRefcomStr(refcomT refcom); |
||
| 136 | charptrT EPDFetchRefreqStr(refreqT refreq); |
||
| 137 | refcomT EPDFetchRefcomIndex(charptrT s); |
||
| 138 | refreqT EPDFetchRefreqIndex(charptrT s); |
||
| 139 | refcomT EPDExtractRefcomIndex(epdptrT epdptr); |
||
| 140 | refreqT EPDExtractRefreqIndex(epdptrT epdptr); |
||
| 141 | siT EPDComm(refintptrT refintptr, charptrT pipebase); |
||
| 142 | void EPDInit(void); |
||
| 143 | void EPDTerm(void); |
||
| 144 | /* *INDENT-ON* */ |