IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jul 6, 2005, 10:29:08 AM (21 years ago)
Author:
eugene
Message:

fixed multicommand to parse subcommands sequentially, added modulus operator

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Ohana/src/opihi/lib.shell/stack_math.c

    r4305 r4462  
    5252      *out = *M1 / *M2;
    5353    break;
     54  case '%':
     55    for (i = 0; i < Nx; i++, out++, M1++, M2++)
     56      *out = (int) *M1 % (int) *M2;
     57    break;
    5458  case 0x5e:
    5559    for (i = 0; i < Nx; i++, out++, M1++, M2++)
     
    168172      *out = *M1 / *M2;
    169173    break;
     174  case '%':
     175    for (i = 0; i < Nx; i++, out++, M2++)
     176      *out = (int) *M1 % (int) *M2;
     177    break;
    170178  case 0x5e:
    171179    for (i = 0; i < Nx; i++, out++, M2++)
     
    278286    for (i = 0; i < Nx; i++, out++, M1++)
    279287      *out = *M1 / *M2;
     288    break;
     289  case '%':
     290    for (i = 0; i < Nx; i++, out++, M1++)
     291      *out = (int) *M1 % (int) *M2;
    280292    break;
    281293  case 0x5e:
     
    405417    }
    406418    break;
     419  case '%':
     420    for (i = 0; i < Ny; i++, M2++) {
     421      for (j = 0; j < Nx; j++, out++, M1++)
     422        *out = (int) *M1 % (int) *M2;
     423    }
     424    break;
    407425  case 0x5e:
    408426    for (i = 0; i < Ny; i++, M2++) {
     
    565583      for (j = 0; j < Nx; j++, out++, M1++, M2++)
    566584        *out = *M1 / *M2;
     585    }
     586    break;
     587  case '%':
     588    for (i = 0; i < Ny; i++) {
     589      M1 = V1[0].ptr;
     590      for (j = 0; j < Nx; j++, out++, M1++, M2++)
     591        *out = (int) *M1 % (int) *M2;
    567592    }
    568593    break;
     
    731756      *out = *M1 / *M2;
    732757    break;
     758  case '%':
     759    for (i = 0; i < Nx*Ny; i++, out++, M1++, M2++)
     760      *out = (int) *M1 % (int) *M2;
     761    break;
    733762  case 0x5e:
    734763    for (i = 0; i < Nx*Ny; i++, out++, M1++, M2++)
     
    851880      *out = *M1 / *M2;
    852881    break;
     882  case '%':
     883    for (i = 0; i < Nx*Ny; i++, out++, M1++)
     884      *out = (int) *M1 % (int) *M2;
     885    break;
    853886  case 0x5e:
    854887    for (i = 0; i < Nx*Ny; i++, out++, M1++)
     
    961994    for (i = 0; i < Nx*Ny; i++, out++, M2++)
    962995      *out = *M1 / *M2;
     996    break;
     997  case '%':
     998    for (i = 0; i < Nx*Ny; i++, out++, M2++)
     999      *out = (int) *M1 % (int) *M2;
    9631000    break;
    9641001  case 0x5e:
     
    10571094  case '/':
    10581095    *out = *M1 / *M2;
     1096    break;
     1097  case '%':
     1098    *out = (int) *M1 % (int) *M2;
    10591099    break;
    10601100  case 0x5e:
Note: See TracChangeset for help on using the changeset viewer.