Changes
Jump to navigation
Jump to search
no edit summary
* Opcode: '''0x77'''
* Short name: '''PLUS2!'''
* Long name: Saturated Addition (16-bit)
==== Memory layout ====
{| border="1" cellspacing="1" cellpadding="3" style="border: 1px solid black; border-collapse: collapse;"
! width="40" | 0x76
! width="40" | ''D/S''
! width="40" | ''Dest''
! width="40" | ''Oper''
|}
==== Arguments ====
* '''const Bit[4]''' ''D'': Destination bank
* '''const Bit[4]''' ''S'': Source bank
* '''const UByte''' ''Dest'': The destination variable, to which the operand is added.
* '''const SWord''' ''Oper'': The operand, added to the destination.
==== Description ====
Adds two numbers together and stores the result back into "Dest" The result of the addition is capped at 32767. Oddly enough the result is not capped at the negative end, -32768, so adding two large negative numbers together will still produce wrap-around.
If the Source Bank is 0 then the “Oper†is added to the destination value.
If the Source Bank is an 16 bit bank, then the “Oper†is the address in that bank where the operand is.
* Short name: '''PLUS2!'''
* Long name: Saturated Addition (16-bit)
==== Memory layout ====
{| border="1" cellspacing="1" cellpadding="3" style="border: 1px solid black; border-collapse: collapse;"
! width="40" | 0x76
! width="40" | ''D/S''
! width="40" | ''Dest''
! width="40" | ''Oper''
|}
==== Arguments ====
* '''const Bit[4]''' ''D'': Destination bank
* '''const Bit[4]''' ''S'': Source bank
* '''const UByte''' ''Dest'': The destination variable, to which the operand is added.
* '''const SWord''' ''Oper'': The operand, added to the destination.
==== Description ====
Adds two numbers together and stores the result back into "Dest" The result of the addition is capped at 32767. Oddly enough the result is not capped at the negative end, -32768, so adding two large negative numbers together will still produce wrap-around.
If the Source Bank is 0 then the “Oper†is added to the destination value.
If the Source Bank is an 16 bit bank, then the “Oper†is the address in that bank where the operand is.