예제 #1
0
파일: preset.c 프로젝트: bensteinberg/aleph
//---------------------
//---- extern funcs
// initialize
void presets_init(void) {
  u32 i, j;
  char* p;

  presets = (preset_t*)alloc_mem(NET_PRESETS_MAX * sizeof(preset_t));
  
  for(i=0; i<NET_PRESETS_MAX; i++) {

    // empty name
    for(j=0; j<PRESET_NAME_LEN; j++) {
      presets[i].name[j] = '\0';
    }

    p = presets[i].name;
    p = atoi_idx(p, i);
    *p = '_';

    // empty inputs
    //    for(j=0; j<NET_INS_MAX; ++j) {
    for(j=0; j<PRESET_INODES_COUNT; ++j) {
      //      presets[i].ins[j].idx = -1;
      presets[i].ins[j].value = 0;
      presets[i].ins[j].enabled = 0;
    }
    // empty outputs
    for(j=0; j<NET_OUTS_MAX; ++j) {
      presets[i].outs[j].target = -1;
      //      presets[i].outs[j].outIdx = -1;
      presets[i].outs[j].enabled = 0;
    }

    // empty params
    /* for(j=0; j<NET_PARAMS_MAX; ++j) { */
    /*   presets[i].params[j].idx = -1; */
    /*   presets[i].params[j].value = 0; */
    /*   presets[i].params[j].enabled = 0; */
    /* }  */
  }
}
예제 #2
0
파일: render.c 프로젝트: doomglue/aleph
// append int to line buffer (left justified, no bounds)
/// very fast, for short unsigned values!
inline void appendln_idx_lj(u16 val) {
#if 0
  pline = atoi_idx(pline, val);
#else
  u16 dig = 0;
  u16 rem = 0;
  // 3 digits only 
  if(val > 999) { rem = 999; } else { rem = val; }

  dig = val / 100U;
  rem -= dig * 100U;
  *pline = '0' + dig;
  ++pline;

  dig = rem / 10U;
  rem -= dig * 10U;
  *pline = '0' + dig;
  ++pline;

  *pline = '0' + rem;
  ++pline;    
#endif
}