various bugfixes, refractoring
This commit is contained in:
parent
763c447cf5
commit
46aa1e9ce9
18
main.c
18
main.c
@ -36,13 +36,13 @@ int main(int argc, char **argv) {
|
||||
asm_rules(in_asm, out_asm);
|
||||
asm_to_hex(out_asm, &hex_op, &hex_in0, &hex_in1, &hex_out);
|
||||
|
||||
printf("%.5x %.5x %.5x %.5x\n", hex_op, hex_in0, hex_in1, hex_out);
|
||||
printf("%.7x %.7x %.7x %.7x\n", hex_op, hex_in0, hex_in1, hex_out);
|
||||
// Write the hex to a file
|
||||
fprintf(dest_asm,"%.5x ", hex_op);
|
||||
fprintf(dest_asm,"%.5x ", hex_in0);
|
||||
fprintf(dest_asm,"%.5x ", hex_in1);
|
||||
fprintf(dest_asm,"%.5x \n", hex_out);
|
||||
size = size + 3; //1 word = 3trytes
|
||||
fprintf(dest_asm,"%.7x ", hex_op);
|
||||
fprintf(dest_asm,"%.7x ", hex_in0);
|
||||
fprintf(dest_asm,"%.7x ", hex_in1);
|
||||
fprintf(dest_asm,"%.7x \n", hex_out);
|
||||
size = size + 2; //1 word = 2trytes
|
||||
}
|
||||
}
|
||||
|
||||
@ -102,9 +102,9 @@ void asm_to_hex(char *_asm, int *opcode, int *in0, int *in1, int *out){
|
||||
//convert assembly to formated binary representation of ternary
|
||||
int i = 0;
|
||||
do {
|
||||
if(_asm[0]=='-') {
|
||||
if(_asm[i]=='-') {
|
||||
strcat(tryte, "10");
|
||||
} else if (_asm[0]=='+') {
|
||||
} else if (_asm[i]=='+') {
|
||||
strcat(tryte, "01");
|
||||
} else {
|
||||
strcat(tryte, "00");
|
||||
@ -117,7 +117,7 @@ void asm_to_hex(char *_asm, int *opcode, int *in0, int *in1, int *out){
|
||||
t0[i] = tryte[j];
|
||||
j++;
|
||||
}
|
||||
j++;
|
||||
printf("%s\n",t0);
|
||||
|
||||
bin_to_hex(t0, opcode);
|
||||
bin_to_hex(t1, in0);
|
||||
|
Loading…
x
Reference in New Issue
Block a user