SGX544MP/USSE ISA

= What is USSE? =

USSE = Universal Scalable Shader Engine (USSE is a TM)

= USSE ISA = comments: [SupportsNoSched] : result of analysis of HWInstSupportsNoSched [SupportsSyncEnd] : result of analysis of HWInstSupportsSyncEnd [ForcesDeschedule] : result of analysis of HWInstForcesDeschedule [SupportsWriteMask] : result of analysis of HWInstSupportsWriteMask [CanUseExtSrc0Banks] : result of analysis of HWInstCanUseExtSrc0Banks [IsMOEControlInst] : result of analysis of HWInstIsMOEControlInst branch instructions store 12-bit signed offset into low 12 bits of psHWInst->uWord0 : result of analysis of HWInstSetBranchOffset

invalid opcodes: group 2: 1:31-27 0x02 1:10-9 3	group 3: 1:31-27 0x03 1:10-9 <2;3>	group 4: 1:31-27 0x04 1:10-9 <2;3>	group 6: 1:31-27 0x06 1:10-9 <1;3>	group 16: 1:31-27 0x16 1:21-20 1	group 1A: 1:31-27 0x1A group 1B: 1:31-27 0x1B group 1F_1: 1:31-27 0x1F 1:26-24 <6;7>		1:21-20 1	group 1F_3: 1:31-27 0x1F 1:26-24 {2,4,5,6,7}		1:21-20 3

common fields: 1:20	SyncStart

opcode "INVALID" [USP_OPCODE 0=0x0]

opcode "MAD" [USP_OPCODE 1=0x1] 1:31-27 0x00 0: mask 1: repeat 1:10-9 0	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "ADM" [USP_OPCODE 2=0x2] 1:31-27 0x00 0: mask 1: repeat 1:10-9 1	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "MSA" [USP_OPCODE 3=0x3] 1:31-27 0x00 0: mask 1: repeat 1:10-9 2	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "FRC" [USP_OPCODE 4=0x4] 1:31-27 0x00 0: mask 1: repeat 1:10-9 3	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "RCP" [USP_OPCODE 5=0x5] 1:31-27 0x01 0: mask 1: repeat 1:10-9 0	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "RSQ" [USP_OPCODE 6=0x6] 1:31-27 0x01 0: mask 1: repeat 1:10-9 1	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "LOG" [USP_OPCODE 7=0x7] 1:31-27 0x01 0: mask 1: repeat 1:10-9 2	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "EXP" [USP_OPCODE 8=0x8] 1:31-27 0x01 0: mask 1: repeat 1:10-9 3	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "DP" [USP_OPCODE 9=0x9] 1:31-27 0x02 0: mask 1: repeat 1:10-9 0	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "DDP" [USP_OPCODE 10=0xa] 1:31-27 0x02 0: mask 1: repeat 1:10-9 1	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "DDPC" [USP_OPCODE 11=0xb] 1:31-27 0x02 0: mask 1: repeat 1:10-9 2	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "MIN" [USP_OPCODE 12=0xc] 1:31-27 0x03 0: mask 1: repeat 1:10-9 0	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "MAX" [USP_OPCODE 13=0xd] 1:31-27 0x03 0: mask 1: repeat 1:10-9 1	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "DSX" [USP_OPCODE 14=0xe] 1:31-27 0x04 1:10-9 0	[SupportsNoSched] [HWInstDecodeRepeat] => does not support repeats

opcode "DSY" [USP_OPCODE 15=0xf] 1:31-27 0x04 1:10-9 1	[SupportsNoSched] [HWInstDecodeRepeat] => does not support repeats

opcode "MOVC" [USP_OPCODE 16=0x10] 1:31-27 0x05 0: mask 1: repeat 0: none 1: int8 2: int16 3: int32 4: float32 5: int10 [SupportsNoSched] [HWInstDecodeMOVInstTestDataType] => #1 [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat
 * 2) 1		1:10-8 	TestDataType

opcode "FMAD16" [USP_OPCODE 17=0x11] 1:31-27 0x06 0: mask 1: repeat 1:10-9 0	[SupportsNoSched] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "EFO" [USP_OPCODE 18=0x12] 1:31-27 0x07 [SupportsNoSched] [HWInstDecodeRepeat] => #5, mode is "repeat"
 * 1) 5		1:13-12	uRepeat

opcode "PCKUNPCK" [USP_OPCODE 19=0x13] 1:31-27 0x08 0: mask 1: repeat 1:2-5 	WriteMask [SupportsNoSched] [ForcesDeschedule]=SyncStart [SupportsWriteMask] [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "TEST" [USP_OPCODE 20=0x14] 1:31-27 0x09 [HWInstDecodeRepeat] => #5, mode is "mask"
 * 1) 5		1:15-12	uRepeat

opcode "AND" [USP_OPCODE 21=0x15] 1:31-27 0x0A 0: mask 1: repeat 1:3		0 ?? code in HWInstGetOpcode tests it and in both cases sets "AND" ?? [ForcesDeschedule]=SyncStart [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "OR" [USP_OPCODE 22=0x16] 1:31-27 0x0A 0: mask 1: repeat 1:3		1 ?? code in HWInstGetOpcode tests it and in both cases sets "AND" ?? shouldn't it set "OR" ?? [ForcesDeschedule]=SyncStart [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "XOR" [USP_OPCODE 23=0x17] 1:31-27 0x0B 0: mask 1: repeat [SupportsNoSched] [ForcesDeschedule]=SyncStart [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "SHL" [USP_OPCODE 24=0x18] 1:31-27 0x0C 0: mask 1: repeat 1:3 	0	[ForcesDeschedule]=SyncStart [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "ROL" [USP_OPCODE 25=0x19] 1:31-27 0x0C 0: mask 1: repeat 1:3 	1	[SupportsNoSched] [ForcesDeschedule]=SyncStart [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "SHR" [USP_OPCODE 26=0x1a] 1:31-27 0x0D 0: mask 1: repeat 1:3 	0	[ForcesDeschedule]=SyncStart [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "ASR" [USP_OPCODE 27=0x1b] 1:31-27 0x0D 0: mask 1: repeat 1:3 	1	[SupportsNoSched] [ForcesDeschedule]=SyncStart [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "RLP" [USP_OPCODE 28=0x1c] 1:31-27 0x0E 0: mask 1: repeat [ForcesDeschedule]=SyncStart [HWInstDecodeRepeat] => #5
 * 1) 5		1:21	uRepeatMode
 * 1) 5		1:15-12	uRepeat

opcode "TESTMASK" [USP_OPCODE 29=0x1d] 1:31-27 0x0F [SupportsNoSched] [ForcesDeschedule]=SyncStart [HWInstDecodeRepeat] => #5, mode is "mask"
 * 1) 5		1:15-12	uRepeat

opcode "SOP2" [USP_OPCODE 30=0x1e] 1:31-27 0x10 [SupportsNoSched] [HWInstDecodeRepeat] => #5, mode is "repeat"
 * 1) 5		1:14-12 uRepeat

opcode "SOP3" [USP_OPCODE 31=0x1f] 1:31-27 0x11 [SupportsNoSched] [HWInstDecodeRepeat] => does not support repeats

opcode "SOPWM" [USP_OPCODE 32=0x20] SOP Write Mask? 1:31-27 0x12 1:14 WriteMask[2] 1:13 WriteMask[1] 1:12 WriteMask[0] 1:11 WriteMask[3] [SupportsNoSched] [SupportsWriteMask] [HWInstDecodeRepeat] => does not support repeats

opcode "IMA8" [USP_OPCODE 33=0x21] 1:31-27 0x13 [SupportsNoSched] [HWInstDecodeRepeat] => #5, mode is "repeat"
 * 1) 5		1:14-12 uRepeat

opcode "IMA16" [USP_OPCODE 34=0x22] 1:31-27 0x14 [SupportsNoSched] [HWInstDecodeRepeat] => #5, mode is "repeat"
 * 1) 5		1:14-12 uRepeat

opcode "IMAE" [USP_OPCODE 35=0x23] 1:31-27 0x15 [SupportsNoSched] [HWInstDecodeRepeat] => #5, mode is "repeat"
 * 1) 5		1:14-12 uRepeat

opcode "ADIF" [USP_OPCODE 36=0x24] 1:31-27 0x16 1:21-20 0	[SupportsNoSched] [HWInstDecodeRepeat] => #5, mode is "repeat"
 * 1) 5		1:14-12 uRepeat

opcode "BILIN" [USP_OPCODE 37=0x25] 1:31-27 0x16 1:21-20 2	[SupportsNoSched] [HWInstDecodeRepeat] => #5, mode is "repeat"
 * 1) 5		1:14-12 uRepeat

opcode "FIRV" [USP_OPCODE 38=0x26] 1:31-27 0x16 1:21-20 3	[SupportsNoSched] [HWInstDecodeRepeat] => #5, mode is "repeat"
 * 1) 5		1:14-12 uRepeat

opcode "FIRH" [USP_OPCODE 39=0x27] 1:31-27 0x17 [SupportsNoSched] [HWInstDecodeRepeat] => #5, mode is "repeat"
 * 1) 5		1:13-12 uRepeat

opcode "DOT3" [USP_OPCODE 40=0x28] 1:31-27 0x18 1:24	0	[SupportsNoSched] [HWInstDecodeRepeat] => #5, mode is "repeat"
 * 1) 5		1:14-12 uRepeat

opcode "DOT4" [USP_OPCODE 41=0x29] 1:31-27 0x18 1:24	1	[SupportsNoSched] [HWInstDecodeRepeat] => #5, mode is "repeat"
 * 1) 5		1:14-12 uRepeat

opcode "FPMA" [USP_OPCODE 42=0x2a] 1:31-27 0x19 [SupportsNoSched] [HWInstDecodeRepeat] => #5, mode is "repeat"
 * 1) 5		1:14-12 uRepeat

opcode "SMP" [USP_OPCODE 43=0x2b] 1:31-27 0x1C 0: 1D 1: 2D 2: 3D 3: invalid 1:9-8  0					0: TEMP 1: PA		1:1-0 	DRC [CanUseExtSrc0Banks] [HWInstDecodeDestBankAndNum] => #2 [HWInstDecodeSMPInstCoordDim] => #3 [HWInstDecodeSMPInstCoordFmt] => all sample coordinates are passed as F32 [HWInstDecodeSMPInstDRCNum] => #4 [HWInstDecodeRepeat] => does not support repeats opcode "SMPBIAS" [USP_OPCODE 44=0x2c] 1:31-27 0x1C 0: 1D 1: 2D 2: 3D 3: invalid 1:9-8  1					0: TEMP 1: PA	[ForcesDeschedule]=SyncStart [CanUseExtSrc0Banks] [HWInstDecodeDestBankAndNum] => #2 [HWInstDecodeSMPInstCoordDim] => #3 [HWInstDecodeSMPInstCoordFmt] => all sample coordinates are passed as F32 [HWInstDecodeSMPInstDRCNum] => #4 [HWInstDecodeRepeat] => does not support repeats
 * 1) 3		1:11-10	uCoordDim
 * 1) 2		1:7		DestRegType
 * 1) 4	[ForcesDeschedule]=SyncStart
 * 1) 3		1:11-10	uCoordDim
 * 1) 2		1:7	DestRegType
 * 1) 4		1:1-0 	DRC

opcode "SMPREPLACE" [USP_OPCODE 45=0x2d] 1:31-27 0x1C 0: 1D 1: 2D 2: 3D 3: invalid 1:9-8  2					0: TEMP 1: PA	[ForcesDeschedule]=SyncStart [CanUseExtSrc0Banks] [HWInstDecodeDestBankAndNum] => #2 [HWInstDecodeSMPInstCoordDim] => #3 [HWInstDecodeSMPInstCoordFmt] => all sample coordinates are passed as F32 [HWInstDecodeSMPInstDRCNum] => #4 [HWInstDecodeRepeat] => does not support repeats
 * 1) 3		1:11-10	uCoordDim
 * 1) 2		1:7		DestRegType
 * 1) 4		1:1-0 	DRC

opcode "SMPGRAD" [USP_OPCODE 46=0x2e] 1:31-27 0x1C 0: 1D 1: 2D 2: 3D 3: invalid 1:9-8  3					0: TEMP 1: PA	[ForcesDeschedule]=SyncStart [CanUseExtSrc0Banks] [HWInstDecodeDestBankAndNum] => #2 [HWInstDecodeSMPInstCoordDim] => #3 [HWInstDecodeSMPInstCoordFmt] => all sample coordinates are passed as F32 [HWInstDecodeSMPInstDRCNum] => #4 [HWInstDecodeRepeat] => does not support repeats
 * 1) 3		1:11-10	uCoordDim
 * 1) 2		1:7		DestRegType
 * 1) 4		1:1-0 	DRC

opcode "LD" [USP_OPCODE 47=0x2f] 1:31-27 0x1D 0: fetch 1: repeat 0: TEMP 1: PA	[ForcesDeschedule]=SyncStart [CanUseExtSrc0Banks] #2 analysis of HWInstDecodeDestBankAndNum #3 analysis of HWInstEncodeLDInstFetchCount [HWInstDecodeRepeat] => #5
 * 1) 5			1:21	uRepeatMode
 * 3,5		1:15-12 uFetchCount/uRepeat
 * 1) 2			1:7	   DestRegType

opcode "ST" [USP_OPCODE 48=0x30] 1:31-27 0x1E 0: fetch 1: repeat [ForcesDeschedule]=SyncStart [CanUseExtSrc0Banks] [HWInstDecodeRepeat] => #5
 * 1) 5			1:21	uRepeatMode
 * 1) 5			1:15-12	uRepeat

opcode "BA" [USP_OPCODE 49=0x31] 0:11-0 signed jump offset  1:31-27 0x1F 1:23	SyncEnd 1:21-20 0		1:8-6  0	[SupportsSyncEnd] [ForcesDeschedule]=true [HWInstDecodeRepeat] => does not support repeats

opcode "BR" [USP_OPCODE 50=0x32] 0:11-0 signed jump offset  1:31-27 0x1F 1:23	SyncEnd 1:21-20 0		1:8-6  1	[SupportsSyncEnd] [ForcesDeschedule]=true [HWInstDecodeRepeat] => does not support repeats

opcode "LAPC" [USP_OPCODE 51=0x33] 1:31-27 0x1F 1:23	SyncEnd 1:21-20 0		1:8-6  2	[SupportsSyncEnd] [ForcesDeschedule]=true [HWInstDecodeRepeat] => does not support repeats

opcode "SETL" [USP_OPCODE 52=0x34] 1:31-27 0x1F 1:23	SyncEnd 1:21-20 0		1:8-6  3	[SupportsSyncEnd] [HWInstDecodeRepeat] => does not support repeats

opcode "SAVL" [USP_OPCODE 53=0x35] 1:31-27 0x1F 1:23	SyncEnd 1:21-20 0		1:8-6  4	[SupportsSyncEnd] [HWInstDecodeRepeat] => does not support repeats

opcode "NOP" [USP_OPCODE 54=0x36] 1:31-27 0x1F 1:23	SyncStart 1:21-20 0		1:8-6  5	[SupportsNoSched] [SupportsSyncEnd] [ForcesDeschedule]=SyncStart [HWInstDecodeRepeat] => does not support repeats

opcode "SMOA" [USP_OPCODE 55=0x37] 1:31-27 0x1F 1:26-24 0		1:21-20 1	[IsMOEControlInst] [HWInstDecodeRepeat] => does not support repeats

opcode "SMR" [USP_OPCODE 56=0x38] 1:31-27 0x1F 1:26-24 1		1:21-20 1	[IsMOEControlInst] [HWInstDecodeRepeat] => does not support repeats

opcode "SMLSI" [USP_OPCODE 57=0x39] Set MOE /???/ Swizle Increment ? 1:31-27 0x1F 1:26-24 2		1:21-20 1				if bUseSwizChan0==0 signed 8-bit MOE increment if bUseSwizChan1==0 signed 8-bit MOE increment if bUseSwizChan2==0 signed 8-bit MOE increment if bUseSwizChan3==0 signed 8-bit MOE increment [IsMOEControlInst] #1	=analysis of HWInstUpdateMOEState [HWInstDecodeRepeat] => does not support repeats
 * 1) 1		1:3    bUseSwizChan0
 * 2) 1		1:2    bUseSwizChan1
 * 3) 1		1:1 	bUseSwizChan2
 * 4) 1		1:0 	bUseSwizChan3
 * 5) 1		0:31-24 if bUseSwizChan0==1 uSwiz
 * 1) 1		0:23-16 if bUseSwizChan1==1 uSwiz
 * 1) 1		0:15-8 if bUseSwizChan2==1 uSwiz
 * 1) 1		0: 7-0 if bUseSwizChan3==1 uSwiz

opcode "SMBO" [USP_OPCODE 58=0x3a] Set MOE Base Offset ? 1:31-27 0x1F 1:26-24 3		1:21-20 1	[IsMOEControlInst] #1	=analysis of HWInstUpdateMOEState [HWInstDecodeRepeat] => does not support repeats
 * 1) 1			1:15-4 uBaseOffset[0] (bits 0..11)
 * 2) 1			1:0-3  uBaseOffset[1] (bits 16..19) - seems to be an error in HWInstUpdateMOEState, this might be really (bits 8..11)
 * 3) 1			0:31-24 uBaseOffset[1] (bits 0..7)
 * 4) 1			0:23-12 uBaseOffset[2] (bits 0..11)
 * 5) 1			0:11-0 uBaseOffset[3] (bits 0..11)

opcode "IMO" [USP_OPCODE 59=0x3b] 1:31-27 0x1F 1:26-24 4		1:21-20 1	[IsMOEControlInst] [HWInstDecodeRepeat] => does not support repeats

opcode "SETFC" [USP_OPCODE 60=0x3c] SET Format Control ? 1:31-27 0x1F 1:26-24 5		1:21-20 1	[IsMOEControlInst] [HWInstDecodeRepeat] => does not support repeats [HWInstUpdateMOEState] => #6 opcode "IDF" [USP_OPCODE 61=0x3d] 1:31-27 0x1F 1:26-24 0		1:21-20 2	[HWInstDecodeRepeat] => does not support repeats
 * 1) 6		0:8 bColFmtCtl
 * 2) 6		0:0 EFOFmtCtl

opcode "WDF" [USP_OPCODE 62=0x3e] 1:31-27 0x1F 1:26-24 1		1:21-20 2	[ForcesDeschedule]=true [HWInstDecodeRepeat] => does not support repeats

opcode "SETM" [USP_OPCODE 63=0x3f] 1:31-27 0x1F 1:26-24 2		1:21-20 2	[SupportsNoSched] [HWInstDecodeRepeat] => function returns error for this opcode

opcode "EMIT" [USP_OPCODE 64=0x40] 1:31-27 0x1F 1:26-24 3		1:21-20 2	[SupportsNoSched] [CanUseExtSrc0Banks] [HWInstDecodeRepeat] => does not support repeats

opcode "LIMM" [USP_OPCODE 65=0x41] 1:31-27 0x1F 1:26-24 4		1:21-20 2	[SupportsNoSched] [HWInstDecodeRepeat] => does not support repeats

opcode "LOCK" [USP_OPCODE 66=0x42] 0:1		0		1:31-27 0x1F 1:26-24 5		1:21-20 2	[SupportsNoSched] [ForcesDeschedule]=true [HWInstDecodeRepeat] => does not support repeats

opcode "RELEASE" [USP_OPCODE 67=0x43] 0:1		1		1:31-27 0x1F 1:26-24 5		1:21-20 2	[SupportsNoSched] [HWInstDecodeRepeat] => does not support repeats

opcode "LDR" [USP_OPCODE 68=0x44] 1:31-27 0x1F 1:26-24 6		1:21-20 2		1:19   0					0: TEMP 1: PA	[SupportsNoSched] #2 analysis of HWInstDecodeDestBankAndNum [HWInstDecodeRepeat] => does not support repeats
 * 1) 2		1:7	   DestRegType

opcode "STR" [USP_OPCODE 69=0x45] 1:31-27 0x1F 1:26-24 6		1:21-20 2		1:19   1	[SupportsNoSched] [HWInstDecodeRepeat] => does not support repeats

opcode "WOP" [USP_OPCODE 70=0x46] 1:31-27 0x1F 1:26-24 7		1:21-20 2	[SupportsNoSched] [ForcesDeschedule]=true [HWInstDecodeRepeat] => does not support repeats

opcode "PCOEFF" [USP_OPCODE 71=0x47] 1:31-27 0x1F 1:26-24 0		1:21-20 3		1:15	0	[SupportsNoSched] [CanUseExtSrc0Banks] [HWInstDecodeRepeat] => does not support repeats

opcode "PTOFF" [USP_OPCODE 72=0x48] 1:31-27 0x1F 1:26-24 0		1:21-20 3		1:15	1	[SupportsNoSched] [HWInstDecodeRepeat] => does not support repeats

opcode "ATST8" [USP_OPCODE 73=0x49] 1:31-27 0x1F 1:26-24 1		1:21-20 3	[SupportsNoSched] [CanUseExtSrc0Banks] [HWInstDecodeRepeat] => does not support repeats

opcode "DEPTHF" [USP_OPCODE 74=0x4a ] 1:31-27 0x1F 1:26-24 3		1:21-20 3	[SupportsNoSched] [CanUseExtSrc0Banks] = Source = http://lkcl.net/powervr/sgx/USSE_ISA.txt