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

Subversion Repositories 1664

[/] [1664/] [trunk/] [c/] [cpu_1664/] [cpu_1664_dev_opera_parametre_funsiona__8y.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
struct lista * cpu_1664_dev_opera_parametre_funsiona__8y(struct cpu_1664 * cpu, n1 bait)
4
{
5
 struct lista *lista_2=lista_nova(0);
6
 struct lista *lista_parametre=lista_nova(0);
7
 struct lista *lista_informa=lista_nova(0);
8
 
9
 cpu_1664_sinia_t desloca;
10
 n1 valua=bait&0x7f;
11
 n1 negativa=(bait>0x80);
12
 n1 valua_negativa=-bait;
13
 
14
 if (negativa)
15
 {
16
  lista_ajunta__dato(lista_parametre, '-');
17
  lista_ajunta_asciiexadesimal__n1(lista_parametre, valua_negativa);
18
 }
19
 else
20
 {
21
  lista_ajunta_asciiexadesimal__n1(lista_parametre, valua);
22
 }
23
 
24
 desloca= (negativa) ? cpu->sinia[cpu_1664_sinia_IP]-(valua_negativa<<1) : cpu->sinia[cpu_1664_sinia_IP]+(valua<<1);
25
 lista_ajunta_asciiexadesimal__n8(lista_informa, desloca);
26
 
27
 lista_ajunta__P(lista_2, (P)lista_parametre);
28
 lista_ajunta__P(lista_2, (P)lista_informa);
29
 return lista_2;
30
}

powered by: WebSVN 2.1.0

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