Subversion Repositories SvarDOS

Rev

Rev 1346 | Rev 1348 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1346 Rev 1347
Line 263... Line 263...
263
 
263
 
264
  return(1);
264
  return(1);
265
}
265
}
266
 
266
 
267
 
267
 
268
static void ui_help(void) {
268
static void ui_help(void) { /* 8706 -> 6277 */
269
#define MAXLINLEN 35
269
#define MAXLINLEN 39
270
  unsigned char i, offset;
270
  unsigned short i, offset;
271
  offset = (screenw - MAXLINLEN + 2) >> 1;
271
  offset = (screenw - MAXLINLEN) >> 1;
272
 
272
 
273
  for (i = 2; i < 18; i++) {
-
 
274
    mdr_cout_char_rep(i, offset - 2, ' ', SCHEME_STBAR1, MAXLINLEN + 2);
-
 
275
  }
-
 
276
 
-
 
277
  for (i = 0; i < 20; i++) {
273
  for (i = 3; i < 25; i++) {
278
    const char *s = svarlang_str(8, i);
274
    const char *s = svarlang_str(8, i);
279
    if (s[0] == 0) break;
275
    if (s[0] == 0) break;
-
 
276
    mdr_cout_char_rep(i, offset, ' ', SCHEME_STBAR1, MAXLINLEN);
280
    if (s[0] == '.') continue;
277
    if (s[0] == '.') continue;
281
    mdr_cout_locate(3 + i, offset + mdr_cout_str(3 + i, offset, s, SCHEME_STBAR1, MAXLINLEN));
278
    mdr_cout_locate(i, offset + 2 + mdr_cout_str(i, offset + 2, s, SCHEME_STBAR1, MAXLINLEN - 2));
282
  }
279
  }
283
 
280
 
284
  keyb_getkey();
281
  keyb_getkey();
285
#undef MAXLINLEN
282
#undef MAXLINLEN
286
}
283
}
Line 717... Line 714...
717
    l = l->prev;
714
    l = l->prev;
718
  }
715
  }
719
}
716
}
720
 
717
 
721
 
718
 
-
 
719
/* main returns nothing, ie. sved always exits with a zero exit code
-
 
720
 * (this saves 20 bytes of executable footprint) */
722
int main(void) {
721
void main(void) {
723
  static struct file dbarr[1];
722
  static struct file dbarr[1];
724
  const char *fname;
723
  const char *fname;
725
  struct file *db = dbarr;
724
  struct file *db = dbarr;
726
 
725
 
727
  {
726
  {
Line 731... Line 730...
731
 
730
 
732
  fname = parseargv();
731
  fname = parseargv();
733
 
732
 
734
  if (fname == NULL) {
733
  if (fname == NULL) {
735
    mdr_coutraw_puts(svarlang_str(1,0)); /* usage: sved file.txt */
734
    mdr_coutraw_puts(svarlang_str(1,0)); /* usage: sved file.txt */
736
    return(0);
735
    return;
737
  }
736
  }
738
 
737
 
739
  /* load file */
738
  /* load file */
740
  {
739
  {
741
    unsigned char err = loadfile(db, fname);
740
    unsigned char err = loadfile(db, fname);
742
    if (err == 1) {
741
    if (err == 1) {
743
      mdr_coutraw_puts(svarlang_str(0,11)); /* file not found */
742
      mdr_coutraw_puts(svarlang_str(0,11)); /* file not found */
744
      return(1);
743
      return;
745
    } else if (err != 0) {
744
    } else if (err != 0) {
746
      mdr_coutraw_puts(svarlang_str(0,10)); /* ERROR */
745
      mdr_coutraw_puts(svarlang_str(0,10)); /* ERROR */
747
      return(1);
746
      return;
748
    }
747
    }
749
  }
748
  }
750
 
749
 
751
  if (mdr_cout_init(&screenw, &screenh)) {
750
  if (mdr_cout_init(&screenw, &screenh)) {
752
    /* load color scheme if mdr_cout_init returns a color flag */
751
    /* load color scheme if mdr_cout_init returns a color flag */
Line 996... Line 995...
996
 
995
 
997
  mdr_cout_close();
996
  mdr_cout_close();
998
 
997
 
999
  /* no need to free memory, DOS will do it for me */
998
  /* no need to free memory, DOS will do it for me */
1000
 
999
 
1001
  return(0);
1000
  return;
1002
}
1001
}