OpenCores
URL https://opencores.org/ocsvn/1664/1664/trunk

Subversion Repositories 1664

[/] [1664/] [trunk/] [c/] [cpu_1664/] [cpu_1664_opera__stm.c] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 mrdmkg
#include "cpu_1664.h"
2
 
3
void cpu_1664_opera__stm(struct cpu_1664 *cpu, n1 bait)
4
{
5
 cpu->opera_sicle=cpu_1664_sicle_opera_stm;
6
 nN sinia=(bait&((1<<cpu_1664_opera_ldm_sinia)-1));
7
 cpu_1664_sinia_t cuantia = 1<<((bait&(3<<cpu_1664_opera_ldm_bitio_estende0))>>cpu_1664_opera_ldm_bitio_estende0);
8
 cpu_1664_sinia_t desloca=cpu->sinia[sinia];
9
 
10
 if(((bait&(1<<cpu_1664_opera_ldm_bitio_ajusta))!=0))
11
 {
12
  cpu->sinia[sinia]+=((bait&(1<<cpu_1664_opera_ldm_bitio_orienta))==0) ? -cuantia : cuantia;
13
 
14
  if((bait&(1<<cpu_1664_opera_ldm_bitio_ordina))==0)
15
  {
16
   desloca=cpu->sinia[sinia];
17
  }
18
 }
19
 
20
 cpu_1664_umm(cpu, desloca, (1<<cpu_1664_umm_usor_mapa_permete_scrive), cuantia, cpu->sinia[0]);
21
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.