; ; File: CTETypes.a ; ; Contains: Template definitions of the various CTE structures. ; ; Written by: Aaron Ludtke ; ; Copyright: © 1992 by Apple Computer, Inc., all rights reserved. ; ; Change History (most recent first): ; ; <1> 5/16/92 kc first checked in ; <1> 3/6/92 AL first checked in ; CTESubtestInfo STRUCTURE 0 ; typedef struct CTESubtestInfo DSF.L userInfo ; void *userInfo ; DSF.L id ; SubtestID id ; DSF.L functionEntry ; Subtest *functionEntry ; DSF.L paramsSize ; long paramsSize ; DSF.L resultsSize ; long resultsSize ; ENDSTRUCT ; } CTESubtestInfo ; MACRO CTESubtestInfoItem &fields STRUCTITEM CTESubtestInfo, &fields ENDM CTETestInfo STRUCTURE 0 ; typedef struct CTETestInfo DSF.L userInfo ; void *userInfo ; DSF.L id ; TestID id ; DSF.L functionEntry ; Test2 *functionEntry ; DSF.L paramsSize ; long paramsSize ; DSF.L resultsSize ; long resultsSize ; ENDSTRUCT ; } CTETestInfo ; MACRO CTETestInfoItem &fields STRUCTITEM CTETestInfo, &fields ENDM CTEDTMExecutionOptions STRUCTURE 0 DSF.L userInfo ; void *userInfo ; DSF.L processorType ; CTEProcessorType processorType ; DSF.L executionMode ; CTEExecutionMode executionMode ; DSF.L testParams ; void *testParams ; DSF.L testResultsOverride ; void *testResultsOverride ; DSF.L subtestParamsOverride ; void *subtestParamsOverride ; DSF.L subtestResultsOverride ; void *subtestResultsOverride ; DSF.L idleMethodArg ; void *idleMethodArg ; ENDSTRUCT ; } CTEDTMExecutionOptions ; MACRO CTEDTMExecutionOptionsItem &fields STRUCTITEM CTEDTMExecutionOptions, &fields ENDM CTEDTMExecutionResults STRUCTURE 0 DSF.L err ; CTEError err ; DSF.L testParams ; void *testParams ; DSF.L testResults ; void *testResults ; DSF.L subtestParams ; void *subtestParams ; DSF.L subtestResults ; void *subtestResults ; ENDSTRUCT ; } CTEDTMExecutionResults ; MACRO CTEDTMExecutionResultsItem &fields STRUCTITEM CTEDTMExecutionResults, &fields ENDM ; ; The CTE globals. ; Yes you guessed it, a pointer to a CTEInfo type points to the CTE Kernel's ; globals, but NEVER, EVER dereference it to access the Kernel's globals ; directly because it is subject to change without notice! You have been ; warned! ; CTEInfo STRUCTURE 0 ; struct CTEGlobals DSF.L version ; NumVersion version ; // the version number of the CTE Kernel. DSF.L processorType ; CTEProcessorType processorType ; DSF.L executionOptions ; CTEDTMExecutionOptions *executionOptions ; DSF.L testInfo ; CTETestInfo *testInfo ; DSF.L subtestInfo ; CTESubtestInfo *subtestInfo ; DSF.L executionResults ; CTEDTMExecutionResults *executionResults ; DSF.L heapBottom ; void *heapBottom ; // points to the lowest address in the heap. DSF.L heapTop ; void *heapTop ; // points to the highest address in the heap + 1. DSF.L heapSize ; long heapSize ; // the size of the heap in bytes. DSF.L heapPermPtr ; void *heapPermPtr ; // points to the next available byte in perm. heap storage. ; Perm. heap storage grows from heapBottom towards heapTop. DSF.L heapTempPtr ; void *heapTempPtr ; // points to the next available byte + 1 in temp. heap storage. ; Temp. heap storage grows from heapTop towards heapBottom. ;;; DSF.? jumpTable ; CTEJumpTable jumpTable ; // the Support Function jump table. ;;; DSF.? exceptionInfoPtrTable ; ExceptionInfo *exceptionInfoPtrTable[256] ; // the Exception Info pointer table. ;;; DSF.L commentary ; char *commentary ; // points to a hopefully relavent message. ENDSTRUCT ; } ; MACRO CTEInfoItem &fields STRUCTITEM , &fields ENDM