3125a52331/vm/graphical/devices.c

fc349e2cf15e1e11664eb67f38cf4acd59fe042c3125a52331ae6d7a6bb77d0ce92a95ddc2580547
330
330
331
    /* Read a char; response indicates success/failure */
331
    /* Read a char; response indicates success/failure */
332
    if (vm.ports[4] == -2) {
332
    if (vm.ports[4] == -2) {
333
      int cell = TOS; DROP;
334
      FILE *handle = (FILE *) TOS; DROP;
333
      FILE *handle = (FILE *) TOS; DROP;
335
      int c = fgetc(handle);
334
      int c = fgetc(handle);
336
      vm.image[cell] = c;
335
      if   ( c == EOF ) vm.ports[4] = 0;
337
      if   ( c == EOF ) vm.ports[4] =  0;
336
      else              vm.ports[4] = c;
338
      else              vm.ports[4] = -1;
339
      vm.ports[0] = 1;
337
      vm.ports[0] = 1;
340
    }
338
    }
341
339