We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS

UMULT (Super FX): Difference between revisions

From SnesLab
Jump to: navigation, search
(or immediate)
(immediate missing)
Line 51: Line 51:


The source and destination registers should be specified in advance using [[WITH]], [[FROM]], or [[TO]].  Otherwise, R<sub>0</sub> serves as the default.
The source and destination registers should be specified in advance using [[WITH]], [[FROM]], or [[TO]].  Otherwise, R<sub>0</sub> serves as the default.
The page of documentation on the immediate addressing mode of UMULT appears to be missing from the official dev manual.


==== Syntax ====
==== Syntax ====

Revision as of 07:39, 10 July 2024

Basic Info
Addressing Mode Opcode Length ROM Speed RAM Speed Cache Speed
Implied (type 1) 3D8n 2 bytes 6 or 8 cycles 6 or 8 cycles 2 or 3 cycles
Immediate
Flags Affected
B ALT1 ALT2 O/V S CY Z
0 0 0 . .

UMULT is an unsigned multiplication Super FX instruction. The factors are the low byte of the source register and the low byte of the register specified in the operand or an immediate value. The product is stored in the destination register.

UMULT utilizes the 8-bit multiplier only once, so it is fast.[2]

The exact number of cycles depends on the state of the CONFIG register.

The source and destination registers should be specified in advance using WITH, FROM, or TO. Otherwise, R0 serves as the default.

The page of documentation on the immediate addressing mode of UMULT appears to be missing from the official dev manual.

Syntax

UMULT Rn

Example

Let:

Sreg : R3
Dreg : R0
R3 = 364fh
R8 = b2cfh

After executing UMULT R8:

R0 = 3fe1h

See Also

External Links

  1. Official Nintendo documentation on UMULT: 9.90 on page 2-9-122 of Book II
  2. 8.2 "Multiplication Instructions" on page 2-8-16 of Book II, lbid.
  3. Table 2-2-2 Instruction Set (Sheet 1) on page 2-2-6 of Book II, lbid.