Supported HyperCard Callbacks for XCMDs/XFCNs
Mac Only (Mac Only)

> But I'm still confused as to which of the HC callbacks are supported. The
> 1.2 spec that I found lists 27. Of these, only 11 are in the MetaCard
> "XCmdGlue.h" - but I know that my external is using at least some of the
> others, eg ZeroToPas.

Right: we didn't put the rest in the MC external API because they're either standard C library routines, or are only needed by routines written in Pascal (which the MC external API doesn't support).

> Perhaps Scott wishes to deprecate the others in
> externals written specifically for MC/Rev - fair enough. But that still
> leaves anyone with an existing external to modify (possibly to make
> cross-compatible with MC and HC) somewhat in the dark. So I still think it
> would be nice to
>
> a) get a definitive list of the HC compatible callbacks that are
> supported, in addition to the MC-specific ones

As I've stated before, this is the HC 1.2 API, and includes the conversion routines for Pascal strings and such. Don't know where you'd find this list now, given that it's circa 1989 (we have the original 1.2 HC doc that has it), but here's the list directly out of the engine source:

xreqSendCardMessage
xreqEvalExpr
xreqStringLength
xreqStringMatch
xreqSendHCMessage
xreqZeroBytes
xreqPasToZero
xreqZeroToPas
xreqStrToLong
xreqStrToNum:
xreqStrToBool
xreqStrToExt
xreqLongToStr
xreqNumToStr
xreqNumToHex
xreqBoolToStr
xreqExtToStr
xreqGetGlobal
xreqSetGlobal
xreqGetFieldByName
xreqGetFieldByNum
xreqGetFieldByID
xreqSetFieldByName
xreqSetFieldByNum
xreqSetFieldByID
xreqStringEqual
xreqReturnToPas
xreqScanToReturn
xreqScanToZero
You can also find this list in the file "HyperXCmd.h" if you can find that file for HC 1.2 or earlier. I can only find 2.X versions which have lots of other stuff that we can't support because it's specific to the architecture of HyperCard (e.g., external windows, TextEdit handles, their debugger, etc.)

Posted 10/25/2002 by Scott Raney to the MetaCard List   (See the complete post/thread)