Это старая версия документа!
GTE
GTE (Geometry Transformation Engine) - это сопроцессор 2 (COP2), выполняющий векторно-матричные операции. Он не имеет портов, отображенных в память CPU, и полностью управляется специальными опкодами.
Перед использованием GTE должен быть включен. Для этого нужно установить бит 30 в статусном регистре COP0:
mfc0 $8, $12 # t0 = SR ori $8, $8, 0x40000000 # Set bit 30 in t0 (CU2) mtc0 $8, $12 # SR = t0 nop
## Инструкции GTE
- `mtc2 $r, $d` - Move To Coprocessor 2. Записывает значение из регистра общего назначения в регистр данных GTE. `$d = $r` - `mfc2 $r, $d` - Move From Coprocessor 2. Читает значение из регистра данных GTE в регистр общего назначения. `$r = $d` - `ctc2 $r, $c` - Записывает значение из регистра общего назначения в контрольный регистр GTE. `$c = $r` - `cfc2 $r, $c` - Читает значение из контрольного регистра GTE в регистр общего назначения. `$r = $c` - `lwc2 $d, imm(base)` - загружает значение из памяти в регистр данных GTE. - `swc2 $d, imm(base)` - выгружает значение из регистра данных GTE в память. - `cop2 imm` - выполняет команду GTE.
