    IFND POWERUP_PPCLIB_PPC_I
POWERUP_PPCLIB_PPC_I	SET	1

	include "utility/tagitem.h"

;/* PPCGetInfo() Tags */

PPCINFOTAG_Dummy	=	(TAG_USER+$1f000)

;/* Version of the CPU
; * (Get)
; */
PPCINFOTAG_CPU		=	(PPCINFOTAG_Dummy+$1)

;/* CPU Count
; * (Get)
; */
PPCINFOTAG_CPUCOUNT	=	(PPCINFOTAG_Dummy+$2)

;/* Clock of the CPU
; * (Get)
; */
PPCINFOTAG_CPUCLOCK	=	(PPCINFOTAG_Dummy+$3)

;/* Revision of the CPU
; * (Get)
; */
PPCINFOTAG_CPUREV	=	(PPCINFOTAG_Dummy+$4)

;/* Default ExceptionHook
; * If you want to install an ExceptionHook
; * to catch all exceptions by a debugger for example
; * (Get/Set)
; */
; */
PPCINFOTAG_EXCEPTIONHOOK=	(PPCINFOTAG_Dummy+$5)

;/* Add PPCCreateTask Hook (V45)
; * If you want to be notified when a new PPC Task
; * is created. Usable for a debugger or a Task Viewer.
; *
; * BOOL CallHookPkt(DeleteTaskHook, MyTaskObject, TaskHookMsg);
; *
; * If you want to install a new TrapHandler you can do it
; * now in your Hook function. Or tell the Task to stop at the
; * first instruction.
; * The PPC Task is initiated after all Hook functions complete.
; * The result defines if potential hooks should not be called.
; * If you return TRUE no other hooks are called.
; * (Set)
; */
PPCINFOTAG_TASKHOOK=	(PPCINFOTAG_Dummy+$6)

;/* Remove a TaskHook (V45)
; * (Set)
; */
PPCINFOTAG_REMTASKHOOK=	(PPCINFOTAG_Dummy+$7)

;/* PLL Devider of the CPU (V45)
; * (Get)
; */
PPCINFOTAG_CPUPLL	=	(PPCINFOTAG_Dummy+$8)


	STRUCTURE	TaskHookMsg_Create,0
	ULONG		mc_MethodID
	ULONG		mc_Version
	APTR		mc_ElfObject
	APTR		mc_Tags
	LABEL		TaskHookMsg_Create_SIZEOF

	STRUCTURE	TaskHookMsg_Delete,0
	ULONG		md_MethodID
	ULONG		md_Version
	LABEL		TaskHookMsg_Delete_SIZEOF

	STRUCTURE	TaskHookMsg_Get,0
	ULONG		mg_MethodID
	ULONG		mg_Version
	APTR		mg_Tags
	LABEL		TaskHookMsg_Get_SIZEOF

	STRUCTURE	TaskHookMsg_Set,0
	ULONG		ms_MethodID
	ULONG		ms_Version
	APTR		ms_Tags
	LABEL		TaskHookMsg_Set_SIZEOF

PPCTASKHOOKMETHOD_CREATE	=	0
PPCTASKHOOKMETHOD_DELETE	=	1
PPCTASKHOOKMETHOD_GET		=	2
PPCTASKHOOKMETHOD_SET		=	3

;/* Current known PowerPC CPU versions */
CPU_603		=	3
CPU_604		=	4
CPU_602		=	5
CPU_603e	=	6
CPU_603p	=	7
CPU_604e	=	9

	ENDC
